Apigee Edge 4.52.01 をロールバックする

Edge 4.52.01 への更新中にエラーが発生した場合は、 コンポーネントを確認してから、再度アップデートを試みてください。

Edge 4.52.01 は、次のメジャー リリース バージョンにロールバックできます。

  • バージョン 4.52.00
  • バージョン 4.51.00
で確認できます。

ロールバックを実行するシナリオは 2 つあります。

  1. 以前のメジャー リリースまたはマイナー リリースにロールバックする。たとえば、4.52.01 から 4.52.00 へのロールバックです。
  2. 同じリリースの前の修正プログラム リリースにロールバックする。たとえば、4.52.00.02 から 4.52.00.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 つのコンポーネントのすべてをロールバックする必要があります。

以前のメジャー リリースまたはマイナー リリースにロールバックする

以前のメジャー リリースまたはマイナー リリースにロールバックするには、 component:

  1. ロールバック先のバージョンの bootstrap.sh ファイルをダウンロードします。

    • 4.51.00 にロールバックするには、bootstrap_4.51.00.sh をダウンロードします。
      curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh 
  2. ロールバックするコンポーネントを停止します。
    1. ノード上の共通のコードを使用するコンポーネントをロールバックする場合は、次の例に示すように、それらすべてのコンポーネントを停止する必要があります。
      /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
    2. ノード上のその他のコンポーネントをロールバックするには、そのコンポーネントのみを停止します。 <ph type="x-smartling-placeholder">
        </ph>
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Monetization をロールバックする場合は、すべての Management Server および Message プロセッサ ノード:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. ロールバックするコンポーネントをノードでアンインストールします。
    1. プロジェクトの共通のコードを使用するコンポーネントをロールバック edge-gateway コンポーネントをアンインストールして、すべてのコンポーネントをアンインストールする必要があります。 次の例をご覧ください。
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. ノード上のそれ以外のコンポーネントをロールバックする場合は、そのコンポーネントのみをアンインストールします。次の例をご覧ください。
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      ここで、component はコンポーネント名です。

    3. Edge Router をロールバックする場合、edge-gateway コンポーネント グループをアンインストールするだけでなく、/opt/nginx/conf.d ファイルの内容を削除する必要もあります。
      cd /opt/nginx/conf.d
      rm -rf *
  5. バージョン 4.52.01 の apigee-setup をアンインストールします。
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. バージョン 4.51.00 の apigee-service をインストールします。 その依存関係について説明します。次の例では、4.51.00 バージョンの apigee-service:
    sudo bash /tmp/bootstrap_4.51.00.sh apigeeuser=uName apigeepassword=pWord

    uNamepWord は、取得したユーザー名とパスワードです。 Apigee からデプロイできます。pWord を省略すると、入力を求められます。

    エラーが発生した場合は、手順 1 で bootstrap.sh ファイルをダウンロードしたことを確認してください。

  7. apigee-setup をインストールします。
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  8. 古いバージョンのコンポーネントをインストールします。
    /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

    ここで、component はインストールするコンポーネント、configFile は 構成ファイルが更新されます。

  9. Qpid をロールバックしている場合は、iptables を消去します。
    sudo iptables -F
  10. ロールバックするコンポーネントをホストするノードごとに、この手順を繰り返します。

以前のパッチリリースにロールバックする

コンポーネントを特定のパッチリリースにロールバックするには、各ノードで次の操作を行います。 コンポーネントをホストします。

  1. 特定のコンポーネント バージョンをダウンロードします。
    /opt/apigee/apigee-service/bin/apigee-service component_version install

    ここで、component_version はインストールするコンポーネントとパッチリリースです。例:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.51.05-0.0.3749 install

    Apigee オンライン リポジトリを使用している場合、次のコマンドを使用して、コンポーネントの利用可能なバージョンを確認できます。

    yum --showduplicates list comp

    例:

    yum --showduplicates list edge-ui
  2. apigee-setup を使用してコンポーネントをインストールします。
    /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

    例:

    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

    インストール時に指定するのは、バージョンではなく、コンポーネント名のみです。

  3. ロールバックするコンポーネントをホストするノードごとに、この手順を繰り返します。

Postgres 10.17 の更新をロールバックする

バージョン 4.50.00 または 4.51.00 から 4.52.01 にアップグレードした場合、 Edge コンポーネントに加えて Postgres が更新されます。

マスター / スタンバイ構成で Postgres を更新するときに、Postgres の更新をロールバックするには:

  • 新しいスタンバイ ノードを Postgres マスターに昇格させます。新しい Postgres マスターは 前の Edge インストール環境と同じバージョンにする必要があります。
  • 古いスタンバイ ノードを新しいマスターのスタンバイ ノードとして構成します。旧スタンバイ ノード 以前の Edge インストールと同じバージョンになります。
  • 新しいマスターノードとスタンバイ ノードを、分析グループとコンシューマ グループに登録します。

ロールバックが完了したら、古いマスターノードは必要なくなります。Google Chat では 古いマスターノードを廃止します

  1. 新しいスタンバイ Postgres ノードが実行されていることを確認します。
    /opt/apigee/apigee-service/bin/apigee-all status

    Postgres が実行されていない場合は、起動します。

    /opt/apigee/apigee-service/bin/apigee-all start
  2. 旧マスターノードと旧スタンバイ ノードで 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

  3. Qpid がインストールされている場合は、古いスタンバイ ノードで Qpid を起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
  4. 新しいスタンバイ ノードを Postgres マスターに昇格させます。
    1. 新しいスタンバイ ノードを新しいマスターに昇格させます。
      apigee-service apigee-postgresql promote-standby-to-master new_standby_IP

      プロンプトが表示されたら、「apigee」の Postgres パスワードを入力します。ユーザーであり、デフォルトで 「postgres」です。

    2. 現在のバージョンの Edge のインストールに使用した構成ファイルを編集して、 次のとおりです。
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    3. 新しいマスターを構成します。
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  5. 古いスタンバイ ノードを新しいバージョンにアップグレードしている場合は、まず古いスタンバイ ノードの Apigee ソフトウェアをダウングレードする必要があります。古いスタンバイノードに古いバージョンがまだある場合は、この手順をスキップしてステップ 6 に進みます。
    1. 古いスタンバイ ノードで Postgres を停止します。
      apigee-service apigee-postgresql stop
      apigee-service edge-postgres-server stop
    2. 古いスタンバイ ノードから Postgres をアンインストールします。
      apigee-service apigee-postgresql uninstall
      apigee-service edge-postgres-server uninstall
    3. 古いスタンバイ ノードから Postgres データ ディレクトリを削除します。
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    4. 古いスタンバイノードで、古いバージョンのブートストラップ(ロールバック先の Apigee バージョン用)をダウンロードして実行します。正確な手順は、 オフラインでも設置できます。古いバージョンの Apigee ブートストラップを実行すると、 古いバージョンの Apigee データを使用して yum リポジトリを設定する。
    5. 古いスタンバイ ノードで Postgres コンポーネントを設定します。
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
    6. 古いスタンバイ ノード上の Postgres コンポーネントを確認して検証する 古いバージョンにロールバックされています。
      apigee-service apigee-postgresql version
      apigee-service edge-postgres-server version
  6. 古いスタンバイ ノードを再ビルドします。
    1. 現在のバージョンの Edge をインストールする際に使用した構成ファイルを編集し、次の内容を指定します。
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    2. 古いスタンバイ ノードのデータ ディレクトリを削除します。
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    3. 古いスタンバイ ノードを再構成して、新しいマスターのスタンバイ ノードにします。
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    4. Postgres が古いスタンバイ ノードで実行されていることを確認します。
      /opt/apigee/apigee-service/bin/apigee-all status

      Postgres が実行されていない場合は、起動します。

      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
  7. 新しいスタンバイ ノードが追加されたことを確認するには、 新しいマスターの /opt/apigee/apigee-postgresql/conf/pg_hba.conf ファイル。
  8. 次のコマンドを実行して、現在の分析グループとコンシューマ グループの情報を表示します。 Management Server で次のように設定します。
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    このコマンドは、name フィールドに分析グループ名を返し、 consumer-groupsname フィールドにコンシューマ グループ名を指定します。また、旧 Postgres マスターノードと旧 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" : {
      }
    }

  9. 次の curl コマンドを実行して、旧マスターの UUID アドレスを取得します。 旧マスターノードを指定します。
    curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    出力の最後に、次の形式でノードの UUID が表示されます。

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  10. 前の手順を繰り返して、古いスタンバイ ノードと新しいスタンバイ ノードの IP アドレスを取得します。 あります。
  11. 古いマスターノードとスタンバイ ノードをコンシューマ グループから削除します。
    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-001consumer-group-001 は コンシューマグループなどがあります「masterUUID,standbyUUID」の順序が「同じ」です は、現在の分析グループとコンシューマ グループの情報を表示したときに上に表示されています。マイページ standbyUUID,masterUUID として指定する必要がある場合があります。

    consumer-groupsdatastores プロパティは次のようになります。 空です。

  12. 旧マスターノードと旧スタンバイ ノードを分析グループから削除します。
    curl -u sysAdminEmail:password -X DELETE \
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v

    uuidspostgres-server プロパティが空になっているはずです。

  13. 新しい 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
  14. 分析グループを検証します。
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    新しいマスターノードとスタンバイ ノードの UUID が分析グループに表示されます。 2 つのグループがあります

  15. Edge Management Server を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  16. すべての Qpid サーバーを再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
  17. すべての Postgres サーバーを再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  18. 両方のサーバーで次のスクリプトを発行して、レプリケーションのステータスを確認します。システム 両方のサーバーで同じ結果が表示され、レプリケーションが成功していることを確認します。

    新しいマスターで、次のコマンドを実行します。

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    マスターであることを確認します。旧スタンバイ ノードで次の操作を行います。

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    スタンバイであることを確認します。

  19. 複数の API リクエストを発行した後、前の手順を繰り返し、ノードが 同期できます。
  20. Postgres ノードの廃止の手順に沿って、旧 Postgres マスターを廃止します。

    または、旧マスターから Qpid をアンインストールし、 新しいマスターノードに Qpid をインストールします。Qpid をアンインストールした後、 古いマスターノードです。

mTLS をロールバックする

mTLS の更新をロールバックするには、すべてのホストで次の操作を行います。

  1. Apigee を停止します。
    apigee-all stop
  2. mTLS を停止します。
    apigee-service apigee-mtls uninstall
  3. mTLS を再インストールします。
    apigee-service apigee-mtls install
    apigee-service apigee-mtls setup -f /opt/silent.conf