Apigee Hybrid 업그레이드

새 버전으로 업그레이드

Apigee Hybrid를 새 버전으로 업그레이드하려면 다음 단계를 따르세요.

apigeectl의 새 버전을 다운로드하고 설치합니다.

apigeectl은 Kubernetes 클러스터에서 Apigee Hybrid 설치 및 관리를 위한 명령줄 인터페이스(CLI)입니다.

업그레이드할 apigeectl의 버전을 다운로드합니다.

  1. 사용 중인 운영체제에 해당하는 출시 패키지를 다운로드합니다.

    Mac 64비트:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/version_number/apigeectl_mac_64.tar.gz

    Linux 64비트

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/version_number/apigeectl_linux_64.tar.gz

    Mac 32비트:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/version_number/apigeectl_mac_32.tar.gz

    Linux 32비트

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/version_number/apigeectl_linux_32.tar.gz
  2. Apigee 하이브리드를 처음 설치할 때 생성된 기본 설치 디렉터리를 확인합니다. 기본 디렉터리는 $APIGEEGTL_HOME 디렉터리가 있는 디렉터리입니다. 다음 예시에서 기본 디렉터리는 /Users/myhome/hybrid입니다.

    echo $APIGEECTL_HOME
    /Users/myhome/hybrid/apigeectl
  3. 다운로드한 gzip 파일 콘텐츠를 Apigee Hybrid 기본 디렉터리에 추출합니다.

    tar xvzf filename.tar.gz -C path-to-base-directory
  4. cd 명령어를 사용하여 기본 디렉터리로 이동합니다.
  5. 기본적으로 tar 콘텐츠는 이름에 버전과 플랫폼이 있는 디렉터리로 확장됩니다. 예를 들면 ./apigeectl_1.2.0-f7b96a8_linux_64입니다.

  6. 현재 apigeectl 디렉터리의 이름을 바꿉니다. 예를 들어 현재 버전이 1.1.1인 경우 apigeectl 디렉터리의 이름을 apigeectl_1.1.1로 바꿉니다.
  7. 새로 추출된 설치 디렉터리 이름을 apigeectl로 바꿉니다. 이제 $APIGEECTL_HOME 환경이 이 디렉터리로 연결됩니다.
  8. 하이브리드 런타임 네임스페이스에 대해 완료된 작업을 삭제합니다. 여기서 namespace는 재정의 파일에 지정된 네임스페이스(네임스페이스가 있는 경우)입니다. 그렇지 않은 경우 기본 네임스페이스는 apigee입니다.
    kubectl delete job -n namespace \
      $(kubectl get job -n namespace -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  9. apigee-system 네임스페이스에 대해 완료된 작업을 삭제합니다.
    kubectl delete job -n apigee-system \
      $(kubectl get job -n apigee-system -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  10. istio-system 네임스페이스에 대해 완료된 작업을 삭제합니다.
    kubectl delete job -n istio-system \
      $(kubectl get job -n istio-system -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  11. cd./hybrid-files 디렉터리에 추가합니다.
  12. 새 버전에 대해 apigeectl을 초기화합니다.
    $APIGEECTL_HOME/apigeectl init -f my-overrides.yaml
  13. 초기화가 완료되었는지 확인하려면 다음을 확인하세요.
    $APIGEECTL_HOME/apigeectl check-ready -f my-overrides.yaml
  14. check-ready가 전달되면 apigeectl apply를 실행합니다.
    $APIGEECTL_HOME/apigeectl apply -f my-overrides.yaml
  15. check-ready를 다시 실행하여 업그레이드가 완료되는 시점을 확인합니다.

업그레이드 롤백

이전 업그레이드를 롤백하려면 다음 단계를 따르세요.

  1. 완료된 작업을 삭제합니다.
    kubectl delete job -n namespace $(kubectl get job -n namespace -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  2. 롤백할 설치의 루트 디렉터리에서 apigeectl init을 실행한 다음 apigeectl apply를 실행합니다.
      $APIGEECTL_HOME/apigeectl init -f my-overrides.yaml
      $APIGEECTL_HOME/apigeectl apply -f my-overrides.yaml