第8章 3scale の Redis 高可用性 (HA) サポート

OpenShift Container Platform (OCP) によって、高可用性 (HA) はほとんどのコンポーネントで実現できます。詳細は、OpenShift Container Platform 3.11 30.章、高可用性 を参照してください。

注記

本セクションの情報と手順は、Red Hat が公式にサポートしているものではありません。参照用途としてのみ提供されています。

Red Hat 3scale API Management の HA 用データベースコンポーネントは、以下のとおりです。* backend-redis: 統計ストレージおよび一時ジョブストレージに使用されます。* system-redis: 3scale のバックグラウンドジョブの一時ストレージを提供し、system-app Pod の Ruby プロセスのメッセージバスとしても使用されます。

backend-redissystem-redis は、どちらもサポートされる Redis Sentinel および Redis Enterprise 用 Redis 高可用性バリアントと共に動作します。

Redis Pod が停止した場合や、OpenShift Container Platform によって停止された場合には、新しい Pod が自動作成されます。データは永続ストレージから復元されるので、Pod は動作し続けます。このような場合、新しい Pod が起動するまでの間、短いダウンタイムが発生します。これは、Redis がマルチマスター設定をサポートしないという制限によるものです。Redis をデプロイしたすべてのノードに Redis イメージを事前にインストールすることで、ダウンタイムを削減することができます。これにより、Pod の再起動にかかる時間が短縮されます。

ゼロダウンタイムとなるよう Redis を設定し、3scale のバックエンドコンポーネントを設定するには、以下のセクションに概略を示す手順を実施します。

8.1. ゼロダウンタイムのための Redis 設定

ゼロダウンタイムを実現する必要がある場合は、Redis を OCP 外部に設定する必要があります。3scale Pod の設定オプションを使用して設定する方法は複数あります。

  • 独自の自己管理型 Redis を設定する
  • Redis Sentinel を使用する (Redis Sentinel Documentation を参照)
  • サービスとして提供される Redis:

    例:

    • Amazon ElastiCache
    • Redis Labs
注記

Red Hat は上記のサービスにサポートを提供しません。このようなサービスの言及は、Red Hat による製品やサービスの推奨を意味するものではありません。Red Hat は、Red Hat 外部のコンテンツを使用 (または依存) して発生した損失や費用の責任を負いません。