# Istio control plane 설치 (Helm) 대상: `homelab` 컨텍스트, Istio **1.30.0**. 차트는 공식 `istio` Helm repo. > ✅ **기존 설치 전환 완료(2026-06-01)**: 한때 `istioctl install`(operator-owned `istio-in-action`)로 만든 > istiod/ingressgateway가 떠 있어 ownership label 충돌 위험이 있었으나, **현재 상태 캡처 → istioctl teardown → > Helm 클린 재설치(base/istiod/ingress/egress)** 절차로 전환을 마쳤다. 전체 절차·검증은 런북 > [`2026-06-01_istio-1.30-helm-reinstall.md`](../../docs/runbooks/2026-06-01_istio-1.30-helm-reinstall.md) 참조. > 아래 명령으로 teardown/재설치를 **재실행**하는 것은 메시 전체에 영향 → 여전히 사용자 승인 필요(CLAUDE.md §6). ## 설치 순서 (의존 순서 = base → istiod → gateway) ```bash kubectl config use-context homelab # 1) repo 등록 helm repo add istio https://istio-release.storage.googleapis.com/charts helm repo update # 2) base — CRD + 클러스터 역할 helm upgrade --install istio-base istio/base -n istio-system --create-namespace --version 1.30.0 # 3) istiod — control plane helm upgrade --install istiod istio/istiod -n istio-system --version 1.30.0 \ -f values-istiod.yaml # 4) gateways — ingress / egress (같은 gateway 차트, values만 다름) helm upgrade --install istio-ingressgateway istio/gateway -n istio-system --version 1.30.0 \ -f values-ingress-gateway.yaml helm upgrade --install istio-egressgateway istio/gateway -n istio-system --version 1.30.0 \ -f values-egress-gateway.yaml ``` 또는 repo 루트에서 `make install` (동일 순서 wrapper). ## 검증 ```bash make verify # 또는 bash ../verify.sh istioctl analyze -A ``` ## 사이드카 주입 네임스페이스에 라벨을 붙여야 sidecar가 주입된다: ```bash kubectl label namespace istio-injection=enabled ``` ## 제거 (위험 — 승인 필요) ```bash helm uninstall istio-egressgateway istio-ingressgateway istiod -n istio-system helm uninstall istio-base -n istio-system # CRD 제거 — 메시 전체 리소스 영향 ```