第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-redis
と system-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 外部のコンテンツを使用 (または依存) して発生した損失や費用の責任を負いません。