Cette page est affichée en anglais. Une traduction française est en cours.
SkillsApr 11, 2026·3 min de lecture

Istio — Open Source Service Mesh for Microservices

Istio is the leading open-source service mesh. Connect, secure, control, and observe services with mTLS encryption, traffic management, and observability — all without changing application code.

Prêt pour agents

Installation avec revue préalable

Cet actif nécessite une revue. Le prompt copié demande un dry-run, affiche les écritures, puis continue seulement après confirmation.

Needs Confirmation · 64/100Policy : confirmer
Surface agent
Tout agent MCP/CLI
Type
Skill
Installation
Single
Confiance
Confiance : Established
Point d'entrée
step-1.md
Commande avec revue préalable
npx -y tokrepo@latest install e66c0370-3558-11f1-9bc6-00163e2b0d79 --target codex

Dry-run d'abord, confirmez les écritures, puis lancez cette commande.

TL;DR
Istio provides mTLS, traffic management, and observability for microservices without changing application code.
§01

What it is

Istio is an open-source service mesh that provides a uniform way to connect, secure, control, and observe services in a microservices architecture. It works by injecting Envoy sidecar proxies alongside each service pod in Kubernetes.

Istio targets platform teams running microservices on Kubernetes who need mutual TLS encryption, traffic routing (canary deployments, A/B testing), and distributed tracing without modifying application code.

§02

How it saves time or tokens

Istio handles cross-cutting concerns (encryption, retry logic, circuit breaking, observability) at the infrastructure layer. Application developers do not need to implement mTLS, retry policies, or distributed tracing in their code. The service mesh handles it transparently via Envoy sidecars.

§03

How to use

  1. Install Istio on your Kubernetes cluster:
curl -L https://istio.io/downloadIstio | sh -
cd istio-*
export PATH=$PWD/bin:$PATH
istioctl install --set profile=demo -y
  1. Enable sidecar injection for your namespace:
kubectl label namespace default istio-injection=enabled
  1. Deploy your services normally. Istio automatically injects Envoy sidecars.
§04

Example

# VirtualService for canary deployment
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
  name: my-service
spec:
  hosts:
    - my-service
  http:
    - route:
        - destination:
            host: my-service
            subset: v1
          weight: 90
        - destination:
            host: my-service
            subset: v2
          weight: 10
§05

Related on TokRepo

§06

Common pitfalls

  • Istio sidecar injection increases pod resource usage. Each sidecar consumes CPU and memory. Plan cluster capacity accordingly.
  • The learning curve is steep. Start with the demo profile for evaluation and graduate to production profiles after understanding the components.
  • Istio version upgrades require careful planning. Sidecar proxies must be restarted after control plane upgrades.

Questions fréquentes

What is a service mesh?+

A service mesh is an infrastructure layer that handles service-to-service communication. It provides features like encryption, load balancing, retries, circuit breaking, and observability through proxy sidecars, without requiring code changes.

Does Istio require Kubernetes?+

Istio is primarily designed for Kubernetes. While Istio technically supports VM workloads, the best-supported deployment model is on Kubernetes with automatic sidecar injection.

What is mTLS in Istio?+

Mutual TLS (mTLS) means both the client and server authenticate each other with certificates. Istio automates mTLS between all services in the mesh, encrypting all inter-service traffic without application changes.

How does Istio affect application performance?+

Istio adds latency through sidecar proxies (typically 1-5ms per hop). The Envoy proxies also consume CPU and memory. For most applications, the overhead is acceptable given the security and observability benefits.

Can Istio do canary deployments?+

Yes. Istio VirtualService resources let you split traffic between service versions by percentage. You can gradually shift traffic from v1 to v2 (e.g., 90/10, then 50/50, then 0/100) without changing DNS or load balancer config.

Sources citées (3)

Fil de discussion

Connectez-vous pour rejoindre la discussion.
Aucun commentaire pour l'instant. Soyez le premier à partager votre avis.

Actifs similaires