Envoy: [Discussion] How to convince the boss to use envoy

Created on 1 Oct 2018  路  9Comments  路  Source: envoyproxy/envoy

How to convince our team leader to use envoy

Description:
I read envoy's docs and used it in my testing environment, it works great, but how to convince the team leader to use it? They thought envoy is new, cannot trust it, and the team needs to make extra efforts to write c++ for implementing the new features or fix bugs, but I think new features are not essentially and bugs can be fixed by the community. Their point is, whether envoy can be trusted. Is there any big company really use it in the production environment? What if envoy cannot handle our business and what should we do?

BTW, the company use Nginx for now and have a big Nginx configuration file. We know that Nginx has some problem with dynamic port listening, need to reload (I'm not sure with the performance) and nginx's configuration is not quite maintainable easily.

Hope someone knows envoy well can answer the questions, thanks.

question stale

Most helpful comment

Reasons to use Software LBs

  • Horizontal Scalability
  • Vendor Neutral
  • Lowered TCO (Capex & Opex)

Why Envoy

  • C++ is excellent for Network and HTTP processing
  • Envoy's filter designs are modular and open for modification
  • C++ provide performance
  • Envoy's resource utilizations are frugal compared to Hardware LBs
  • Horizontal scaling of Envoy on Kubernetes works like a charm
  • SDKs for Kubernetes are available for free

Hope this helps @wrfly

All 9 comments

Is there any big company really use it in the production environment?

https://www.envoyproxy.io/ - Go through this link and search for "USED BY" that tells who all are using Envoy in production

Hi @ramaraochavali , this is obvious, but the boss still cannot trust it since there is no public blogs or something like that shows that these companies use envoy

There are lots of public blogs and videos of Lyft and others talking about their production use of Envoy.

Furthermore, Envoy is an incubating CNCF project which means it

  • has a chance of receiving widespread adoption
  • has users in production, and meets technical quality standards and the other criteria they look for
  • receives resources and support to build the developer community (documentation, events etc.)
  • has a documented neutral governance model, maintainers from multiple organisations, a Code of Conduct and Contributor Guide, all of which encourage wide-spread contributions

See also the CNCF proposal document which includes adopters and integrators (as of 2017). Some of the integrators are building entire business models around Envoy.

I believe @nrshrivatsan can help to answer this 馃檪.

Reasons to use Software LBs

  • Horizontal Scalability
  • Vendor Neutral
  • Lowered TCO (Capex & Opex)

Why Envoy

  • C++ is excellent for Network and HTTP processing
  • Envoy's filter designs are modular and open for modification
  • C++ provide performance
  • Envoy's resource utilizations are frugal compared to Hardware LBs
  • Horizontal scaling of Envoy on Kubernetes works like a charm
  • SDKs for Kubernetes are available for free

Hope this helps @wrfly

Thanks @nrshrivatsan

I know that Nginx can hot load some lua scripts as its sub-logic-processor, such as insert some user token(en/decode or encrypt), traffic to different endpoints by the user's token or some complex logic, I'm not sure this is right(use Nginx as a framework and the project management is quite annoying, you know, scripts...)

But is there any way for envoy to do this? By writing extensions? I haven't write any extension so I'm not sure about that. Besides, according to the documents, I know that envoy can modify the header and lead the traffic to different clusters via the header matcher, so it means that envoy can fit into our business, right?

From my understanding, envoy's configuration is quite complex and flexible, and that makes envoy powerful, so it can win Nginx in edge-router, service mash or other sides? I think we can drop the Lua scripts in Nginx if envoy can do that for us.

Thanks a lot.

@wrfly

  • Envoy support hot-restarts Blog link
  • Envoy Lua support is in flight.
  • Envoy was designed to be a Programmable L7 Proxy - ground up with support for GRPC at control plane in a cloud-native-way. PDLC of SLB is so sound it has been automated : Envoy-Operator

PS - Personally I don't like to answer tech-comparison questions as it might be VERY subjective friend :-)

This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or other activity occurs. Thank you for your contributions.

This issue has been automatically closed because it has not had activity in the last 37 days. If this issue is still valid, please ping a maintainer and ask them to label it as "help wanted". Thank you for your contributions.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

lps0535 picture lps0535  路  3Comments

vpiduri picture vpiduri  路  3Comments

sabiurr picture sabiurr  路  3Comments

jmillikin-stripe picture jmillikin-stripe  路  3Comments

rshriram picture rshriram  路  3Comments