Photo by Brian McGowan, Unsplash.com
We've been using Istio in production for almost two years now, but we don't want to anymore. I will tell you what we are unhappy with and how we chose a different service mesh.
Start over.
Why do you need a service mesh at all?
- It monitors traffic between microservices, including communication patterns and HTTP status codes between them.
- mTLS, HTTP- .
, . .
service mesh , , , . . , . sidecar-proxy. , , .
service mesh?
. , , :
Service mesh HTTP-
Istio Linkerd, , . Istio . Linkerd AMQP. HTTPS. , - . service mesh HTTP. , Kubernetes.
, sidecar-
, - , service mesh . sidecar-, , sidecar-.
- sidecar Kubernetes ( sidecar, ). , 1.20, , .
, , , service mesh β .
Init- cronjob service mesh
? service mesh , init cronjob . , β cronjob .
, , , .
service mesh?
: sidecar- HTTP- mTLS ( mesh mesh).
service mesh β service mesh .
Istio?
β . Istio , Kubernetes.
Helm- Istio ( ).
Istio CRD (Custom Resource Definition). , . , CRD , Gateway, VirtualService DestinationRule, , .
, Istio. . , Kubernetes TLS . . , - Istio, , . , , β . , Istio . Envoy. Break Glass Configuration ( ).
β Istio Helm istioctl
β¦ Helm. , , Helm, . , , Istio.
Istio?
Kubernetes , β Mesos, Nomad Swarm, , Kubernetes .
, - Mesos ( ), , .
Swarm , , «», Kubernetes. β . Kubernetes , .
Nomad , , . , Kubernetes.
, Istio, . β Linkerd ( - Swarm), Istio Google. .
service mesh , , β AppMesh AWS, Maesh Traefik, Azure Open Service Mesh (, , , Istio CNCF) service mesh Nginx. . service mesh (, Kuma Consul Connect) Envoy.
.
?
service mesh, β Linkerd. , , (, Maesh , ).
Linkerd:
- Helm (, Helm , ).
- . CRD, Helm- .
- . Istio Grafana/Promethus Kiali. Linkerd Grafana/Prometheus, , .
- Rust ( 2). , Envoy , , Linkerd . Envoy , Linkerd , . Rust! ?
- CNCF. Istio.
- Linkerd . Istio , , . Linkerd . , . , .
Linkerd?
, β , service mesh . , , service mesh . Linkerd , , , sidecar , HTTP.
, service mesh β , Kubernetes. service mesh SMI (Service Mesh Interface), -, , service mesh Kubernetes. β .
, Istio CNCF, (Chris DiBona) Kubernetes Podcast .
Linkerd CNCF, , .
, Kubernetes sidecar.