Istio 관리형 애드온 설정
Istio on IBM Cloud® Kubernetes Service는 Istio의 완벽한 설치, Istio 제어 플레인 컴포넌트의 자동 업데이트 및 라이프사이클 관리, 플랫폼 로깅 및 모니터링 도구와의 통합을 제공합니다.
클러스터에서 다른 Istio 설치 제거하기
이전에 IBM Helm 차트를 사용하거나 다른 방법을 통해 클러스터에 Istio 를 설치한 경우, 관리형 Istio 애드온을 활성화하기 전에 해당 Istio 설치를 정리해야 합니다.
시작하기 전에: Istio 이 클러스터에 이미 설치되어 있는지 확인합니다. kubectl get namespaces 을 실행하고 출력에서 istio-system 네임스페이스를 찾습니다.
다른 Istio 설치를 제거하려면:
-
IBM Cloud Istio Helm 차트를 사용하여 Istio를 설치한 경우
- Istio Helm 배치를 설치 제거하십시오.
helm del istio --purge ``` 2. Helm 2.9 이하를 사용한 경우, 추가 작업 리소스를 삭제하십시오. ```sh {: pre} kubectl -n istio-system delete job --all ``` 3. 설치 제거 프로세스는 최대 10분 정도 소요됩니다. 클러스터에 Istio 관리 추가 기능을 설치하기 전에 우선 `kubectl get namespaces`를 실행하고 `istio-system` 네임스페이스가 제거되었는지 확인하십시오. -
Istio 를 수동으로 설치했거나 Istio 커뮤니티의 Helm 차트를 사용한 경우, Istio 의 제거 안내 문서를 참조하십시오.
-
이전에 클러스터에 BookInfo를 설치한 경우 해당 리소스를 정리하십시오.
- 디렉토리를 Istio 파일 위치로 변경하십시오.
cd <filepath>/istio-1.29.5 ``` 2. 클러스터에서 모든 BookInfo 서비스, 팟(Pod) 및 배치를 삭제하십시오. ```sh {: pre} samples/bookinfo/platform/kube/cleanup.sh ``` 3. 설치 제거 프로세스는 최대 10분 정도 소요됩니다. 클러스터에 Istio 관리 추가 기능을 설치하기 전에 우선 `kubectl get namespaces`를 실행하고 `istio-system` 네임스페이스가 제거되었는지 확인하십시오.
Istio 추가 기능 설치
커뮤니티 Istio 대신 관리형 Istio 애드온을 설치할 수 있습니다.
시작하기 전에
-
IBM Cloud Kubernetes Service 에 대해 ‘Writer’ 또는 ‘Manager’ IBM Cloud IAM 서비스 액세스 역할이 부여되어 있는지 확인하십시오.
-
코어가 4개이고 메모리가 16GB 이상인 작업자 노드가 3개 이상 있는 표준 Kubernetes 클러스터(
b3c.4x16)를 작성하십시오. -
클러스터의 관리 Istio 추가 기능과 동시에 커뮤니티 Istio를 실행할 수 없습니다. 기존 클러스터를 사용하며 이전에 IBM Helm 차트를 사용하거나 다른 방법을 통해 클러스터에 Istio를 설치한 경우에는 해당 Istio 설치를 제거하십시오.
-
클래식 다중 구역 클러스터: IBM Cloud 인프라 계정에 대해 VRF(Virtual Routing and Forwarding) 를 사용으로 설정했는지 확인하십시오. VRF를 사용으로 설정하려면 VRF 사용을 참조하십시오. VRF가 이미 사용으로 설정되었는지 확인하려면
ibmcloud account show명령을 사용하십시오. VRF를 사용할 수 없거나 사용하지 않으려면 VLAN Spanning을 사용으로 설정하십시오. 이 작업을 수행하려면 ‘ 네트워크 VLAN 스패닝 관리 ’ 인프라 권한이 필요하며, 해당 권한을 활성화해 달라고 계정 소유자에게 요청할 수도 있습니다. VLAN 스패닝이 이미 활성화되어 있는지 확인하려면ibmcloud ks vlan spanning get --region REGION명령 을 사용하십시오.
콘솔에서 Istio 추가 기능 설치
-
클러스터 대시보드에서 ‘ Istio ’ 애드온을 설치할 클러스터의 이름을 클릭합니다.
-
추가 기능 섹션으로 이동하십시오.
-
관리 Istio 카드에서 설치를 클릭하십시오.
-
설치를 다시 클릭하십시오.
-
관리 Istio 카드에서 추가 기능이 나열되었는지 확인하십시오.
CLI를 사용하여 Istio 추가 기능 설치
계정에 로그인하십시오. If applicable, target the appropriate resource group. 클러스터에 대한 컨텍스트를 설정하십시오.
-
container-service플러그인을 최신 버전으로 업데이트하십시오.ibmcloud update && ibmcloud plugin update container-service -
지원되는 Istio 버전을 검토하십시오.
ibmcloud ks addon-versions --addon istio -
istio추가 기능을 사용으로 설정하십시오. 일반적으로 제공되는 ‘ Istio ’ 관리형 애드온( 1.29.5 )의 기본 버전이 설치되었습니다.ibmcloud ks cluster addon enable istio --cluster CLUSTER_NAME_OR_ID -
관리 Istio 추가 기능에
Addon Ready상태가 있는지 확인하십시오.ibmcloud ks cluster addon ls --cluster CLUSTER_NAME_OR_ID출력 예
NAME Version Health State Health Status istio 1.29.5 normal Addon Ready -
추가 기능의 개별 컴포넌트를 체크아웃하여 Istio 서비스와 해당 팟(Pod)이 배치되었는지 확인할 수도 있습니다.
kubectl get svc -n istio-systemkubectl get pods -n istio-system -
그 다음, Istio 서비스 메시에 앱을 포함할 수 있습니다.
istioctl CLI 설치
컴퓨터에 istioctl CLI 클라이언트를 설치하십시오. 자세한 내용은 [istioctl 명령어 참조](https://istio.io/latest/docs/reference/commands/istioctl/){: external}
문서를 참조하십시오.
- 클러스터에 설치한 Istio 버전을 확인합니다.
istioctl version - 클러스터의
Istio버전과 일치하는istioctl버전을 컴퓨터에 다운로드하십시오.curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.29.5 sh - - Istio 패키지 디렉토리로 이동하십시오.
cd istio-1.29.5 - Linux 및 macOS 사용자:
istioctl클라이언트를PATH시스템 변수에 추가하십시오.export PATH=$PWD/bin:$PATH
Istio 설치 사용자 정의
managed-istio-custom configmap 리소스를 편집하여 Istio 구성 옵션 세트를 사용자 정의할 수 있습니다. 이러한 설정에는 제어 플레인 및 서비스 메시의 모니터링, 로깅 및 네트워킹에 대한 추가 제어가 포함됩니다.
managed-istio-custom( ConfigMap ) 리소스에 대해 설명하여 해당 내용과 인라인 문서를 살펴보십시오.kubectl describe cm managed-istio-custom -n ibm-operatorsmanaged-istio-customconfigmap 리소스를 편집하십시오.kubectl edit cm managed-istio-custom -n ibm-operatorsdata섹션에서 다음 구성 옵션 중 하나 이상의<key>: "<value>"쌍을 추가하십시오.
istio-components-pilot-requests-cpu-
- 기본값:
"500m" milli의 CPU에서 ‘ ’ 컴포넌트 포드에 대한 CPU 요청을 구성하십시오.istiod이 값을 변경하는 경우 주의하십시오. 이 값을 너무 낮게 설정하면 제어 플레인이 올바르게 작동하지 않을 수 있으며, 너무 높게 설정하면istiod팟(Pod)이 스케줄되지 않을 수 있습니다.
- 기본값:
istio-global-logging-level-
- 기본값:
"default:info": 제어 플레인 컴포넌트의 로그 메시지 레벨 및 로그 범위를 정의하십시오. 범위는 제어 플레인 컴포넌트 내 기능 영역을 나타내며 각 범위는 특정 로그 정보 레벨을 지원합니다. 카테고리화되지 않은 로그 메시지를 위한default로깅 범위는 기본info레벨에서 제어 플레인의 모든 구성요소에 적용됩니다. - 개별 컴포넌트 범위의 로그 레벨을 지정하려면 쉼표로 구분된 범위 및 레벨 목록을 입력하십시오(예:
"<scope>:<level>,<scope>:<level>"). 각 제어 플레인 구성 요소의 적용 범위 및 로그 메시지의 정보 수준에 대한 목록은 ‘ Istio ’ 구성 요소 로깅 문서를 참조하십시오. 데이터 플레인의 로그 수준을 변경하려면istioctl proxy-config log--level 명령을 사용하십시오.
- 기본값:
istio-global-outboundTrafficPolicy-mode-
기본값:
"ALLOW_ANY": 기본적으로 서비스 메시의 모든 아웃바운드 트래픽이 허용됩니다. 서비스 메시에서 서비스 레지스트리에 정의되지 않았거나 서비스 메시 내에ServiceEntry가 없는 호스트로 향하는 아웃바운드 트래픽을 차단하려는 경우REGISTRY_ONLY로 설정합니다. istio-global-proxy-accessLogFile-
기본값:
"": Envoy 프록시가 액세스 정보를 표준 출력으로 인쇄합니다. 이러한 로그는 수신 또는 송신 문제를 디버그할 때 유용합니다. Envoy 컨테이너에 대해kubectl logs명령을 실행할 때 이 액세스 정보를 보려는 경우"/dev/stdout"으로 설정합니다. istio-monitoring-telemetry-
기본값:
"true": 기본적으로 텔레메트리 메트릭 및 Prometheus 지원이 사용으로 설정됩니다. 텔레메트리 메트릭과 연관된 성능 문제를 제거하고 모니터링을 모두 사용 안함으로 설정하려면"false"로 설정하십시오. istio-meshConfig-enableTracing-
기본값:
"true": 기본적으로 Istio는 100개의 요청 중 하나에 대해 추적 범위를 생성합니다. 추적 범위를 사용하지 않으려면"false"로 설정하십시오. istio-pilot-traceSampling-
- 기본값:
"1.0" - 기본적으로 Istio 은 요청 100건 중 1건에 대해 트레이스 스팬을 생성하며, 이는 1%의 표본 추출률에 해당합니다. 추가 추적 범위를 생성하려면 백분율 값을 늘리십시오.
- 기본값:
istio-components-pilot-hpa-maxReplicas-
- 기본값:
"5" - 기본적으로
Istio는istiod의 기본 수평 포드 자동 확장기(HPA) 최대 포드 수를 5로 설정합니다.istiod가 구성을 업데이트하기 위해 더 많은 리소스가 필요한 대규모 서비스 메시 환경이 아닌 이상, 이 값을 늘리지 마십시오.
예를 들어, Configmap은 다음 예제와 같습니다.
apiVersion: v1 data: istio-ingressgateway-zone-1: dal10 <key: value> # such as istio-egressgateway-public-1-enabled: "false" kind: ConfigMap metadata: name: managed-istio-custom namespace: ibm-operatorsconfigmap에 이 테이블의 옵션이 표시되지 않습니까? ConfigMap에 사용자 정의 값이 포함되어 있어 ConfigMap이 시간이 지나면서 릴리스된 옵션으로 업데이트되지 않은 것입니다. 대신 configmap의 사본을 백업한 후 클러스터에서 해당 configmap을 삭제할 수 있습니다. 약 5분 후 클러스터에 새 옵션이 포함된 기본 configmap이 작성됩니다. 이제 이전에 구성된 설정을 백업에서 이 기본 configmap으로 복사하고 새 설정을 구성한 후 변경사항을 적용할 수 있습니다.
- 기본값:
-
구성 파일을 저장하고 닫으십시오.
-
istio-global-logging-level또는istio-global-proxy-accessLogFile설정을 변경한 경우, 데이터 플레인 팟(Pod)에 변경사항을 적용하려면 해당 팟을 다시 시작해야 합니다.istio-system네임스페이스에 없는 모든 데이터 플레인 팟(Pod)의 목록을 가져오십시오.
istioctl version --short=false | grep "data plane version" | grep -v istio-system ``` 출력 예 ```sh {: screen} data plane version: version.ProxyInfo{ID:"test-6f86fc4677-vsbsf.default", IstioVersion:"1.29.5"} data plane version: version.ProxyInfo{ID:"rerun-xfs-f8958bb94-j6n89.default", IstioVersion:"1.29.5"} data plane version: version.ProxyInfo{ID:"test2-5cbc75859c-jh6bx.default", IstioVersion:"1.29.5"} data plane version: version.ProxyInfo{ID:"minio-test-78b5d4597d-hkpvt.default", IstioVersion:"1.29.5"} data plane version: version.ProxyInfo{ID:"sb-887f89d7d-7s8ts.default", IstioVersion:"1.29.5"} data plane version: version.ProxyInfo{ID:"gid-deployment-5dc86db4c4-kdshs.default", IstioVersion:"1.29.5"} ``` 2. 각 팟(Pod)을 삭제하여 다시 시작하십시오. 이전 단계의 출력에서는 팟 이름과 네임스페이스가 각 항목에 `data plane version: version.ProxyInfo{ID:"<pod_name>.<namespace>", IstioVersion:"1.29.5"}`(으)로 나열됩니다. ```sh {: pre} kubectl delete pod <pod_name> -n <namespace> ```
- ConfigMap 설정을 변경하고 싶으신가요?
- Configmap에 추가한 설정을 변경하려면 패치 스크립트를 사용할 수 있습니다. 예를 들어,
istio-global-proxy-accessLogFile: "/dev/stdout"설정을 추가했고 나중에 다시""로 변경하려는 경우kubectl patch cm managed-istio-custom -n ibm-operators --type='json' -p='[{"op": "add", "path": "/data/istio-global-proxy-accessLogFile", "value":""}]'를 실행할 수 있습니다. - 1.24 이상에서 사용자 지정 설정을 디버깅해야 하나요?
- 헬름 value.yaml 및 헬름 결과 로그는 ibm-operators 네임스페이스의 managed-istio-istiod-control-plane-values 구성 맵에서 확인할 수 있습니다. value.yaml 에서 변경 사항이 추가되었는지 확인할 수 있습니다. 헬름 결과에 구문 오류가 있는지 표시됩니다.
kubectl get cm -n ibm-operators managed-istio-istiod-control-plane-values -o json | jq -r .data.\"values.yaml\" kubectl get cm -n ibm-operators managed-istio-istiod-control-plane-values -o json | jq -r .data.\"values.yaml.helm.result\"Thu, 23 Oct 2025 19:58:48 GMT HELM_SUCCESS: Release "istiod" has been upgraded. Happy Helming! NAME: istiod LAST DEPLOYED: Thu Oct 23 19:58:42 2025 NAMESPACE: istio-system STATUS: deployed REVISION: 275 TEST SUITE: None NOTES: "istiod" successfully installed! - 1.23 에서 사용자 지정 설정을 디버깅해야 하나요?
kubectl logs -n ibm-operators -l name=managed-istio-operator을 실행하여addon-istio-operator( Istio 버전 1.10 ~ 1.23 ) 포드에 대한 로그를 확인합니다. Istio 오퍼레이터는 사용자에 의해 변경된 모든 사용자 정의 Istio 변경사항을 유효성 검증하고 조정합니다.
Istio 추가 기능을 사용 안함으로 설정하면 managed-istio-custom configmap이 설치 제거 중에 제거되지 않습니다. Istio 추가 기능을 다시 사용으로 설정하는 경우 사용자 정의된 configmap이 설치 중에 적용됩니다. 이후의 Istio 설치에서 사용자 정의 설정을 다시 사용하지 않으려면 kubectl delete cm -n ibm-operators managed-istio-custom을(를)
실행하여 Istio 추가 기능을 사용 안함으로 설정한 후에는 configmap을 삭제해야 합니다. Istio 추가 기능을 다시 사용으로 설정하면 기본 configmap이 설치 중에 적용됩니다.
Istio 애드온에서 커뮤니티로 마이그레이션하기 Istio
관리형 Istio 애드온 버전 1.21 ~ 1.23 을 사용하는 경우, 대신 최신 버전의 커뮤니티 Istio 로 마이그레이션할 수 있습니다.
시작하기 전에: Istio 이 더 이상 필요하지 않은 경우 이 단계를 완료하는 대신 커뮤니티를 설치하지 않고 애드온을 제거합니다. Istio 으로 이동할 수 있습니다.
1단계: 콘솔에서 Istio 애드온 비활성화하기
콘솔이나 CLI에서 해당 애드온을 비활성화하십시오.
-
클러스터 대시보드에서 ‘ Istio ’ 애드온을 제거하려는 클러스터의 이름을 클릭합니다.
-
추가 기능 섹션으로 이동하십시오.
-
관리 Istio 카드에서 조치 메뉴 아이콘을 클릭하십시오.
-
설치 제거를 클릭하십시오. 이 클러스터에서는 관리되는 Istio 애드온이 비활성화되어 있습니다.
-
관리 Istio 카드에서 설치 제거한 추가 기능이 더 이상 나열되지 않는지 확인하십시오.
1단계: CLI에서 Istio 애드온 비활성화하기
추가 기능을 비활성화하고 추가 Istio 추가 기능이 남아 있지 않은지 확인합니다.
istio추가 기능을 사용 안함으로 설정하십시오.ibmcloud ks cluster addon disable istio --cluster CLUSTER_NAME_OR_ID -f- 이 클러스터에서 모든 관리 Istio 추가 기능이 사용 안함으로 설정되어 있는지 확인하십시오. 출력에 Istio 추가 기능이 리턴되지 않습니다.
ibmcloud ks cluster addon ls --cluster CLUSTER_NAME_OR_ID - 다음 단계를 계속하기 전에 10분 동안 기다리십시오. 이렇게 하면 Istio 운영자의 관리를 해제할 시간이 생깁니다.
2단계: Istio 연산자 축소
Istio 오퍼레이터 배포 규모를 축소하십시오. Istio 애드온의 클러스터 내 Istio 운영자 사용에서 커뮤니티 Istio 의 istioctl 사용으로 마이그레이션할 때 두 설치 방법이 Istio 의 제어권을 놓고 싸우는 것을 피해야 합니다. 오퍼레이터를 축소하고 IOP를 삭제한 다음 오퍼레이터를 삭제하는 단계는 Istio 을 제거하지 않고 클러스터 내 오퍼레이터를 제거합니다.
다음 명령을 실행하십시오.
kubectl scale deployment -n ibm-operators addon-istio-operator --replicas=0
3단계: 리소스 절약
istio-system 네임스페이스에서 생성하거나 수정한 모든 리소스와 사용자 정의 리소스 정의(CRD)에 의해 자동으로 생성된 모든 Kubernetes 리소스를 저장하십시오.
-
managed-istio-customConfigMap 을 저장하여 문제점을 해결하거나 나중에 추가 기능을 다시 설치하십시오.kubectl get cm -n ibm-operators managed-istio-custom -o yaml > Customizations.yaml -
모든 IstioOperator CR (IOP) 을 저장하십시오. 클러스터 내 Istio 운영자는 클러스터 내 운영자가 IOP에 정의된 리소스를 삭제할 때까지 IOP에 파이널라이저를 사용하여 삭제를 방지합니다. Istio 을 삭제하지 않고 Istio 연산자를 제거하려면 파이널라이저를 제거해야 합니다.
- IOP 자원을 나열하십시오.
kubectl get iop -A ``` - 나열된 각 IOP 리소스에 대해 파이널라이저를 제거합니다. `managed-istio` IOP 사용 예시: ```sh {: pre} kubectl patch -n ibm-operators istiooperator/managed-istio --type json --patch='[ { "op": "remove", "path": "/metadata/finalizers" } ]' ``` - 나열된 각 IOP 자원에 대해 각 자원을 파일에 저장하십시오. ```sh {: pre} kubectl get iop -n <IOP_namespace> <IOP_name> -o yaml > <IOP_name>.yaml ``` -
다음 단계를 계속하기 전에 10분 동안 기다리십시오.
4단계: IOP 설치 관리자 변경하기
사용자 지정 인그레스 게이트웨이와 같은 모든 Istio 운영자(IOP) 리소스를 삭제합니다.
-
istioctlcli 도구가 필요한 패치 버전에 있는지 확인합니다.istioctl version -
이전 단계에서 저장한 각 IOP 파일에 대해
istioctl upgrade명령을 실행하여 Istio 을istioctl버전과 일치하는 버전으로 업그레이드합니다. 이 명령은 또한 설치 및 업그레이드 메커니즘을 클러스터 내 연산자 사용에서istioctl로 변경합니다.istioctl upgrade -f <filename>.yaml
5단계: Istio 연산자 및 IOP 제거하기
Istio 운영자 배포, 서비스 계정, 클러스터 역할 바인딩, 클러스터 역할 및 모든 IOP를 삭제합니다. Istio 가 클러스터 내 Istio 운영자에서 istioctl 기반 설치로 이전되었습니다. 이제 클러스터 내 Istio 운영자 설치가 축소되는 동안 남은 부분을 정리할 수 있습니다.
-
다음 명령을 실행하여 Istio 운영자 배포를 삭제합니다:
kubectl delete deployment -n ibm-operators addon-istio-operator --ignore-not-found=true kubectl delete serviceaccount -n ibm-operators addon-istio-operator --ignore-not-found=true kubectl delete clusterrolebinding addon-istio-operator --ignore-not-found=true kubectl delete clusterrole addon-istio-operator --ignore-not-found=true -
IOP를 삭제합니다.
- IOP 자원을 나열하십시오.
kubectl get iop -A ``` - 나열된 각 IOP 리소스에 대해 삭제합니다: ```sh {: pre} kubectl delete IstioOperator <resource_name> -n <namespace> ```
6단계: 제거 ConfigMap
ConfigMap 은 이전에 저장되었으므로 제거할 수 있습니다.
managed-istio-custom ConfigMap 을 제거합니다.
kubectl delete cm -n ibm-operators managed-istio-custom
추가 기능 제거가 완료되었으며 필요에 따라 커뮤니티( Istio )를 계속 사용하고 업그레이드할 수 있습니다.
Istio 애드온 제거하기
Istio 작업을 모두 마쳤다면, 클러스터 내의 Istio 리소스를 정리하고 Istio 애드온을 제거할 수 있습니다.
1단계: 제거 전 리소스 저장하기
istio-system 네임스페이스에서 작성하거나 수정한 모든 리소스가 제거됩니다. 이 리소스를 보존하려면 ‘ Istio ’ 애드온을 제거하기 전에 미리 저장해 두십시오.
-
managed-istio-customConfigMap 을 저장하여 문제점을 해결하거나 나중에 추가 기능을 다시 설치하십시오.kubectl get cm -n ibm-operators managed-istio-custom -o yaml > Customizations.yaml -
1.23 이전 버전의 경우 모든 IstioOperator CR(IOP)을 저장하세요.
a. IOP 자원을 나열하십시오.
kubectl get iop -Ab. 나열된 각 IOP 자원에 대해 각 자원을 파일에 저장하십시오.
kubectl get iop -n <IOP_namespace> <IOP_name> -o yaml > <IOP_name>.yaml
2단계: Istio 추가 기능 설치 제거
콘솔 또는 CLI에서 추가 기능을 설치 제거하십시오. Istio 1.20 이전 버전의 경우 모든 사용자 지정 Istio 운영자(IOP) 리소스가 자동으로 삭제됩니다.
콘솔에서 Istio 추가 기능 설치 제거
-
클러스터 대시보드에서 ‘ Istio ’ 애드온을 제거하려는 클러스터의 이름을 클릭합니다.
-
추가 기능 섹션으로 이동하십시오.
-
관리 Istio 카드에서 조치 메뉴 아이콘을 클릭하십시오.
-
설치 제거를 클릭하십시오. 이 클러스터에서 관리 Istio 추가 기능이 사용 안함으로 설정되며 이 클러스터의 모든 Istio 리소스가 제거됩니다.
-
관리 Istio 카드에서 설치 제거한 추가 기능이 더 이상 나열되지 않는지 확인하십시오.
CLI에서 ‘ Istio ’ 애드온 제거하기
더 이상 사용되지 않는 istio-sample-bookinfo 및 istio-extras 추가 기능을 설치하지 않은 경우에는 1단계 및 2단계를 건너뛰십시오.
istio-sample-bookinfo추가 기능을 사용 안함으로 설정하십시오.ibmcloud ks cluster addon disable istio-sample-bookinfo --cluster CLUSTER_NAME_OR_IDistio-extras추가 기능을 사용 안함으로 설정하십시오.ibmcloud ks cluster addon disable istio-extras --cluster CLUSTER_NAME_OR_IDistio추가 기능을 사용 안함으로 설정하십시오.ibmcloud ks cluster addon disable istio --cluster CLUSTER_NAME_OR_ID -f- 이 클러스터에서 모든 관리 Istio 추가 기능이 사용 안함으로 설정되어 있는지 확인하십시오. 출력에 Istio 추가 기능이 리턴되지 않습니다.
ibmcloud ks cluster addon ls --cluster CLUSTER_NAME_OR_ID
3단계: 자원 제거
자원이 저장되고 추가 기능이 사용 안함으로 설정되면 자원을 제거할 수 있습니다.
-
managed-istio-customconfigmap은 설치 제거 중에 제거되지 않습니다. 나중에 Istio 추가 기능을 다시 사용으로 설정하면 configmap에 대한 사용자 정의된 설정이 설치 중에 적용됩니다. 이후 Istio 설치에서 사용자 정의 설정을 다시 사용하지 않으려면 configmap을 삭제해야 합니다.kubectl delete cm -n ibm-operators managed-istio-custom -
버전 1.23 이하에서는 사용자 지정 Istio 연산자(IOP) 리소스와 IOP를 삭제합니다.
a. 작성한 모든 사용자 정의 Istio 오퍼레이터(IOP) 리소스(예: 사용자 정의 수신 게이트웨이)를 삭제하십시오. 이 명령을 실행하면 Istio 오퍼레이터가 배치 또는 서비스와 같은, IOP 리소스가 작성한 모든 리소스를 자동으로 제거합니다.
kubectl delete IstioOperator <resource_name> -n <namespace>b.
managed-istioIOP를 삭제합니다.kubectl delete iop -n ibm-operators managed-istio -
버전 1.24 이상의 경우 저장 후
addon-istio게이트웨이 ConfigMaps, 사용자 지정 게이트웨이를 삭제하고 Istio 제어 플레인을 삭제합니다.a.
addon-istio게이트웨이 저장 ConfigMaps.kubectl get cm -n ibm-operators managed-istio-ingressgateway-values -o json | jq -r .data.\"values.yaml\" > ingress-gateway.values kubectl get cm -n ibm-operators managed-istio-egressgateway-values -o json | jq -r .data.\"values.yaml\" > egress-gateway.valuesb.
addon-istio게이트웨이 ConfigMaps 를 삭제합니다.kubectl delete cm -n ibm-operators managed-istio-egressgateway-values kubectl delete cm -n ibm-operators managed-istio-ingressgateway-valuesc. 사용자 지정 게이트웨이를 제거합니다.
d. Istio 제어 평면을 삭제합니다.
istioctl uninstall -y --purge출력:
All Istio resources will be pruned from the cluster Removed apps/v1, Kind=Deployment/istiod.istio-system. Removed /v1, Kind=Service/istiod.istio-system. Removed /v1, Kind=ConfigMap/istio.istio-system. Removed /v1, Kind=ConfigMap/istio-sidecar-injector.istio-system. Removed /v1, Kind=Pod/istiod-7f59b54bfd-p5f4d.istio-system. Removed /v1, Kind=Pod/istiod-7f59b54bfd-zckw6.istio-system. Removed policy/v1, Kind=PodDisruptionBudget/istiod.istio-system. Removed autoscaling/v2, Kind=HorizontalPodAutoscaler/istiod.istio-system. Removed admissionregistration.k8s.io/v1, Kind=MutatingWebhookConfiguration/istio-sidecar-injector.. ✔ Uninstall complete -
다음 단계를 계속하기 전에 10분 동안 기다리십시오.
4단계: ‘ Istio ’ 연산자 제거
1.23 이전 버전의 경우 애드온을 완전히 제거한 후 Istio 연산자를 제거할 수 있습니다.
Istio 오퍼레이터 배치, 서비스 계정, 클러스터 역할 바인딩, 클러스터 역할을 삭제하십시오.
kubectl delete deployment -n ibm-operators addon-istio-operator --ignore-not-found=true
kubectl delete serviceaccount -n ibm-operators addon-istio-operator --ignore-not-found=true
kubectl delete clusterrolebinding addon-istio-operator --ignore-not-found=true
kubectl delete clusterrole addon-istio-operator --ignore-not-found=true