Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Envoy project proposal #43

Merged
merged 1 commit into from Sep 13, 2017
Merged

Add Envoy project proposal #43

merged 1 commit into from Sep 13, 2017

Conversation

caniszczyk
Copy link
Contributor

https://github.com/lyft/envoy

Also-by: Matt Klein mklein@lyft.com
Signed-off-by: Chris Aniszczyk caniszczyk@gmail.com

Also-by: Matt Klein <mklein@lyft.com>
Signed-off-by: Chris Aniszczyk <caniszczyk@gmail.com>
@caniszczyk
Copy link
Contributor Author

The Envoy project proposal is ready for RFC @cncf/toc

@bgrant0607
Copy link
Contributor

cc @louiscryan

@wmorgan
Copy link
Contributor

wmorgan commented Aug 25, 2017

+1 would be a great addition to the CNCF IMO

@rosskukulinski
Copy link

This is fabulous! I view Envoy as an essential component of a modern cloud-native stack. Having the backing of the CNCF community will be mutually beneficial to all parties.

@louiscryan
Copy link

louiscryan commented Aug 25, 2017 via email

@jaymecox-pinterest
Copy link

+1 to adding Envoy to CNCF

@rshriram
Copy link

+1! Finally!
In my experience working with different proxies, envoy is architecturally much more native to modern service oriented systems. Others need to be shoe horned into the data plane while Envoy is designed ground up to serve as the data plane rpc router.

@shalako
Copy link

shalako commented Aug 26, 2017

The Cloud Foundry community is looking forward to collaborating on enhancements to Envoy for our use cases. I expect a governance model as provided by CNCF should help facilitate this.

@christian-posta
Copy link

+1 yay! Happy to see Envoy being considered for the CNCF. Not only is this technology valuable for next-generation microservices architectures, it fits nicely with existing CNCF technology.

@bradtopol
Copy link

So this is a great writeup that motivates the value this project provides. One suggested improvement would be for the writeup to clarify the relationship between envoy and istio. See https://news.ycombinator.com/item?id=14540900 that highlights the confusion that exists on the relationship of envoy and istio: "I remember reading about the release of Envoy by Lyft maybe a month or two ago. Then I saw the release of Istio maybe a month ago. I'm having trouble reconciling the two. I read that Istio is based on Envoy. Are they mutually exclusive? Is envoy obsolete now?"

@idvoretskyi
Copy link
Member

+1!

@mattklein123
Copy link

@bradtopol I will defer to @caniszczyk on whether to add to proposal, but this is how I would describe Envoy vs. Istio:

The service mesh architecture is composed of two pieces: the data plane and the control plane. The data plane is responsible for touching every packet that flows through the network (e.g., load balancing, buffering, rate limiting, timeouts, protocol translation, security enforcement, etc.). The control plane is responsible for configuring the data plane so that it can go about its job (e.g., creating route tables, service discovery, traffic shifting, authn/authz policy, etc.).

Envoy is a "universal data plane." A rich set of configuration APIs allow it to be used in a large variety of deployments that may range from bare metal to FaaS. This inherent flexibility comes with the cost of complexity; Envoy by design is meant to to be useful in a lot of scenarios. In order to do anything useful, Envoy must be coupled with a control plane. Control plane complexity can range from human built static configs, to a config generator using salt/python/jinja, to an extremely complex system using all of the Envoy management APIs. This again depends on the needs of the deployment. In summary, without some control plane, human or otherwise, Envoy is not useful.

Istio is an advanced control plane for service mesh architectures that aims to create a more seamless developer and operator experience. Istio requires a data plane to function. The project has chosen Envoy as its reference proxy, however other vendors have already demonstrated the ability to plug their proxy in (e.g., Bouyant and NGINX). By focusing entirely on the control plane, Istio achieves the benefit of a clear separation of concerns, and can focus on creating an end-user experience that is more magical, at the expense of not being as flexible (Istio has initially focused on k8s, though ultimately it will support other deployment options as well).

Ultimately, Envoy and Istio are related, but not the same thing. For various reasons, Istio has chosen Envoy as its reference proxy. However, Envoy will see wide deployment outside of Istio, and other data planes may see deployment with Istio without Envoy.

@countspongebob
Copy link

Non-binding +1 as show of community support.

@emmanuel
Copy link

emmanuel commented Sep 1, 2017

Non-binding +1.

I'm excited to watch (and help) the Envoy project continue its march of success for years to come!

@andyday
Copy link

andyday commented Sep 1, 2017

Non-binding +1

@josephjacks
Copy link

+1! (non-binding).

@bgrant0607
Copy link
Contributor

Thanks much for the clarification @mattklein123.

@debianmaster
Copy link

debianmaster commented Sep 1, 2017

+1 (non-binding)

1 similar comment
@ar4mirez
Copy link

ar4mirez commented Sep 1, 2017

+1 (non-binding)

@caniszczyk
Copy link
Contributor Author

The vote has been formally called on the CNCF TOC mailing list:
https://lists.cncf.io/pipermail/cncf-toc/2017-September/001107.html

@archyufa
Copy link

archyufa commented Sep 2, 2017

+1 to adding Envoy to CNCF!

@vongosling
Copy link

+1 (non-binding)

2 similar comments
@arun-gupta
Copy link

+1 (non-binding)

@ngehani
Copy link

ngehani commented Sep 7, 2017

+1 (non-binding)

@caniszczyk
Copy link
Contributor Author

Welcome Envoy as our 11th project in CNCF, the @cncf/toc has accepted the project :)

https://lists.cncf.io/pipermail/cncf-toc/2017-September/001202.html

@caniszczyk caniszczyk closed this Sep 13, 2017
@caniszczyk caniszczyk reopened this Sep 13, 2017
@caniszczyk caniszczyk merged commit 7cf6bf2 into master Sep 13, 2017
@caniszczyk caniszczyk deleted the add-envoy-proposal branch September 13, 2017 16:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet