Edge for Private Cloud v4.18.05
Edge 4.18.05 への更新中にエラーが発生した場合は、 コンポーネントを確認してから、再度アップデートを試みてください。
Edge 4.18.05 は次の機能リリース バージョンにロールバックできます。
- バージョン 4.18.01
- バージョン 4.17.09*
- バージョン 4.17.05*
* 4.18.05 から 4.17.09 または 4.17.05 にロールバックするには、 Compute Engine 上のコンポーネントをロールバックするだけでなく、Postgres をロールバックします。 計算します。4.18.01 にロールバックする場合、アップグレード時に Postgres をロールバックする必要はありません。 Postgres のアップデートが含まれていませんでした。
ロールバックを実行するシナリオは 2 つあります。
- 以前の機能リリースにロールバックするたとえば、 4.18.05 ~ 4.18.01
- 同じリリースの以前の更新バージョンにロールバックする。対象 (例: 4.18.05.02 から 4.18.05.01 へ)を指定します。
詳細については、Apigee Edge リリースをご覧ください。 プロセスをご覧ください。
ロールバックを実行できるユーザー
ロールバックを実行するユーザーは、最初に Edge を更新したユーザーと同じである必要があります。または、 ユーザーです。
デフォルトでは、Edge コンポーネントはユーザー「apigee」として実行されます。場合によっては 異なるユーザーとして識別されます。たとえば、ルーターが次のような特権ポートにアクセスする必要がある場合、 root またはアクセス権のあるユーザーとして Router を実行する必要があります。 ポート。また、あるコンポーネントをあるユーザーとして実行し、別のコンポーネントを別のユーザーとして実行することもできます。
共通のコードを使用するコンポーネント
次の Edge コンポーネントは共通のコードを共有しています。したがって、任意の 1 つのインスタンスを そのノード上にあるこれらのコンポーネントをすべてロールバックする必要があります。
edge-management-server
(Management Server)edge-message-processor
(Message Processor)edge-router
(ルーター)edge-postgres-server
(Postgres Server)edge-qpid-server
(Qpid Server)
たとえば、Management Server、Router、Message Processor を いずれかをロールバックするには、3 つすべてをロールバックする必要があります。
以前の機能リリースにロールバックする
4.18.05 から 4.17.09 または 4.17.05 にロールバックするには、 Postgres をロールバックするだけでなく、 計算します。4.18.01 からロールバックする場合は、アップグレード時に Postgres をロールバックする必要はありません。 Postgres のアップデートが含まれていませんでした。
以前の機能リリースにロールバックするには、 component:
-
ロールするバージョンの
bootstrap.sh
ファイルをダウンロードします back:- 4.18.01 にロールバックするには、
bootstrap_4.18.01.sh
をダウンロードします。curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
- 4.17.09 にロールバックするには、
bootstrap_4.17.09.sh
をダウンロードします。curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
- 4.17.05 にロールバックするには、
bootstrap_4.17.05.sh
をダウンロードします。curl https://software.apigee.com/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh
- 4.18.01 にロールバックするには、
- ロールバックするコンポーネントを停止します。
<ph type="x-smartling-placeholder">
- </ph>
- プロジェクトの共通のコードを使用するコンポーネントをロールバック
次の例に示すように、それらをすべて停止する必要があります。
/opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
- ノード上のその他のコンポーネントをロールバックするには、そのコンポーネントのみを停止します。
<ph type="x-smartling-placeholder">
- </ph>
/opt/apigee/apigee-service/bin/apigee-service component stop
- プロジェクトの共通のコードを使用するコンポーネントをロールバック
次の例に示すように、それらをすべて停止する必要があります。
- Monetization をロールバックする場合は、すべての Management Server および Message
プロセッサ ノード:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
- ロールバックするコンポーネントをノードでアンインストールします。
<ph type="x-smartling-placeholder">
- </ph>
- プロジェクトの共通のコードを使用するコンポーネントをロールバック
edge-gateway
コンポーネントをアンインストールして、すべてのコンポーネントをアンインストールする必要があります。 次の例をご覧ください。/opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
- ノード上の他のコンポーネントをロールバックするには、そのコンポーネントのみをアンインストールします。
次の例をご覧ください。
/opt/apigee/apigee-service/bin/apigee-service component uninstall
ここで、component はコンポーネント名です。
- Edge Router をロールバックするには、
/opt/nginx/conf.d
ファイルと、edge-gateway
コンポーネント グループ:cd /opt/nginx/conf.d
rm -rf *
- プロジェクトの共通のコードを使用するコンポーネントをロールバック
- バージョン 4.18.05 の
apigee-setup
をアンインストールします。/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- バージョン 4.18.01、4.17.09、または 4.17.05 の
apigee-service
をインストールします。 その依存関係について説明します。次の例では、バージョン 4.17.09 のapigee-service
:sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName apigeepassword=pWord
uName と pWord は、取得したユーザー名とパスワードです。 Apigee からデプロイできます。pWord を省略すると、入力を求められます。
エラーが発生した場合は、ステップで
bootstrap.sh
ファイルをダウンロードしたことを確認してください。 1. apigee-setup
のインストール:/opt/apigee/apigee-service/bin/apigee-service apigee-setup install
- 古いバージョンのコンポーネントをインストールします。
/opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
ここで、component はインストールするコンポーネント、configFile は 構成ファイルが更新されます。
- Qpid をロールバックする場合は、iptables をフラッシュします。
sudo iptables -F
- ロールバックするコンポーネントをホストするノードごとに、この手順を繰り返します。
4.18.05 から 4.17.09 または 4.17.05 にロールバックするには、 Postgres をロールバックするだけでなく、GKE 上のコンポーネントをロールバックします。 計算します。4.18.01 からロールバックする場合は、アップグレード時に Postgres をロールバックする必要はありません。 Postgres のアップデートが含まれていませんでした。
前の更新バージョンにロールバックする
コンポーネントを特定のバージョンのリリースにロールバックするには、各ノードで次の操作を行います。 コンポーネントをホストします。
- 特定のコンポーネント バージョンをダウンロードします。
/opt/apigee/apigee-service/bin/apigee-service component_version install
ここで、component_version はインストールするコンポーネントと更新バージョンです。例:
/opt/apigee/apigee-service/bin/apigee-service edge-ui-4.17.09-0.0.3749 install
Apigee オンライン リポジトリを使用している場合は、利用可能なコンポーネントを 次のコマンドを使用します。
yum --showduplicates list comp
例:
yum --showduplicates list edge-ui
apigee-setup
を使用してコンポーネントをインストールします。/opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile
例:
/opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
インストール時に指定するのは、バージョンではなく、コンポーネント名のみです。
- ロールバックするコンポーネントをホストするノードごとに、この手順を繰り返します。
4.18.05 から 4.17.09 または 4.17.05 にロールバックするには、 Postgres をロールバックするだけでなく、 計算します。4.18.01 からロールバックする場合は、アップグレード時に Postgres をロールバックする必要はありません。 Postgres のアップデートが含まれていませんでした。
Postgres 9.6 の更新をロールバックする
バージョン 4.17.05 または 4.17.09 から 4.18.05 にアップグレードした場合、 Edge コンポーネントに加えて Postgres が更新されます。
マスター / スタンバイ構成で Postgres を更新するときに、Postgres の更新をロールバックするには:
- 新しいスタンバイ ノードを Postgres マスターに昇格させます。新しい Postgres マスターは 前の Edge インストール環境と同じバージョンにする必要があります。
- 古いスタンバイ ノードを新しいマスターのスタンバイ ノードとして構成します。旧スタンバイ ノード 以前の Edge インストールと同じバージョンになります。
- 新しいマスターノードとスタンバイ ノードを、分析グループとコンシューマ グループに登録します。
ロールバックが完了したら、古いマスターノードは必要なくなります。Google Chat では 古いマスターノードを廃止します
- 新しいスタンバイ Postgres ノードが実行されていることを確認します。
/opt/apigee/apigee-service/bin/apigee-all status
Postgres が実行されていない場合は、起動します。
/opt/apigee/apigee-service/bin/apigee-all start
- 旧マスターノードと旧スタンバイ ノードで Postgres が停止していることを確認します。
/opt/apigee/apigee-service/bin/apigee-all status
Postgres が実行中の場合は停止します。
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- Qpid がインストールされている場合は、古いスタンバイ ノードで Qpid を起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
- 新しいスタンバイ ノードを Postgres マスターに昇格させます。
<ph type="x-smartling-placeholder">
- </ph>
- 新しいスタンバイ ノードを新しいマスターに昇格します。
apigee-service apigee-postgresql promote-standby-to-master new_standby_IP
プロンプトが表示されたら、「apigee」の Postgres パスワードを入力します。デフォルトで暗号化されます。 「postgres」です。
- 現在のバージョンの Edge のインストールに使用した構成ファイルを編集して、
次のとおりです。
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node PG_STANDBY=old_standby_IP
- 新しいマスターを構成します。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- 新しいスタンバイ ノードを新しいマスターに昇格します。
- 古いスタンバイ ノードを再ビルドします。
<ph type="x-smartling-placeholder">
- </ph>
- 現在のバージョンの Edge のインストールに使用した構成ファイルを編集して、
次のとおりです。
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node PG_STANDBY=old_standby_IP
- 古いスタンバイ ノードのデータ ディレクトリを削除します。
cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
- 古いスタンバイ ノードを再構成して、新しいマスターのスタンバイ ノードにします。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
- Postgres が古いスタンバイ ノードで実行されていることを確認します。
/opt/apigee/apigee-service/bin/apigee-all status
実行されていない場合は開始します。
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
- 現在のバージョンの Edge のインストールに使用した構成ファイルを編集して、
次のとおりです。
- 新しいスタンバイ ノードが追加されたことを確認するには、
新しいマスターの
/opt/apigee/apigee-postgresql/conf/pg_hba.conf
ファイル。 - 次のコマンドを実行して、現在の分析グループとコンシューマ グループの情報を表示します。
Management Server で次のように設定します。
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
このコマンドは、
name
フィールドに分析グループ名を返し、consumer-groups
のname
フィールドにコンシューマ グループ名を指定します。また、 クラスタ内の古い Postgres マスターノードとスタンバイ ノードの UUID が返されます。postgres-server
フィールドとdatastores
フィールドに入力します。次のように表示されます。 次の形式になります。{ "name" : "axgroup-001", "properties" : { }, "scopes" : [ "VALIDATE~test", "sgilson~prod" ], "uuids" : { "qpid-server" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ], "postgres-server" : [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ], "datastores" : [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ], "properties" : { } } ], "data-processors" : { } }
- 次の
curl
コマンドを実行して、旧マスターの UUID アドレスを取得します。 旧マスターノードを指定します。curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self
出力の最後に、次の形式でノードの UUID が表示されます。
"type" : [ "postgres-server" ], "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
- 前の手順を繰り返して、古いスタンバイ ノードと新しいスタンバイ ノードの IP アドレスを取得します。 あります。
- 古いマスターノードとスタンバイ ノードをコンシューマ グループから削除します。
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores/masterUUID,standbyUUID" -v
ここで、axgroup-001 と consumer-group-001 は コンシューマグループなどがあります「masterUUID,standbyUUID」の順序が「同じ」です は、現在の分析グループとコンシューマ グループの情報を表示したときに上に表示されています。マイページ standbyUUID,masterUUID として指定する必要がある場合があります。
consumer-groups
のdatastores
プロパティは次のようになります。 空です。 - 旧マスターノードと旧スタンバイ ノードを分析グループから削除します。
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
uuids
のpostgres-server
プロパティが空になっているはずです。 - 新しい PG マスターノードと PG スタンバイ ノードを、分析グループとコンシューマ グループに登録します。
curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d '' "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d '' "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores?uuid=masterUUID,standbyUUID" -v
- 分析グループを検証します。
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
新しいマスターノードとスタンバイ ノードの UUID が分析グループに表示されます。 2 つのグループがあります
- Edge Management Server を再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- すべての Qpid サーバーを再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- すべての Postgres サーバーを再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- 両方のサーバーで次のスクリプトを発行して、レプリケーションのステータスを確認します。システム
両方のサーバーで同じ結果が表示され、レプリケーションが成功していることを確認します。
新しいマスターで、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
マスターと表示されることを確認します。旧スタンバイ ノードで次の操作を行います。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
スタンバイと表示されることを確認します。
- 複数の API リクエストを発行した後、前の手順を繰り返し、ノードが 同期できます。
- 次の手順に沿って、古い Postgres マスターを廃止します。
Apigee Edge を更新する
4.16.01/4.16.05 ~ 4.17.09。
または、旧マスターから Qpid をアンインストールし、 新しいマスターノードに Qpid をインストールします。Qpid をアンインストールした後、 古いマスターノードです。
旧マスターから Qpid をアンインストールし、新しいマスターに Qpid をインストールする
旧マスターから Qpid をアンインストールして新しいマスターにインストールするには:
- 次の方法で、旧マスターの Qpid ポート 5672 へのアクセスをブロックして Message Processor がアクセスできないようにします。
すべての Message Processor で次のコマンドを実行します。
iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP
- 次のコマンドを実行して、Qpid メッセージ キューが空であることを確認します。できないこと
保留中のメッセージがすべて処理されるまで、Qpid をアンインストールします。
qpid-stat -q
このコマンドにより、
msg, msgIn, and msgOut
のカウントを含むテーブルが表示されます。msg=0
の時点ですべてのメッセージが処理されます。 およびmsgIn=msgOut
。 - 次のコマンドを実行して、旧マスター上の Qpid サーバーの UUID を確認します。
古いマスターです。後の手順で使用するため、この情報を保存します。
curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
- 旧マスターで Qpid を停止します。
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
- Qpid Server をアンインストールします。
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
- 分析グループとコンシューマ グループから古い Qpid サーバーを削除します。
curl -u sysAdminEmail:password -X DELETE -H "Content-Type: application/json" -d '' \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers/qpid_UUID" -v
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v
- Zookeeper から古い Qpid サーバーを削除します。
curl -u sysAdminEmail:password -X DELETE \ http://ms_IP:8080/v1/servers/qpid_UUID
- 新しいマスターに Qpid をインストールします。
/opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
- 次のコマンドを実行して、新しいマスター上の Qpid サーバーの UUID を確認します。
作成します。後の手順で使用するため、この情報を保存します。
curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
- 分析グループとコンシューマ グループに新しい Qpid サーバーを登録します。
curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d '' \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v
curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d '' \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers?uuid=qpid_UUID" -v
- すべての Message Processor を再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- 新しい Qpid サーバーで次のコマンドを実行して、キューが作成されたことを確認します。
qpid-stat -q
msg
、msgIn
、msgOut
が次のようになっていることを確認します。 Qpid サーバーがメッセージを処理すると更新されます。
ロールバック時に問題が発生した場合は、Apigee Edge サポートにお問い合わせください。