Red Hat 3scale API Management の移行


Red Hat 3scale API Management 2.14

3scale API Management およびそのコンポーネントの移行またはアップグレード

Red Hat Customer Content Services

概要

3scale Operator を使用して Red Hat 3scale API Management を最新バージョンにアップグレードする方法と、Operator ベースのデプロイメントで APIcast をアップグレードする方法に関する情報を提供します。

はじめに

このガイドでは、3scale Operator を介して Red Hat 3scale API Management を最新バージョンにアップグレードするための情報を提供します。3scale インストールを 2.13 から 2.14 にアップグレードするために必要な詳細と、Operator ベースのデプロイメントで APIcast をアップグレードする手順が記載されています。

3scale オンプレミスデプロイメントを 2.13 から 2.14 にアップグレードするには、次のガイドを参照してください。

Operator ベースのデプロイメントで APIcast をアップグレードするには、以下のガイドを参照してください。

Red Hat ドキュメントへのフィードバック (英語のみ)

Red Hat ドキュメントに関するご意見やご感想をお寄せください。

改善を提案するには、Jira 課題を作成し、変更案を説明してください。ご要望に迅速に対応できるよう、できるだけ詳細にご記入ください。

前提条件

  • Red Hat カスタマーポータルのアカウントがある。このアカウントを使用すると、Red Hat Jira Software インスタンスにログインできます。アカウントをお持ちでない場合は、アカウントを作成するように求められます。

手順

  1. Create issue にアクセスします。
  2. Summary テキストボックスに、問題の簡単な説明を入力します。
  3. Description テキストボックスに、次の情報を入力します。

    • 問題が見つかったページの URL。
    • 問題の詳細情報。
      他のフィールドの情報はデフォルト値のままにすることができます。
  4. Create をクリックして、Jira 課題をドキュメントチームに送信します。

フィードバックをご提供いただきありがとうございました。

第1章 3scale API Management Operator ベースのアップグレードガイド: 2.13 から 2.14

警告

場合によっては、3scale API Management の 2.13 から 2.14 へのアップグレードが完了しないことがあります。これを防ぐには、アップグレードを試行する前に、 Red Hat カスタマーポータルの ソリューション でテストされ承認された手順に従ってください。解決策には、問題発生の根本原因と状況に関する詳細情報が含まれています。

operator ベースのインストールで Red Hat 3scale API Management をバージョン 2.13 から 2.14 にアップグレードして、OpenShift 4.x で 3scale を管理できるようにします。

3scale のマイクロリリースを自動的に取得するには、自動更新が有効であることを確認してください。Oracle 外部データベースを使用している場合は、自動更新を設定しないでください。これを確認するには、マイクロリリースの自動アプリケーションの設定 を参照してください。

重要

必要な条件および手順を理解するために、記載の手順を適用する前に、アップグレードガイド全体を読んでください。アップグレードプロセスの手順が完了するまで、サービスの提供が中断されます。このサービス中断が生じるため、メンテナンス期間を設けるようにしてください。

1.1. アップグレードを行うための前提条件

重要

3scale Operator で証明書の検証の失敗を解決するには、影響を受けるカスタムリソース (CR) に 証明書の検証をスキップ するアノテーションを追加します。このアノテーションは、作成時に CR に適用するか、または既存の CR に追加できます。適用すると、エラーが調整されます。

このセクションでは、operator ベースのインストール環境において、3scale を 2.13 から 2.14 にアップグレードするのに必要な設定を説明します。

  • OpenShift Container Platform (OCP) 4.12、4.13、または 4.14 クラスターおよびその管理者アクセスOCP 環境がバージョン 4.12 以上にアップグレードされていることを確認します。これは、3scale の更新を続行するための最小要件です。
  • 3scale operator によりデプロイされている 3scale 2.13
  • OpenShift に 3scale 2.14 をインストールするための システム要件 で説明されているように、Redis、MySQL、および System-searchd の永続性用に 4 つの RWO (ReadWriteOnce)永続ボリューム。
  • System-searchd Persistent Volume Claim (PVC)要件の永続ボリューム(PV)を提供するデフォルトの StorageClass。
  • threescale-2.13 チャネルの最新 CSV が使用されていることを確認します。この点を確認するには、以下を行います。

    • サブスクリプションの承認設定が automatic の場合は、すでにチャネルの最新 CSV バージョンになっているはずです。
    • サブスクリプションの承認設定が manual の場合、保留中のすべての InstallPlans を承認し、最新の CSV バージョンになっていることを確認してください。
    • 保留中のインストールプランがある場合、さらに保留中のインストールプランがある可能性があり、既存の保留中のプランがインストールされた後にのみ表示されることに注意してください。

1.2. operator ベースのインストール環境における 2.13 から 2.14 へのアップグレード

operator ベースのデプロイメントにおいて、3scale をバージョン 2.13 から 2.14 にアップグレードするには、以下の手順を実施します。

  1. 管理者権限を持つアカウントを使用して OCP コンソールにログインします。
  2. 3scale-operator がデプロイされているプロジェクトを選択します。
  3. Operators > Installed Operators の順にクリックします。
  4. Red Hat Integration - 3scale > Subscription > Channel の順に選択します。
  5. threescale-2.14 を選択してサブスクリプションのチャンネルを編集し、変更を保存します。

    これによりアップグレードプロセスが開始されます。

  6. すべての新しいバージョンが実行され、エラーなく準備ができていることを確認するまで、プロジェクトで Pod の状態を照会します。

    Copy to Clipboard Toggle word wrap
    $ oc get pods -n <3scale_namespace>
    注記
    • Pod ではアップグレードプロセス中、一時的にエラーが発生する場合があります。
    • Pod のアップグレードに必要な時間は、5~10 分程度です。
  7. 新しい Pod のバージョンの実行後に、3scale Admin Portal にログインして、想定どおりに動作することをチェックし、アップグレードが正常に行われたことを確認します。
  8. 以下のコマンドを実行して、APIManager オブジェクトのステータスを確認し、YAML コンテンツを取得します。<myapimanager> は、APIManager の名前を表します。

    Copy to Clipboard Toggle word wrap
    $ oc get apimanager <myapimanager> -n <3scale_namespace> -o yaml
    • 新しいアノテーションおよび値は以下のようになります。

      Copy to Clipboard Toggle word wrap
      apps.3scale.net/apimanager-threescale-version: "2.14"
      apps.3scale.net/threescale-operator-version: "0.11.x"

上記の手順をすべて実行すると、Operator ベースのデプロイメントにおける 3scale 2.13 から 2.14 へのアップグレードが完了します。

1.3. 外部の Oracle データベースを使用した operator ベースのインストールにおける 2.13 から 2.14 へのアップグレード

以下の手順に従って、外部の Oracle データベースを使用して 3scale operator ベースのインストールを更新します。

手順

  1. Red Hat 3scale API Management のインストールガイド の手順に従って、新しい system-oracle-3scale-2.14.0-1 イメージを作成します。
  2. operator ベースのインストール環境における 2.13 から 2.14 へのアップグレードの手順に従って、3scale operator をアップグレードします。
  3. アップグレードが完了したら、Operator を使用した Oracle での 3scale API Management のインストール で説明されているように、この手順の最初のステップで作成した新しいイメージで APIManager カスタムリソースを更新します。

第2章 operator ベースの APIcast のアップグレードガイド: 2.13 から 2.14 へ

オペレータベースのインストールで APIcast を 2.13 から 2.14 にアップグレードすると、APIcast API ゲートウェイを使用して、内部および外部のアプリケーションプログラミングインターフェイス (API) サービスを 3scale と統合できます。

重要

必要な条件および手順を理解するために、記載の手順を適用する前に、アップグレードガイド全体を読んでください。アップグレードプロセスの手順が完了するまで、サービスの提供が中断されます。このサービス中断が生じるため、メンテナンス期間を設けるようにしてください。

2.1. アップグレードを行うための前提条件

operator ベースのインストールで APIcast を 2.13 から 2.14 にアップグレードするには、以下の前提条件を満たしている必要があります。

  • OpenShift Container Platform (OCP) 4.12、4.13、または 4.14 クラスターおよびその管理者アクセスOCP 環境がバージョン 4.12 以上にアップグレードされていることを確認します。これは、APIcast の更新を続行するための最小要件です。
  • APIcast operator によりデプロイされている APIcast 2.13
  • threescale-2.13 チャネルの最新 CSV が使用されていることを確認します。この点を確認するには、以下を行います。

    • サブスクリプションの承認設定が automatic の場合は、すでにチャネルの最新 CSV バージョンになっているはずです。
    • サブスクリプションの承認設定が manual の場合、保留中のすべての InstallPlans を承認し、最新の CSV バージョンになっていることを確認してください。
    • 保留中のインストールプランがある場合、さらに保留中のインストールプランがある可能性があり、既存の保留中のプランがインストールされた後にのみ表示されることに注意してください。

2.2. operator ベースのインストール環境における APIcast 2.13 から 2.14 へのアップグレード

operator ベースのインストールで、APIcast を 2.13 から 2.14 にアップグレードし、APIcast が 3scale のインストールで API ゲートウェイとして機能するようにします。

手順

  1. 管理者権限を持つアカウントを使用して OCP コンソールにログインします。
  2. APIcast operator がデプロイされているプロジェクトを選択します。
  3. Operators > Installed Operators の順にクリックします。
  4. Subscription > Channel の順に移動し、Red Hat Integration - 3scale APIcast gateway を選択します。
  5. threescale-2.14 チャンネルを選択してサブスクリプションのチャンネルを編集し、変更を保存します。

    これによりアップグレードプロセスが開始されます。

  6. すべての新しいバージョンが実行され、エラーなく準備ができていることを確認するまで、プロジェクトで Pod の状態を照会します。

    Copy to Clipboard Toggle word wrap
    $ oc get pods -n <apicast_namespace>
    注記
    • Pod ではアップグレードプロセス中、一時的にエラーが発生する場合があります。
    • Pod のアップグレードに必要な時間は、5~10 分程度です。
  7. APIcast オブジェクトのステータスを確認し、以下のコマンドを実行して YAML のコンテンツを取得します。

    Copy to Clipboard Toggle word wrap
    $ oc get apicast <myapicast> -n <apicast_namespace> -o yaml

上記の手順をすべて実行すると、Operator ベースのデプロイメントにおける APIcast 2.13 から 2.14 へのアップグレードが完了します。

第3章 組み込み PostgreSQL 10 データベースから外部 PostgreSQL 10 データベースへの移行

重要
  • system.appSpec.replicas1 にスケーリングする前に、データベースをサポートされているバージョン (現在 PostgreSQL 13) にアップグレードする必要があります。Red Hat 3scale API Management のサポート対象設定 を参照してください。
  • このドキュメントは、組み込み PostgreSQL 10 データベースから外部 PostgreSQL 10 データベースへの移行を説明します。外部 PostgreSQL 10 データベースから外部 PostgreSQL 13 データベースにアップグレードするには、PostgreSQL の公式ドキュメント に従う必要があります。
  • 免責事項: ここに記載されている外部 Web サイトへのリンクは、お客様の利便性のみを目的として提供されています。Red Hat はリンクの内容を確認しておらず、コンテンツまたは可用性に責任を負わないものとします。外部 Web サイトへのリンクが含まれていても、Red Hat が Web サイトまたはその組織、製品、もしくはサービスを保証することを意味するものではありません。お客様は、外部サイトまたはコンテンツの使用 (または信頼) によって生じる損失または費用について、Red Hat が責任を負わないことに同意するものとします。

組み込み PostgreSQL データベースから外部 PostgreSQL データベースに移行するプロセスは、同じ DB バージョンで実行する必要があります。この移行ガイドは、PostgreSQL 10 である必要があります。運用環境には外部データベースを使用する必要があります。

system-database として PostgreSQL を使用している場合は、3scale での 外部データベースのインストール にサポートされているバージョンを使用してください。

重要
  • これらの手順は一般的なガイドラインです。正確な手順は、オペレーティングシステム、PostgreSQL のバージョン、データベースの特定要件によって異なる場合があります。
  • アップグレードする前に、PostgreSQL のドキュメント とリリースノートをよく読んでください。
  • この手順を実稼働環境に適用する前に、非実稼働環境でテストしてください。
  • このプロセスの手順が完了するまで、サービスの提供が中断されます。このサービス中断が生じるため、メンテナンス期間を設けるようにしてください。

手順

  1. APIManager カスタマーリソース (CR) を使用して、system-app の DeploymentConfig (DC) をスケールダウンします。

    Copy to Clipboard Toggle word wrap
    apiVersion: apps.3scale.net/v1alpha1
    kind: APIManager
    metadata:
      name: <apimanager_sample>
    spec:
      system:
        appSpec:
          replicas: 0
      wildcardDomain: <example.com>
  2. Pod がスケールダウンされていることを確認します。

    Copy to Clipboard Toggle word wrap
    $ oc get deploymentconfig system-app -o jsonpath='{.status.availableReplicas}{"\n"}'
    0
    1. PostgreSQL の移行を続行する前に、すべての 3scale Pod のステータスが Terminated になるまで待ちます。
  3. すべてのデータ、設定、ユーザーアカウントを含む既存の PostgreSQL データベースのバックアップを作成します。

    Copy to Clipboard Toggle word wrap
    $ DB_USER=$(oc get secret system-database -o jsonpath="{.data.DB_USER}" | base64 --decode)
    $ DATABASE_NAME=$(oc get secret system-database -o jsonpath="{.data.URL}" | base64 --decode | cut -d '/' -f4)
    重要

    stdout にパイプしないでください。バイナリーファイルが破損します。

  4. カスタム形式でダンプします。

    Copy to Clipboard Toggle word wrap
    $ oc rsh $(oc get pods -l 'deploymentConfig=system-postgresql' -o json | jq -r '.items[0].metadata.name') bash -c "pg_dump -U $DB_USER -F c $DATABASE_NAME -f /tmp/<backupfilename>.backup"
  5. バックアップをダウンロードします。

    Copy to Clipboard Toggle word wrap
    $ oc cp $(oc get pods -l 'deploymentConfig=system-postgresql' -o json | jq -r '.items[0].metadata.name'):/tmp/<backupfilename>.backup <backupfilename>.backup
  6. 3scale にデプロイしたのと同じバージョンの PostgreSQL 10 をターゲットの外部システムにインストールします。インストール手順に従って、PostgreSQL Web サイトからインストールパッケージをダウンロードします。
  7. 既存の PostgreSQL データベースで作成したバックアップ (すべてのデータ、設定、ユーザーアカウントを含む) をターゲットの外部システムにコピーして復元します。
  8. PostgreSQL で新しいデータベースを作成します。

    Copy to Clipboard Toggle word wrap
    $ createdb -U <username> <databasename>
  9. バックアップファイルから新しい PostgreSQL データベースにデータをインポートします。

    • カスタム形式で復元します。

      Copy to Clipboard Toggle word wrap
      $ pg_restore [--host <databasehostname>] -U <username> -d <databasename> --verbose -F c <backupfilename>.backup
  10. データベースに接続してクエリーを実行し、データが新しい PostgreSQL データベースに正常にインポートされたことを確認します。

    Copy to Clipboard Toggle word wrap
    postgresql://<username>:<password>@<databasehostname>/<databasename>
  11. system-database シークレットを更新します。

    Copy to Clipboard Toggle word wrap
    $ oc apply -f - <<EOF
    ---
    apiVersion: v1
    kind: Secret
    metadata:
      name: system-database
    stringData:
      DB_PASSWORD: <password>
      DB_USER: <username>
      URL: "postgresql://<username>:<password>@<databasehostname>:<databaseport>/<databasename>"
    type: Opaque
    EOF
  12. APImanager CR を更新して外部データベースを有効にし、システムをスケールアップします。

    Copy to Clipboard Toggle word wrap
    $ oc patch apimanager <apimanager_sample> --type=merge --patch '{"spec": {"system": {"database": null, "appSpec": {"replicas": 1}}, "externalComponents": {"system": {"database": true}}}}'
  13. ローカルの postgresql デプロイメントを削除します。

    Copy to Clipboard Toggle word wrap
    $ oc delete service system-postgresql
    $ oc delete deploymentconfig system-postgresql
    $ oc delete pvc postgresql-data
  14. Pod がスケールアップされていることを確認します。

    Copy to Clipboard Toggle word wrap
    $ oc wait --for=condition=available apimanager/<apimanager_sample> --timeout=-1s

法律上の通知

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.