Edge for Private Cloud v. 4.17.09
4.17.09 に更新できる Edge のバージョン
この手順では、Apigee Edge バージョン 4.16.01.0x と 4.16.05.x を 4.17.09 に更新します。
バージョン 4.16.01 より前の Edge を使用している場合は、まずバージョン 4.16.01 に移行してから、バージョン 4.17.09 に更新する必要があります。
- Apigee Edge バージョン 4.15.07 は 4.16.01 に移行できます。
- バージョン 4.15.07 より前の Edge を使用している場合は、まずバージョン 4.15.07 に移行し、次にバージョン 4.16.01 に移行する必要があります。
- Edge バージョン 4.14.04 以降から移行する場合: バージョン 4.15.07 に直接移行します。
- Edge バージョン 4.14.01 から移行する場合: 最初にバージョン 4.14.04 に移行してから、バージョン 4.15.07 に移行する必要があります。
更新を行えるユーザー
更新を実行するユーザーは、最初に Edge をインストールしたユーザーまたは root として実行しているユーザーと同じである必要があります。
Edge RPM をインストールした後は、どのユーザーでも構成できます。
更新する必要のあるコンポーネント
すべての Edge コンポーネントを更新する必要があります。Edge では、コンポーネントのバージョンが混在する設定はサポートされません。
4.16.01 から更新する場合の Zookeeper のダウングレード
Edge for Private Cloud 4.16.01 の Zookeeper RPM のバージョンは apigee-zookeeper-3.4.5-1.0.905.noarch.rpm です。その後の Edge のバージョンでは、Zookeeper のバージョンが apigee-zookeeper-3.4.5-0.0.94x に戻されました。これにより、yum が Zookeeper を 4.16.01 から新しいバージョンにアップグレードするのを防ぐことができます。この状況を修正するには、Zookeeper を更新する前に yum downgrade apigee-zookeeper を実行します。
Zookeeper のバージョンは、次のコマンドで確認できます。
> rpm -qa |grep apigee-zookeeper
このコマンドが Zookeeper のバージョンを返した場合:
apigee-zookeeper-3.4.5-1.0.905
その後、ダウングレードする必要があります。
プロパティ設定の自動伝播
/opt/apigee/customer/application にある .properties ファイルを編集してプロパティを設定した場合、それらの値は更新の際にも保持されます。
更新の前提条件
Apigee Edge をアップグレードする前に、次の前提条件を確認してください。
- すべてのノードをバックアップする
安全上の理由から、更新する前に、すべてのノードを完全にバックアップすることをおすすめします。現在の Edge バージョンのバックアップ手順を使用してください。
これにより、新しいバージョンへの更新が失敗した場合に備えてバックアップ計画を立てることができます。バックアップの詳細については、バックアップと復元をご覧ください。 - Edge が動作していることを確認する
次のコマンドを使用して、更新中に Edge が動作していることを確認します。
> /opt/apigee/apigee-service/bin/apigee-all status
更新が失敗した場合の対応
更新に失敗した場合は、問題を修正してから update.sh を再度実行できます。更新を複数回実行することができ、最後に終了したところから更新が続行されます。
失敗して更新を前のバージョンにロールバックする必要がある場合は、4.17.09 ロールバック プロセスをご覧ください。
更新情報のロギング
デフォルトでは、update.sh ユーティリティからのログ情報は次のファイルに書き込まれます。
/opt/apigee/var/log/apigee-setup/update.log
update.sh ユーティリティを実行しているユーザーにこのディレクトリへのアクセス権がない場合は、/tmp ディレクトリの update_username.log というファイルにログが書き込まれます。
ユーザーに /tmp へのアクセス権がない場合、update.sh ユーティリティは失敗します。
Java JDK バージョン 8 へのアップグレードが必須
このリリースの Edge では、すべての Edge 処理ノードに Java JDK バージョン 8 がインストールされている必要があります。Oracle JDK 8 または OpenJDK 8 をインストールできます。Java JDK 8 がまだインストールされていない場合は、更新スクリプトによってインストールできます。
Java 8 へのアップデートの一環として、一部の TLS 暗号が Oracle JDK 8 で使用できなくなりました。完全なリストについては、http://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html の「デフォルトで無効になっている暗号スイート」セクションをご覧ください。
EPEL リポジトリを有効にするために必要
Edge をインストールまたは更新するには、Extra Packages for Enterprise Linux(EPEL)を有効にする必要があります。使用するコマンドは、RedHat または CentOS のバージョンによって異なります。
- RedHat/CentOS 7.x の場合:
> wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm; rpm -ivh epel-release-latest-7.noarch.rpm - RedHat/CentOS 6.x の場合:
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm; rpm -ivh epel-release-latest-6.noarch.rpm
SMTPMAILFROM 構成パラメータの追加が必要
Edge 4.17.05 では、SMTP サーバーを有効にする場合に使用する必要のある構成ファイルが新しく追加されています。4.17.01 から更新する場合は、SMTP サーバーを有効にするときに、構成ファイルで SMTPMailFROM を設定する必要があります。
API BaaS バージョン 4.17.09 では、SMTPMailFROM プロパティのサポートも追加されました。API BaaS を更新する場合は、構成ファイルで SMTPMAILFROM を設定する必要があります。
このパラメータの形式は次のとおりです。
SMTPMAILFROM="My Company <myco@company.com>"
外部認証を使用している場合に更新する場合に必要
外部ディレクトリ サービスを既存の Apigee Edge Private Cloud に統合できます。この機能は、Active Directory や OpenLDAP などの LDAP をサポートするディレクトリ サービスと連携するように設計されています。外部 LDAP ソリューションを使用すると、システム管理者は、ユーザー認証情報を使用するシステム(Apigee Edge など)の外部にある集中管理されたディレクトリ管理サービスでユーザー認証情報を管理できます。
詳細については、外部認証の構成をご覧ください。
外部認証が有効になっている場合、ほとんどのお客様は、Edge OpenLDAP サーバーで使用されるメールアドレスではなく、Active Directory SAM アカウント名フィールドを認証のユーザー名として使用します。
外部ディレクトリ サービスと統合している場合は、Edge を 4.17.09 に更新するときに、構成ファイルに次の行を追加します。
IS_EXTERNAL_AUTH="true"
この行は、Edge がユーザー名としてメールアドレスではなくアカウント名を使用するように構成します。
Qpid 1.35 へのアップグレードが必須
このリリースには、Qpid 1.35 への必須のアップデートが含まれています。Qpid ノードの更新の一環として、次の操作を行う必要があります。
- Qpid ノードのポート 5672 をブロックして、Router と Message Processor が Qpid ノードに書き込めないようにします。次のコマンドを使用して、Qpid ノードでこのポートをブロックできます。
> sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP - Qpid キューが空になるまで待機し、Qpid ノードが更新前にすべてのメッセージを処理したことを確認します。次のコマンドを使用して、Qpid メッセージ キューが空であることを確認します。
> qpid-stat -q - Qpid ノードを更新します。
- Qpid ノードのポート 5672 のブロックを解除して、Router と Message Processor からのアクセスを許可します。次のコマンドを使用して、このポートのブロックを解除できます。
> sudo iptables -F
他のルールで iptables を使用している場合は、-D オプションを使用して特定の変更を元に戻すことができます。
> sudo iptables -D INPUT -p tcp --destination-port 5672 !-s `hostname` -i eth0 -j DROP
このプロセスについては、Edge トポロジごとに後述します。
Postgres 9.4 へのアップグレードが必須
この Edge のリリースには、Postgres 9.4 へのアップグレードが含まれています。アップグレードの際に、すべての Postgres のデータが Postgres 9.4 に移行されます。
更新の際、Postgres ノードはダウンしますが、分析データは Qpid ノードに書き込まれます。Postgres が更新され、オンラインに復帰すると、分析データが Postgres ノードに送信されるようになります。
なんらかの理由で更新をロールバックする場合は、Postgres スタンバイ ノードを追加する必要があります。更新をロールバックする必要がある場合は、ロールバック後に新しい Postgres スタンバイ ノードがマスター Postgres ノードになります。そのため、新しい Postgres スタンバイ ノードをインストールする際は、Edge のインストール要件に定められた Postgres サーバーのハードウェア要件をすべて満たすノードにインストールする必要があります。
新しい Postgres スタンバイ ノードのインストール
この手順では、新しいノードに Postgres のスタンバイ サーバーを作成します。新しい Postgres スタンバイ サーバーは、(バージョン 4.17.09 のものではなく)既存の Edge バージョン(4.16.01 または 4.16.05)のものをインストールしてください。
インストールには、Edge の現行バージョンのインストールに使用したものと同じ構成ファイルを使用します。
Postgres スタンバイ ノードを新たに作成するには:
- 現在の Postgres マスターで、/opt/apigee/customer/application/postgresql.properties ファイルを編集して次のトークンを設定します。このファイルが存在しない場合は、作成します。
conf_pg_hba_replication.connection=host replication apigee existing_slave_ip/32 trust\ \nhost replication apigee new_slave_ip/32 trust
existing_slave_ip は現在の新しい Postgres ノードの IP アドレスで、新しい Postgres サーバーの IP アドレスです。 - Postgres マスターで apigee-postgresql を再起動します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart - マスターの /opt/apigee/apigee-postgresql/conf/pg_hba.conf ファイルを表示して、新しいスタンバイ ノードが追加されたことを確認します。ファイルに次の行が表示されます。
host replication apigee existing_slave_ip/32 trust
host replication apigee new_slave_ip/32 trust - 新しい Postgres スタンバイ サーバーをインストールします。
- 現在のバージョンの Edge をインストールする際に使用した構成ファイルを編集し、次の内容を指定します。
# 現在のマスターの IP アドレス:
PG_MASTER=192.168.56.103
# 新しいスタンバイ ノードの IP アドレス
PG_STANDBY=192.168.56.102 - Edge apigee-setup ユーティリティをインストールするの説明に従って、SELinux を無効にします。
- Edge bootstrap_4.16.05.sh ファイルを /tmp/bootstrap_4.16.05.sh にダウンロードします。
> curl https://software.apigee.com/bootstrap_4.16.05.sh -o /tmp/bootstrap_4.16.05.sh
注: 4.16.01 から更新する場合は、Edge の bootstrap.sh ファイルをダウンロードします。 - Edge apigee-service ユーティリティと依存関係をインストールします。
> sudo bash /tmp/bootstrap_4.16.05.sh apigeeuser=uName apigeepassword=pWord - apigee-service を使用して apigee-setup ユーティリティをインストールします。
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install - Postgres をインストールします。
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 新しいスタンバイ ノードで、次のコマンドを実行します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
スタンバイ ノードと表示されることを確認します。
- 現在のバージョンの Edge をインストールする際に使用した構成ファイルを編集し、次の内容を指定します。
Postgres ノードの廃止
更新が完了したら、新たに用意したスタンバイ ノードを廃止します。
- Postgres が実行中であることを確認します。
> /opt/apigee/apigee-service/bin/apigee-all status
Postgres が実行されていない場合は、起動します。
> /opt/apigee/apigee-service/bin/apigee-all start - 新しいスタンバイ ノードで次の cURL コマンドを実行して、新しいスタンバイ ノードの 5a - 9 -
- 新しいスタンバイ ノードで、次のコマンドを実行して、新しいスタンバイ ノードを停止します。
> /opt/apigee/apigee-service/bin/apigee-all stop - Postgres マスターノードで /opt/apigee/customer/application/postgresql.properties を編集し、conf_pg_hba_replication.connection から新しいスタンバイ ノードを削除します。
conf_pg_hba_replication.connection=host replication apigee existing_slave_ip/32 trust - Postgres マスターで apigee-postgresql を再起動します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart - マスターの /opt/apigee/apigee-postgresql/conf/pg_hba.conf ファイルを表示して、新しいスタンバイ ノードが削除されたことを確認します。ファイルには、次の行のみが表示されます。
host replication apigee existing_slave_ip/32 trust - Management Server ノードで次の Edge Management API 呼び出しを行って、ZooKeeper からスタンバイ ノードの UUID を削除します。
> curl -u sysAdminEmail:password -X DELETE http://<ms_IP>:8080/v1/servers/<new_slave_uuid>
ゼロダウンタイムでの更新
ゼロダウンタイムでの更新(ローリング アップデート)により、Edge をダウンさせることなく、インストール済みの Edge を更新できます。
ゼロダウンタイム更新は、ノードが 5 つ以上の構成でのみ利用可能です。
ゼロダウンタイムでアップグレードする場合に重要となる点は、各 Router をロードバランサから一度に 1 台ずつ削除することです。削除した Router と、その同じマシンにあるすべてのコンポーネントを更新してから、Router をロードバランサに再び追加します。
- 後述の「マシンの更新順序」に記載されている正しい順序でマシンを更新します。
- Router を更新するときは、任意の Router を 1 つ選択し、サーバー(Message Processor/Router)の到達可能性の有効化/無効化の説明に従ってその Router を到達不能な状態にします。
- 選択した Router と、その同じマシンにある他のすべての Edge コンポーネントを更新します。すべての Edge 構成では、同じノード上に Router と Message Processor があります。
- Router を再び到達可能にします。
- 残りの Router に対し、2~4 の手順を繰り返します。
- インストール済みの残りのマシンについて、更新を続行してください。
更新の前後で次の点に注意してください。
- Router と Message Processor の共存ノード:
- 更新前 - 次のことを行います。
- Router を到達不能な状態にします。
- Message Processor を到達不能な状態にします。
- 更新後 - 次のことを行います。
- Message Processor を到達可能な状態にします。
- Router を到達可能な状態にします。
- 更新前 - 次のことを行います。
- Router 単独のノード:
- 更新前に、Router を到達不能な状態にします。
- 更新後に、Router を到達可能な状態にします。
- Message Processor 単独のノード:
- 更新前に、Message Processor を到達不能な状態にします。
- 更新後に、Message Processor を到達可能な状態にします。
サイレント構成ファイルの使用
更新コマンドにはサイレント構成ファイルを渡す必要があります。サイレント構成ファイルは、Edge 4.16.01 または 4.16.05 のインストールに使用したものと同じである必要があります。
外部インターネット接続があるノードで 4.17.09 に更新する手順
ノード上の Edge コンポーネントを更新するには、次の操作を行います。
- 現在 Postgres のマスター / スタンバイ レプリケーションを使用している場合は、Postgres スタンバイ ノードを新たにインストールするの手順に従って、新しい Postgres スタンバイ ノードをインストールします。
- Cassandra の修復オペレーションを行う CRON ジョブが構成されている場合は、更新が完了するまでそのジョブを無効にします。
- ノードに root としてログインし、Edge RPM をインストールします。
注: RPM のインストールには root 権限が必要ですが、Edge の構成には root 権限は不要です。 - yum-utils と yum-plugin-priorities をインストールします。
> sudo yum install yum-utils
> sudo yum install yum-plugin-priorities - Edge apigee-setup ユーティリティをインストールするの説明に沿って、SELinux を無効にします。
- 上記の手順に沿って、EPEL リポジトリを有効にします。
- AWS にインストールする場合は、次の yum-configure-manager コマンドを実行します。
> sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional - Edge 4.17.09 の bootstrap_4.17.09.sh ファイルを /tmp/bootstrap_4.17.09.sh にダウンロードします。
> curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh - Edge 4.17.09 の apigee-service ユーティリティと依存関係をインストールします。
> sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName apigeepassword=pWord
ここで、uName:pWord は Apigee から取得したユーザー名とパスワードです。pWord を省略すると、パスワードの入力を求められます。
デフォルトでは、インストーラが Java 1.8 の有無を確認します。インストールされていない場合は自動的にインストールされます。Java のインストールの処理方法について指定する場合は、JAVA_FIX オプションを使用します。JAVA_FIX には、次の値が入ります。
I = OpenJDK 1.8 をインストール(デフォルト)
C = Java をインストールせずに続行
Q = 終了。このオプションでは、Java を自分でインストールする必要があります。 - apigee-service を使用して、apigee-setup ユーティリティを更新します。
- Edge バージョン 4.15.07.0x をアップグレードして 4.16.01 をインストールした場合は、apigee-setup ユーティリティをインストールする必要があります。
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
このコマンドは、update.sh ユーティリティを /opt/apigee/apigee-setup/bin にインストールします。
apigee-setup ユーティリティがすでにインストールされている場合は、更新します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update - 4.16.01 を直接インストールした場合(4.15.07.0x からアップグレードしなかった場合)は、apigee-setup ユーティリティを更新する必要があります。
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
apigee-service のこの更新により、update.sh ユーティリティが /opt/apigee/apigee-setup/bin にインストールされます。 - 4.16.05 を直接または更新によってインストールした場合は、apigee-setup ユーティリティを更新する必要があります。
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
この apigee-service の更新により、update.sh ユーティリティが /opt/apigee/apigee-setup/bin にインストールされます。
- Edge バージョン 4.15.07.0x をアップグレードして 4.16.01 をインストールした場合は、apigee-setup ユーティリティをインストールする必要があります。
- 現在の Edge のバージョンに応じて、Management Server で apigee-validate ユーティリティをインストールまたは更新する必要があります。
- 現在 Edge 4.16.05 を使用している場合: Management Server で apigee-validate ユーティリティを更新します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate update - 現在 Edge 4.16.01 を使用している場合: 管理サーバーに apigee-validate ユーティリティをインストールします。
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate install
注: 4.16.01 のインストール時に Message Processor ノードに apigee-validate ユーティリティをインストールした場合は、そのノードで次のコマンドを使用して更新できます。
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate update
ただし、4.16.05 以降では、管理サーバーに apigee-validate ユーティリティをインストールして実行することをおすすめします。 - 4.16.01 からアップグレードする場合: apigee-validate ユーティリティに渡される構成ファイルを編集します。4.16.01 Edge リリースでは、apigee-validate で使用される構成ファイルに次のプロパティが必要でした。
APIGEE_ADMINPW=sysAdminPword
MP_POD=gateway
REGION=dc-1
このリリースでは、構成ファイルに APIGEE_ADMINPW プロパティのみが必要です。他の 2 つのプロパティはファイルから削除できます。
- 現在 Edge 4.16.05 を使用している場合: Management Server で apigee-validate ユーティリティを更新します。
- apigee-provision ユーティリティを更新します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision update - 以下の「マシンの更新の順序」に記載されている順序で、ノード上でアップデート ユーティリティを実行します。
> /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile
構成ファイルに対する唯一の要件は、構成ファイルに「apigee」ユーザーがアクセスできること、または読み取り可能であることです。
「-c」オプションを使用して、更新するコンポーネントを指定します。使用可能なコンポーネントのリストは次のとおりです。
ldap = OpenLDAP
cs = Cassandra
zk = Zookeeper
qpid = qpidd
ps = postgresql
edge =Edge UI 以外のすべての Edge コンポーネント: Management Server、Message Processor、Router、QPID Server、Postgres Server
ui = Edge UI
all = マシン上のすべてのコンポーネントを更新します(Edge aio インストール プロファイルまたは API BaaS asa インストール プロファイルにのみ使用)。
e = ElasticSearch
b = API BaaS スタック
p = API BaaS Portal
ebp = 同じノード上の ElasticSearch、API BaaS スタック、API BaaS Portal - インストールのテストの説明に従って、Management Server で apigee-validate ユーティリティを実行し、更新をテストします。
- 新しい Postgres スタンバイ ノードをインストールした場合は、上記の Postgres ノードを廃止するを参照して、ノードを廃止します。
後で更新をロールバックする場合は、4.17.09 のロールバック プロセスの手順に沿って操作してください。
ローカル リポジトリから 4.17.09 に更新する手順
Edge ノードがファイアウォールの内側にあるか、インターネット経由での Apigee リポジトリへのアクセスが禁止されている場合は、Apigee リポジトリのローカル リポジトリ(ミラー)から更新を実行できます。
ローカル Edge リポジトリを作成した後、Edge をローカル リポジトリから更新する方法は 2 通りあります。
- リポジトリの .tar ファイルを作成してノードにコピーし、.tar ファイルから Edge を更新します。
- ローカル リポジトリを持つノードにウェブサーバーをインストールし、他のノードからアクセスできるようにします。Apigee から提供されているウェブサーバーは Nginx ですが、他のウェブサーバーを使用してもかまいません。
ローカルの 4.17.09 リポジトリから更新するには:
- 現在 Postgres のマスター / スタンバイ レプリケーションを使用している場合は、Postgres スタンバイ ノードを新たにインストールするの手順に従って、新しい Postgres スタンバイ ノードをインストールします。
- Edge apigee-setup ユーティリティのインストールの「ローカルに Apigee リポジトリを作成する」の手順に沿って、4.17.09 リポジトリをローカルに作成します。
注: 既存の 4.16.01 または 4.16.05 リポジトリがある場合は、Edge apigee-setup ユーティリティをインストールするの「ローカルの Apigee リポジトリを更新する」の説明に従って 4.17.09 リポジトリを追加できます。 -
.tar ファイルから apigee-service をインストールするには:
- ローカル リポジトリがあるノードで次のコマンドを使用して、ローカル リポジトリを /opt/apigee/data/apigee-mirror/apigee-4.17.09.tar.gz という名前の単一の.tar ファイルにパッケージ化します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package。 - Edge を更新する対象のノードに .tar ファイルをコピーします。たとえば、このファイルを新しいノードの /tmp ディレクトリにコピーします。
- 新しいノードで、ファイルを /tmp ディレクトリに解凍します。
> tar -xzf apigee-4.17.09.tar.gz
このコマンドにより、.tar ファイルが存在するディレクトリに repos という新しいディレクトリが作成されます。たとえば、/tmp/repos のようになります。 - /tmp/repos から Edge apigee-service ユーティリティと依存関係をインストールします。
> sudo bash /tmp/repos/bootstrap_4.17.09.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
コマンドに repos ディレクトリへのパスが含まれている点に注意してください。
- ローカル リポジトリがあるノードで次のコマンドを使用して、ローカル リポジトリを /opt/apigee/data/apigee-mirror/apigee-4.17.09.tar.gz という名前の単一の.tar ファイルにパッケージ化します。
-
Nginx ウェブサーバーを使用して apigee-service をインストールするには:
- Edge apigee-setup ユーティリティのインストールの「Nginx ウェブサーバーを使用してリポジトリからインストールする」の手順に沿って、Nginx ウェブサーバーを構成します。
- リモートノードで、Edge の bootstrap_4.17.09.sh ファイルを /tmp/bootstrap_4.17.09.sh にダウンロードします。
> /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
ここで、uName:pWord は、上記でリポジトリに設定したユーザー名とパスワードであり、remoteRepo はリポジトリ ノードの IP アドレスまたは DNS 名です。 - リモートノードで、Edge apigee-service ユーティリティと依存関係をインストールします。
> sudo bash /tmp/bootstrap_4.17.09.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://
ここで、uName:pWord はリポジトリのユーザー名とパスワードです。
- apigee-service を使用して、apigee-setup ユーティリティを更新します。
- Edge バージョン 4.15.07.0x をアップグレードして 4.16.01 をインストールした場合は、apigee-setup ユーティリティをインストールする必要があります。
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
このコマンドは、update.sh ユーティリティを /opt/apigee/apigee-setup/bin にインストールします。
apigee-setup ユーティリティをすでにインストールしている場合は、更新します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update - 4.16.01 を直接インストールした場合(4.15.07.0x からアップグレードを実行しなかった場合)は、apigee-setup ユーティリティを更新する必要があります。
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
apigee-service のこの更新により、update.sh ユーティリティが /opt/apigee/apigee-setup/bin にインストールされます。 - 4.16.05 を直接または更新してインストールした場合は、apigee-setup ユーティリティを更新する必要があります。
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
この apigee-service の更新により、/opt/apigee/apigee-setup/bin に update.sh ユーティリティがインストールされます。
- Edge バージョン 4.15.07.0x をアップグレードして 4.16.01 をインストールした場合は、apigee-setup ユーティリティをインストールする必要があります。
- Edge の現在のバージョンに応じて、Management Server に apigee-validate ユーティリティをインストールまたは更新する必要があります。
- 現在 Edge 4.16.05 を使用している場合: Management Server で apigee-validate ユーティリティを更新します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate update - 現在 Edge 4.16.01 を使用している場合: 管理サーバーに apigee-validate ユーティリティをインストールします。
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate install
注: 4.16.01 のインストール時に Message Processor ノードに apigee-validate ユーティリティをインストールした場合は、そのノードで次のコマンドを使用して更新できます。
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate update
ただし、4.16.05 以降では、管理サーバーに apigee-validate ユーティリティをインストールして実行することをおすすめします。 - 4.16.01 からアップグレードする場合: apigee-validate ユーティリティに渡される構成ファイルを編集します。4.16.01 Edge リリースでは、apigee-validate で使用される構成ファイルに次のプロパティが必要でした。
APIGEE_ADMINPW=sysAdminPword
MP_POD=gateway
REGION=dc-1
このリリースでは、構成ファイルに APIGEE_ADMINPW プロパティのみが必要です。他の 2 つのプロパティはファイルから削除できます。
- 現在 Edge 4.16.05 を使用している場合: Management Server で apigee-validate ユーティリティを更新します。
- apigee-provision ユーティリティを更新します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision update - 次の「マシンの更新順序」に記載されている順序で、各ノードで update ユーティリティを実行します。
> /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile
構成ファイルに関する唯一の要件として、構成ファイルが「apigee」ユーザーからアクセス可能または読み取り可能である必要があります。
「-c」オプションを使用して、更新するコンポーネントを指定します。使用可能なコンポーネントのリストは次のとおりです。
ldap = OpenLDAP
cs = Cassandra
zk = Zookeeper
qpid = qpidd
ps = postgresql
edge =Edge UI 以外のすべての Edge コンポーネント: Management Server、Message Processor、Router、QPID Server、Postgres Server
ui = Edge UI
all = マシン上のすべてのコンポーネントを更新します(Edge aio インストール プロファイルまたは API BaaS asa インストール プロファイルにのみ使用)。
e = ElasticSearch
b = API BaaS スタック
p = API BaaS Portal
ebp = 同じノード上の ElasticSearch、API BaaS スタック、API BaaS Portal - インストールをテストするの説明に沿って、Management Server で apigee-validate ユーティリティを実行し、更新をテストします。
- 新しい Postgres スタンバイ ノードをインストールした場合は、上記の Postgres ノードを廃止するの説明に従ってノードを廃止します。
後で更新をロールバックする場合は、4.17.09 のロールバック プロセスの手順に沿って操作してください。
マシンの更新の順序
Edge のインストールにおいては、マシンを更新する順序が重要です。更新時に特に考慮すべき事項は次のとおりです。
- 他のノードを更新する前に、すべての Cassandra ノードと ZooKeeper ノードを更新する必要があります。
- 複数の Edge コンポーネント(Management Server、Message Processor、Router、QPID Server。Postgres Server は該当せず)を搭載しているマシンでは、「-c edge」オプションを使用して、それらのコンポーネントをすべて同時に更新します。
- 複数のマシンで行うよう指示されているステップは、指定されたマシン順に行ってください。
- Monetization の更新に関して特別な手順はありません。「-c edge」オプションを指定した場合に更新されます。
1 ホストのスタンドアロン インストールの場合
- Edge で SMTP を有効にしている場合は、構成ファイルで SMTPMAILFROM を設定します。このパラメータの形式は次のとおりです。
SMTPMAILFROM="My Company <myco@company.com>" - 4.16.01 から更新する場合は、Zookeeper をダウングレードします。
> yum downgrade apigee-zookeeper - Cassandra と ZooKeeper を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - 次の iptables ルールを設定します。
> sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP - Qpid メッセージ キューを確認します。
> qpid-stat -q
[msg] 列の数が 0 になるまでキューを継続的に確認します。すべてのメッセージが処理されるまで、Qpid をアップグレードすることはできません。 - qpidd を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - iptables をフラッシュします。
> sudo iptables -F - LDAP を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - Postgres Server、Qpid Server、PostgreSQL を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - Postgres データベースを更新します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - 残りの Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - Edge UI を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
2 ホストのスタンドアロン インストールの場合
Edge のトポロジとノード番号の一覧については、インストール トポロジをご覧ください。
- Edge で SMTP を有効にしている場合は、構成ファイルで SMTPMAILFROM を設定します。このパラメータの形式は次のとおりです。
SMTPMAILFROM="My Company <myco@company.com>" - 4.16.01 から更新する場合は、マシン 1 で Zookeeper をダウングレードします。
> yum down apigee-zookeeper - マシン 1 の Cassandra と ZooKeeper を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - マシン 2 に次の iptables ルールを設定します。
> sudo iptables -A INPUT -p tcp --destination-port 5672 !-s `hostname` -i eth0 -j DROP - マシン 2 の Qpid メッセージ キューを確認します。
> qpid-stat -q
「msg」列のカウントが 0 になるまでキューをチェックし続けます。すべてのメッセージが処理されるまで、Qpid をアップグレードすることはできません。 - マシン 2 の qpidd を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - マシン 2 の iptables をフラッシュします。
> sudo iptables -F - マシン 1 の LDAP を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - マシン 1 の Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - マシン 1 の UI を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - マシン 2 の postgresql を更新します。
- Postgres Server、Qpid Server、postgresql を停止させます。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - Postgres データベースを更新します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - マシン 2 とマシン 1 の Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- Postgres Server、Qpid Server、postgresql を停止させます。
- マシン 2 の Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
5 ホストクラスタ構成の場合
Edge のトポロジとノード番号の一覧については、インストール トポロジをご覧ください。
- Edge で SMTP を有効にしている場合は、構成ファイルで SMTPMailFROM を設定します。このパラメータの形式は次のとおりです。
SMTPMailFROM="My Company <myco@company.com>" - 上記のPostgres スタンバイ ノードを新たにインストールするの手順に沿って、新しい Postgres スタンバイ ノードをインストールします。
- 4.16.01 からアップデートする場合は、Macine 1、2、3 で Zookeeper をダウングレードします。
> yum down apigee-zookeeper - マシン 1、2、3 の Cassandra と ZooKeeper を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - マシン 4 に次の iptables ルールを設定します。
> sudo iptables -A INPUT -p tcp --destination-port 5672 !-s `hostname` -i eth0 -j DROP - マシン 4 の Qpid メッセージ キューを確認します。
> qpid-stat -q
[msg] 列の数が 0 になるまでキューをチェックし続けます。すべてのメッセージが処理されるまで、Qpid をアップグレードすることはできません。 - マシン 4 の qpidd を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - マシン 4 の iptables をフラッシュします。
> sudo iptables -F - マシン 5 で手順 5 ~ 8 を繰り返します。
- マシン 1 の LDAP を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - マシン 1、2、3 の Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - マシン 1 の UI を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - マシン 4、5 を更新します。
- マシン 4 で Postgres Server と Qpid Server を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop - マシン 5 の Postgres Server、Qpid Server、postgresql を停止させます。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - ロールバック用に追加した新しいスタンバイ ノードで Postgres Server と postgresql を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - マシン 4 の postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - マシン 4 の Postgres データベースを更新します(Postgres マスターのみ)。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - マシン 5 の postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - マシン 4 と 5 で Postgres Server と Qpid Server を起動します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start - マシン 5 で次のコマンドを実行して、Postgres をスタンバイ ノードとして構成します。
> cd /opt/apigee/data/apigee-postgresql/pnortheast
> rm -rf *
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile - 両方のサーバーで、次のスクリプトを実行してレプリケーション ステータスを確認します。両方のサーバーで同じ結果が表示されれば、レプリケーションは成功しています。
マシン 4(マスターノード)で、次のコマンドを実行します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
マスターであることを確認します。
マシン 5 のスタンバイ ノード:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
スタンバイ ノードと表示されることを確認します。
- マシン 4 で Postgres Server と Qpid Server を停止します。
- マシン 4、5 の Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - Postgres ノードを廃止するの手順に沿って、新しいスタンバイ ノードの使用を停止します。
9 ホストクラスタ構成の場合
Edge のトポロジとノード番号の一覧については、インストール トポロジをご覧ください。
- Edge で SMTP を有効にしている場合は、構成ファイルで SMTPMAILFROM を設定します。このパラメータの形式は次のとおりです。
SMTPMAILFROM="My Company <myco@company.com>" - 上記のPostgres スタンバイ ノードを新たにインストールするの手順に沿って、新しい Postgres スタンバイ ノードをインストールします。
- 4.16.01 からアップデートする場合は、Macine 1、2、3 で Zookeeper をダウングレードします。
> yum down apigee-zookeeper - マシン 1、2、3 の Cassandra と ZooKeeper を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - マシン 6 で次の iptables ルールを設定します。
> sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP - マシン 6 の Qpid メッセージ キューを確認します。
> qpid-stat -q
[msg] 列の数が 0 になるまでキューをチェックし続けます。すべてのメッセージの処理が完了するまで Qpid をアップグレードできません。 - マシン 6 の qpidd を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - マシン 6 で iptables をフラッシュします。
> sudo iptables -F - マシン 7 で手順 5 ~ 8 を繰り返します。
- マシン 1 の LDAP を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - マシン 6、7、1、4、5 の順に Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - マシン 1 の UI を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - マシン 8、9 を更新します。
- マシン 8 で Postgres サーバーを停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop - マシン 9 の Postgres Server と postgresql を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - マシン 6 と 7 で Qpid Server を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop - ロールバック用に追加した新しいスタンバイ ノードで Postgres Server と postgresql を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - マシン 8 の postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - マシン 8 の Postgres データベースを更新します(Postgres マスターのみ)。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - マシン 9 の postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - マシン 8 と 9 で Postgres サーバー サーバーを起動します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start - マシン 6 と 7 で Qpid Server を起動します。
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start - マシン 9 で次のコマンドを実行して、スタンバイ ノードとして Postgres を構成します。
> cd /opt/apigee/data/apigee-postgresql/pgdata
> rm -rf *
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile - 両方のサーバーで次のスクリプトを発行して、レプリケーションのステータスを確認します。両方のサーバーで同じ結果が表示され、レプリケーションが成功していることを確認します。
マシン 8 のマスターノードで、次のコマンドを実行します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
マスターと表示されることを確認します。
マシン 9(スタンバイ ノード)で、次のコマンドを実行します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
スタンバイであることを確認します。
- マシン 8 で Postgres サーバーを停止します。
- マシン 8 と 9 の Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - Postgres ノードを廃止するの手順に沿って、新しいスタンバイ ノードの使用を停止します。
13 ホストのクラスタ化インストールの場合
Edge トポロジとノード番号のリストについては、インストール トポロジをご覧ください。
- Edge で SMTP を有効にしている場合は、構成ファイルで SMTPMAILFROM を設定します。このパラメータの形式は次のとおりです。
SMTPMailFROM="My Company <myco@company.com>" - 上記のPostgres スタンバイ ノードを新たにインストールするの手順に沿って、新しい Postgres スタンバイ ノードをインストールします。
- 4.16.01 から更新する場合は、マシン 1、2、3 で Zookeeper をダウングレードします。
> yum downgrade apigee-zookeeper - マシン 1、2、3 の Cassandra と ZooKeeper を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - マシン 12 で次の iptables ルールを設定します。
> sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP - マシン 12 の Qpid メッセージ キューを確認します。
> qpid-stat -q
[msg] 列の数が 0 になるまでキューをチェックし続けます。すべてのメッセージが処理されるまで、Qpid をアップグレードすることはできません。 - マシン 12 の qpidd を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - マシン 12 で iptables をフラッシュします。
> sudo iptables -F - マシン 13 で手順 5 ~ 8 を繰り返します。
- マシン 4、5 の LDAP を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - マシン 12、13、6、7、10、11 の順に Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - マシン 6 と 7 の UI を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - マシン 8、9 を更新します。
- マシン 8 で Postgres サーバーを停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop - マシン 9 の Postgres Server と postgresql を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - マシン 12 と 13 で Qpid Server を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop - ロールバック用に追加した新しいスタンバイ ノードで Postgres Server と postgresql を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - マシン 8 の postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - マシン 8 の Postgres データベースを更新します(Postgres マスターのみ)。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - マシン 9 の postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - マシン 8、9 で Postgres Server を起動します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start - マシン 12 と 13 で Qpid Server を起動します。
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start - マシン 9 で次のコマンドを実行して、スタンバイ ノードとして Postgres を構成します。
> cd /opt/apigee/data/apigee-postgresql/pgdata
> rm -rf *
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile - 両方のサーバーで次のスクリプトを発行して、レプリケーションのステータスを確認します。両方のサーバーで同じ結果が表示され、レプリケーションが成功していることを確認します。
マシン 8 のマスターノードで、次のコマンドを実行します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
マスターと表示されることを確認します。
マシン 9(スタンバイ ノード)で、次のコマンドを実行します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
スタンバイであることを確認します。
- マシン 8 で Postgres サーバーを停止します。
- マシン 8 と 9 の Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - Postgres ノードを廃止するの手順に沿って、新しいスタンバイ ノードの使用を停止します。
12 ホストクラスタ構成の場合
Edge のトポロジとノード番号の一覧については、インストール トポロジをご覧ください。
- Edge で SMTP を有効にしている場合は、構成ファイルで SMTPMAILFROM を設定します。このパラメータの形式は次のとおりです。
SMTPMailFROM="My Company <myco@company.com>" - 上記のPostgres スタンバイ ノードを新たにインストールするの手順に沿って、新しい Postgres スタンバイ ノードをインストールします。
- Cassandra と ZooKeeper を更新します。
- 4.16.01 から更新する場合は、データセンター 1 のマシン 1、2、3 で Zookeeper をダウングレードします。
> yum downgrade apigee-zookeeper - データセンター 1 のマシン 1、2、3 で、次のコマンドを実行します。
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - 4.16.01 から更新する場合は、データセンター 2 の 7、8、9 の各マシンで Zookeeper をダウングレードします。
> yum downgrade apigee-zookeeper - データセンター 2 のマシン 7、8、9 の場合
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- 4.16.01 から更新する場合は、データセンター 1 のマシン 1、2、3 で Zookeeper をダウングレードします。
- qpidd を更新します。
- データセンター 1 のマシン 4、5 で、次の手順を実施します。
- マシン 4 に次の iptables ルールを設定します。
> sudo iptables -A INPUT -p tcp --destination-port 5672 !-s `hostname` -i eth0 -j DROP - マシン 4 の Qpid メッセージ キューを確認します。
> qpid-stat -q
[msg] 列の数が 0 になるまでキューをチェックし続けます。すべてのメッセージが処理されるまで、Qpid をアップグレードすることはできません。 - マシン 4 の qpidd を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - マシン 4 で iptables をフラッシュします。
> sudo iptables -F - マシン 5 で手順 1 ~ 4 を繰り返します。
- マシン 4 に次の iptables ルールを設定します。
- データセンター 2 のマシン 10、11 で、次の手順を実施します。
- マシン 10 に次の iptables ルールを設定します。
> sudo iptables -A INPUT -p tcp --destination-port 5672 !-s `hostname` -i eth0 -j DROP - マシン 10 の Qpid メッセージ キューを確認します。
> qpid-stat -q
「msg」列のカウントが 0 になるまでキューをチェックし続けます。すべてのメッセージの処理が完了するまで Qpid をアップグレードできません。 - マシン 10 の qpidd を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - マシン 10 の iptables をフラッシュします。
> sudo iptables -F - マシン 11 で手順 1 ~ 4 を繰り返します。
- マシン 10 に次の iptables ルールを設定します。
- データセンター 1 のマシン 4、5 で、次の手順を実施します。
- LDAP を更新します。
- データセンター 1 のマシン 1
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - データセンター 2 のマシン 7
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- データセンター 1 のマシン 1
- Edge コンポーネントを更新します。
- データセンター 1 のマシン 4、5、1、2、3
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - データセンター 2 のマシン 10、11、7、8、9
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- データセンター 1 のマシン 4、5、1、2、3
- UI を更新します。
- データセンター 1 のマシン 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - データセンター 2 のマシン 7:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
- データセンター 1 のマシン 1:
- データセンター 1 のマシン 6 とデータセンター 2 のマシン 12 を更新します。
- マシン 6 の Postgres サーバーを停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop - マシン 12 で Postgres Server と postgresql を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresqlstop - マシン 4、5、10、11 で Qpid Server を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop - ロールバック用に追加した新しいスタンバイ ノードで Postgres Server と postgresql を停止します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - マシン 6 の postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - マシン 6 の Postgres データベースを更新します(Postgres マスターのみ)。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - マシン 12 の postgresql を更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - マシン 6、12 の Postgres Server を起動します。
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start - マシン 4、5、10、11 で Qpid Server Server を起動します。
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start - マシン 12 で次のコマンドを実行して、Postgres をスタンバイ ノードとして構成します。
> cd /opt/apigee/data/apigee-postgresql/pgdata
> rm -rf *
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile - 両方のサーバーで、次のスクリプトを実行してレプリケーション ステータスを確認します。両方のサーバーで同じ結果が表示されれば、レプリケーションは成功しています。
マシン 6(マスターノード)で、次のコマンドを実行します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
マスターであることを確認します。
マシン 12(スタンバイ ノード)で、次のコマンドを実行します。
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
スタンバイであることを確認します。
- マシン 6 の Postgres サーバーを停止します。
- マシン 6、12 の Edge コンポーネントを更新します。
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - Postgres ノードを廃止するの手順に沿って、新しいスタンバイ ノードの使用を停止します。
7 ホストまたは 10 ホストの API BaaS インストールの場合
標準インストール以外の場合
標準インストール以外の場合は、次の順に Edge コンポーネントを更新します。
- ZooKeeper
- Cassandra
- qpidd
- LDAP
- Edge(すべてのノードの「-c edge」プロファイルを意味します)。順序は Qpid Server ノード(Postgres Server ノードは除く)、Management Server ノード、Message Processor ノード、Router ノードの順です。
注: ノードに Qpid Server と Postgres Server の両方がインストールされている場合は、ステップ 8 の一部として「-c edge」プロファイルの手順を実行します。 - Edge UI
- Postgres マスターの postgresql(アップグレードを含む)。
- Postgres スタンバイの postgresql。
- Edge(すべての Qpid ノードと Postgres ノードの組み合わせ、または任意のスタンドアロン Postgres ノードで「-c edge」プロファイルを指定することを意味します)。