Skip to Content

Instal·lació d’Istio: guia pràctica amb istioctl i Helm

27 d’abril de 2026 per
Ilimit Comunicacions S.L., Oscar Mas

Com instal·lar Istio a Kubernetes?

Soc Òscar Mas i avui m'agradaria ensenyar-vos les diferents formes que tenim per instal·lar Istio

Si no coneixeu Istio, us recomano el nostre anterior post sobre Istio, en el qual vam explorar les diferents possibilitats i l'ecosistema de Istio. Vam parlar de molts conceptes com el Service Mesh, el mTLS i l'observabilitat. Però, un cop sabem què és, la pregunta següent que ens fem, és: com posem Istio en marxa?

Istio és una eina robusta i, per tant, ofereix diversos camins per a la seva instal·lació. Avui ens centrarem en els dos mètodes d'instal·lació:

  • Instal·lació del binari istioctl.
  • La instal·lació via Helm, el gestor de paquets per excel·lència de Kubernetes.

Perfils d’Istio: quin escollir?

És important saber que dins de l'ecosistema d'Istio, existeixen els perfils de configuració que són plantilles predefinides, que permeten personalitzar quins components s'instal·laran. Us deixo una taula que us ajudarà a triar el millor perfil pels vostres casos d'ús.

Component

default

demo

minimal

remote

empty

ambient

istiod

istio-egressgateway

istio-ingressgateway

istio-cni

ztunnel

Per posar un parell d'exemples, si volem instal·lar istio per producció, el més recomanat és fer servir el perfil de "default", però si volem aprendre el funcionament o simplement fer una demostració, escollirem el perfil "demo"

Instal·lació d'Istio amb el binari istioctl

En aquest apartat explicarem com instal·lar Istio, fent servir la descàrrega del binari. Aquest binari no només serveix per instal·lar el Istio, sinó que és una eina indispensable per depurar, verificar l'estat del clúster i gestionar les configuracions.

A partir d'aquí tenim dues possibilitats d'instal·lació:

  • Fer servir el script automatitzat que ens facilita Istio
  • Descarregar-nos el binari istioctl

Script automatitzat

En aquest cas, utilitzarem un script automatitzat que ens facilita el projecte oficial. Des del nostre terminal, executem:

$ curl -L https://istio.io/downloadIstio | sh -

Aquesta comanda descarregarà la versió més recent compatible amb el nostre sistema operatiu.

Binari istioctl

El mètode d'instal·lació de Isito amb el binari, és ideal si busques un control directe i una configuració basada en perfils, els quals els hem explicat anteriorment.

El primer que hem de fer és descarregar-nos el binari i abans de res, verifica que el teu clúster de Kubernetes compleix els requisits:

$ istioctl x precheck

Per a un entorn estàndard, el perfil default és el més equilibrat. Instal·la el control plane (Istiod) i l'Ingress Gateway:

$ istioctl install --set profile=default -y

Aquest mètode és fantàstic perquè el binari genera automàticament els recursos necessaris al clúster.

Instal·lació d'Istio amb Helm

Si treballes en un entorn de producció on ja utilitzes Helm per gestionar el que tens instal·lat al teu clúster de Kubernetes, aquesta és la millor opció. 

Quan instal·lem Istio mitjançant Helm, dividim la infraestructura en dues peces clau que tenen responsabilitats totalment diferents:

  • El Control Plane: Istiod (Istio Daemon). Aquest component, s'encarrega de la gestió de la configuració, la propagació de polítiques de seguretat (com el mTLS) i la gestió de certificats.
  • Istio Gateway. És el punt d'entrada a la infraestructura, agafa en trafic extern al clúster i el redirigeix contra l'interior del clúster de Kubernetes.
  • La base (CRD). És un afegit a l'API de Kubernetes que serveix per "ensenyar-li" nous d'objectes. Recordeu que Kubernetes sap que es un deployment o un servei, pero no sap que es un VirtualService, amb aquest componen li ensenyem a Kubernetes que es un VirtualService

Primer, afegim el repositori oficial d'Istio i l'actualitzem:

$ helm repo add istio https://istio-release.storage.googleapis.com/charts
$ helm repo update

Istio es basa en Custom Resource Definitions (CRDs). Aquests defineixen els nous objectes que Kubernetes entendrà (com VirtualServices o Gateways). És molt important instal·lar-los primer:

$ helm install istio-base istio/base -n istio-system --create-namespace

L'Istiod és el cervell de l'operació; gestiona la configuració dels proxys Envoy que s'injectaran als teus pods (recordeu que no farem servir eBFP) i el Ingress Gateway:

$ helm install istiod istio/istiod -n istio-system --wait
$ helm install istio-ingress istio/gateway -n istio-system --wait

Verificacions després de la instal·lació

Un cop acabat la instal·lació, tant sigui amb binari o amb Helm, és important verificar que tot s'ha instal·lat correctament. El primer pas, és revisar que els components s'estan executant correctament en el namespace:

$ kubectl get pods -n istio-system

Si has optat per descarregar el binari istioctl, tens a la teva disposició una eina de diagnòstic molt potent. Pots demanar-li a Istio que analitzi la seva pròpia instal·lació: de la següent manera:

$ istioctl verify-install

Tant si optes per la flexibilitat de Helm com per la simplicitat del binari, l'important és que ara el teu clúster té "veles". Estàs preparat per implementar polítiques de seguretat avançades, fer desplegaments Canary i tenir una visibilitat total del que passa entre els teus microserveis, això i moltes més coses les veurem en següents posts.