バージョン 1.4.4 へのアップグレードの概要
以降のセクションで、Apigee ハイブリッドのアップグレード手順について説明します。
- ハイブリッド インストールをバックアップします。
- Kubernetes のバージョンを確認し、必要に応じてアップグレードします。
- ASM をアップグレードします。
- ハイブリッド ランタイム バージョン 1.4 をインストールします。
前提条件
- Apigee ハイブリッド バージョン 1.3。以前のバージョンから更新する場合は、Apigee ハイブリッド バージョン 1.3 へのアップグレードをご覧ください。
バージョン 1.4 にアップグレードする
- (推奨)バージョン 1.3 の
$APIGEECTL_HOME/
ディレクトリのバックアップ コピーを作成します。次に例を示します。tar -czvf $APIGEECTL_HOME/../apigeectl-v1.3-backup.tar.gz $APIGEECTL_HOME
- (推奨)Cassandra のバックアップと復元の手順に従って Cassandra データベースをバックアップします。
- Kubernetes プラットフォームをアップグレードする方法は次のとおりです。ヘルプが必要な場合は、プラットフォームのドキュメントをご覧ください。
プラットフォーム アップグレード後のバージョン GKE 1.18.x GKE On-Prem(Anthos) 1.5.x AKS Anthos アタッチ クラスタを使用する 1.18.x EKS Anthos アタッチ クラスタを使用する 1.18.x - ASM をバージョン 1.6.x にアップグレードします。
- ASM ドキュメントを使用してアップグレードを実行します。
- GKE On-Prem(Anthos): オンプレミスの Anthos Service Mesh のアップグレード
- 他のすべてのプラットフォーム: GKE の Anthos Service Mesh のアップグレード
- 次の Ingress ポートを指定し、
istio-operator.yaml
ファイルでrunAsRoot
プロパティをtrue
に設定します。… … … ports: - port: 15021 name: status-port targetPort: 15021 - port: 80 name: http2 targetPort: 80 - port: 443 name: https targetPort: 443 … … … values: gateways: istio-ingressgateway: runAsRoot: true
- PeerAuthentication CR を作成して、
istio-operator.yaml
ファイルで mTLS を無効にします。--- apiVersion: security.istio.io/v1beta1 kind: PeerAuthentication metadata: name: apigee-system namespace: apigee-system spec: mtls: mode: DISABLE --- apiVersion: security.istio.io/v1beta1 kind: PeerAuthentication metadata: name: user-namespace namespace: user-namespace spec: mtls: mode: DISABLE
- ASM ドキュメントに記載されているように、
istioctl
を使用して次の変更を適用します。 - GKE On-Prem(Anthos): コントロール プレーンの更新
- 他のすべてのプラットフォーム: コントロール プレーンの更新
- ASM ドキュメントを使用してアップグレードを実行します。
ハイブリッド 1.4.4 ランタイムをインストールする
- 最新のバージョン番号を変数に保存します。
export VERSION=$(curl -s \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/current-version.txt?ignoreCache=1)
- 変数にバージョン番号が挿入されていることを確認します。別のバージョンを使用する場合は、そのバージョンを環境変数に保存できます。次に例を示します。
echo $VERSION
1.4.4
ご使用のオペレーティング システムに対応したリリース パッケージをダウンロードします。
Mac 64 ビット:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_64.tar.gz
Linux 64 ビット:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_64.tar.gz
Mac 32 ビット:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_32.tar.gz
Linux 32 ビット:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_32.tar.gz
- 現在の
apigeectl/
ディレクトリをバックアップ ディレクトリ名に変更します。次に例を示します。mv $APIGEECTL_HOME/ $APIGEECTL_HOME-v1.2/
-
ダウンロードした gzip ファイルの内容をハイブリッドのベース ディレクトリに展開します。次に例を示します。
tar xvzf filename.tar.gz -C hybrid-base-directory
cd
でベース ディレクトリに移動します。-
デフォルトでは、tar の内容が展開されるディレクトリの名前には、バージョンとプラットフォームが含まれています。たとえば、
./apigeectl_1.4.4-xxx_linux_64
のようになります。このディレクトリの名前をapigeectl
に変更します。mv apigeectl_1.4.5-xxx_linux_64 apigeectl
- 新しい
apigeectl/
ディレクトリで、apigeectl init
、apigeectl apply
、apigeectl check-ready
を実行します。- ハイブリッド 1.4.4 を初期化します。
apigeectl init -f overrides.yaml
ここで、overrides.yaml は編集した overrides.yaml ファイルです。
- 次のコマンドを使用して、正しく初期化されていることを確認します。
apigeectl check-ready -f overrides.yaml
kubectl describe apigeeds -n apigee
出力は次のようになります。
Status: Cassandra Data Replication: Cassandra Pod Ips: 10.8.2.204 Cassandra Ready Replicas: 1 Components: Cassandra: Last Successfully Released Version: Revision: v1-f8aa9a82b9f69613 Version: v1 Replicas: Available: 1 Ready: 1 Total: 1 Updated: 1 State: running Scaling: In Progress: false Operation: Requested Replicas: 0 State: running
apigeectl
--dry-run
フラグの構文は、実行しているkubectl
のバージョンによって異なります。kubectl
のバージョンを確認します。gcloud version
- 使用しているバージョンの
kubectl
に適したコマンドを使用して、ドライランでエラーを確認します。kubectl
バージョン 1.17 以前:apigeectl apply -f overrides.yaml --dry-run=true
kubectl
バージョン 1.18 以降:apigeectl apply -f overrides.yaml --dry-run=client
- オーバーライドを適用します。インストール先の環境に応じて、本番環境またはデモ / 試験運用環境の手順を選択して実行します。
本番環境
本番環境では、ハイブリッド コンポーネントを個別にアップグレードし、アップグレードしたコンポーネントのステータスを確認してから次のコンポーネントに進んでください。
- オーバーライドを適用して Cassandra をアップグレードします。
apigeectl apply -f overrides.yaml --datastore
- 完了を確認します。
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
ここで、namespace は Apigee ハイブリッドの名前空間です。
Pod の準備ができた場合にのみ、次の手順に進みます。
- オーバーライドを適用してテレメトリー コンポーネントをアップグレードし、完了を確認します。
apigeectl apply -f overrides.yaml --telemetry
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
- オーバーライドを適用して、組織レベルのコンポーネント(MART、Watcher、Apigee Connect)をアップグレードし、完了を確認します。
apigeectl apply -f overrides.yaml --org
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
- オーバーライドを適用して環境をアップグレードします。次の 2 つの選択肢があります。
- 環境ごと: 一度に 1 つの環境にオーバーライドを適用して、完了を確認します。この手順を環境ごとに繰り返します。
apigeectl apply -f overrides.yaml --env env_name
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
ここで、env_name はアップグレードする環境の名前です。
- 一度にすべての環境: すべての環境にオーバーライドを一度に適用して、完了を確認します。
apigeectl apply -f overrides.yaml --all-envs
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
- 環境ごと: 一度に 1 つの環境にオーバーライドを適用して、完了を確認します。この手順を環境ごとに繰り返します。
デモ / 試験運用版
ほとんどのデモまたは試験運用環境では、すべてのコンポーネントにオーバーライドを一度に適用できます。デモ / 試験運用環境が大規模で複雑な場合や本番環境に酷似している場合は、本番環境のアップグレード手順を使用します。
apigeectl apply -f overrides.yaml
- ステータスを確認します。
apigeectl check-ready -f overrides.yaml
- オーバーライドを適用して Cassandra をアップグレードします。
これで完了です。Apigee ハイブリッド バージョン 1.4.4 に正常にアップグレードされました。
- ハイブリッド 1.4.4 を初期化します。