이 단계는 기본적으로 Knative serving 'GKE 부가기능'에 포함된 Istio 번들 버전에 해당합니다.
Knative serving 'GKE 부가기능' 제거 프로세스를 수행할 때 Istio 번들 버전이 제거되기 때문에 이 페이지의 단계는 클러스터에 Cloud Service Mesh를 설치한 후 인그레스 게이트웨이를 구성합니다.
시작하기 전에
먼저 검토를 수행하여 업그레이드 요구사항을 충족하는지 확인해야 합니다.
이 페이지의 명령어는 업그레이드 준비 단계의 환경 변수 및 마이그레이션 스크립트를 사용합니다.
지정된 순서로 이 프로세스의 각 단계를 수행하는 것이 중요합니다.
개요
일반적으로 Istio 번들 버전에서 마이그레이션할 때 Cloud Service Mesh를 설치하는 프로세스는 Cloud Service Mesh 설치를 새로 수행하는 것과 동일한 프로세스입니다. 이 프로세스에서는 Cloud Service Mesh 버전 1.18이 클러스터 내 제어 영역과 함께 설치됩니다.
Cloud Service Mesh 버전 1.18 설치
Cloud Service Mesh 설치 문서를 참고하여 Cloud Service Mesh를 설치합니다.
시작하기 전에:
마이그레이션의 경우 후속 구성 단계 중에 인그레스 게이트웨이를 개별적으로 설치해야 합니다. 설치 스크립트는 기본적으로 인그레스 게이트웨이를 설치하지 않습니다.
선택사항: 또한 Cloud Service Mesh 인증 기관(Mesh CA)을 사용하는 경우 Cloud Service Mesh 설치 스크립트에
--ca mesh_ca
플래그를 포함해야 합니다.
Cloud Service Mesh를 설치하는 방법:
Cloud Service Mesh 문서의 단계를 따릅니다. Cloud Service Mesh 버전 1.18 설치
- 예
다음은 필수 플래그가 포함된 기본 명령어의 예시입니다.
./asmcli install \ --project_id ${PROJECT_ID} \ --cluster_name ${CLUSTER_NAME} \ --cluster_location ${CLUSTER_LOCATION} \ --ca mesh_ca \ --output_dir DIR_PATH \ --enable_all
Cloud Service Mesh 인그레스 구성
이 섹션에서 마이그레이션 스크립트는 gke-system
네임스페이스 내에서 Cloud Service Mesh 인그레스 게이트웨이를 만들기 위해 사용됩니다.
마이그레이션의 경우 gke-system
네임스페이스가 사용되어 인그레스 게이트웨이가 최근에 삭제된 '번들 Istio'에 사용된 동일한 네임스페이스 내에 배치됩니다. 따라서 Cloud Service Mesh 인그레스 포드가 인그레스 서비스에 필요한 구성을 변경하지 않고도 트래픽을 매끄럽게 인계할 수 있습니다. 예를 들어 새 외부 IP 주소를 구성할 필요가 없습니다.
gke-system
네임스페이스 내에서 인그레스 게이트웨이를 만들려면 다음 명령어를 실행하여 마이그레이션 스크립트를 시작합니다../migration-addon.sh --command set-up-asm-ingress
프로세스 중의 터미널 출력은 다음과 비슷하게 표시됩니다.
Setting up Cloud Service Mesh ingress. Note that the Cloud Service Mesh ingress is not serving traffic at this step. namespace/gke-system labeled deployment.apps/istio-ingressgateway created horizontalpodautoscaler.autoscaling/istio-ingressgateway created role.rbac.authorization.k8s.io/istio-ingressgateway-sds created rolebinding.rbac.authorization.k8s.io/istio-ingressgateway-sds created Cloud Service Mesh ingress is successfully installed.
다음 명령어를 실행하여
istio-ingrerssgateway
인그레스 게이트웨이가gke-system
네임스페이스에서 실행되는지 확인합니다.kubectl get deployment istio-ingressgateway -n gke-system
istio-ingressgateway
포드 수는 의도적으로0
입니다. Knative serving Fleet 구성요소를 설치한 후에는 모든 트래픽을 Cloud Service Mesh 인그레스로 마이그레이션하는 후속 단계가 있습니다.
다음 단계
롤백
이전 단계를 통해 수행한 변경사항을 롤백해야 할 경우 마이그레이션 스크립트를 사용하여 다음을 수행할 수 있습니다.
- Cloud Service Mesh 인그레스 게이트웨이를 삭제합니다.
- Cloud Service Mesh를 제거합니다.
Cloud Service Mesh 구성 및 설치를 롤백합니다.
다음 명령어를 실행하여 롤백을 시작합니다.
./migration-addon.sh --command rollback-set-up-asm-ingress
프로세스 중의 터미널 출력은 다음과 비슷하게 표시됩니다.
Deleting Cloud Service Mesh ingress deployment.apps "istio-ingressgateway" deleted horizontalpodautoscaler.autoscaling "istio-ingressgateway" deleted role.rbac.authorization.k8s.io "istio-ingressgateway-sds" deleted rolebinding.rbac.authorization.k8s.io "istio-ingressgateway-sds" deleted Cloud Service Mesh ingress is successfully deleted.
Cloud Service Mesh 인그레스 게이트웨이가 삭제되었는지 확인하려면
istio-ingressgateway
서비스가gke-system
네임스페이스에 더 이상 없는지 확인합니다.kubectl get deployment istio-ingressgateway -n gke-system
모든 변경사항을 설치 초기 상태로 계속 롤백하려면 Knative serving 'GKE 부가기능'을 롤백합니다.