Junior — Middle
Come implementi e configuri i bilanciatori di carico in Kubernetes per distribuire il traffico?
sobes.tech AI
Risposta dell'AI
In Kubernetes, gli oggetti Service di tipo LoadBalancer o Ingress sono comunemente usati per il bilanciamento del carico.
- Service di tipo LoadBalancer crea un bilanciatore di carico esterno (ad esempio, nel cloud) che distribuisce il traffico ai pod.
- Ingress gestisce il traffico HTTP/HTTPS e consente di configurare regole di instradamento e bilanciamento.
Esempio di configurazione di un Service con LoadBalancer:
apiVersion: v1
kind: Service
metadata:
name: my-service
spec:
type: LoadBalancer
selector:
app: my-app
ports:
- protocol: TCP
port: 80
targetPort: 8080
Per un bilanciamento più flessibile, si possono usare controller di Ingress (ad esempio, NGINX Ingress Controller), dove si configurano regole di instradamento, SSL, riscrittura URL, ecc.
È inoltre importante configurare le sonde di readiness e liveness per i pod, in modo che il bilanciatore indirizzi il traffico solo alle istanze sane.