4.2. 3scale 用バックエンドコンポーネントの設定


3scale 管理者は、backend-cronbackend-listener、および backend-worker のデプロイメント設定で、back-end コンポーネントの環境変数に Redis HA (フェイルオーバー) を設定します。3scale の Redis HA には、これらの設定が必要です。

注記

Redis と Sentinel を使用するには、backend-redisあるいはsystem-redis、またはその両方のシークレットに Sentinel 設定を指定する必要があります。

4.2.1. backend-redissystem-redis シークレットの作成

以下の手順に従い、適宜 backend-redis および system-redis シークレットを作成します。

4.2.2. HA 用 3scale の新規インストールのデプロイ

手順

  1. 以下のフィールドを指定して、backend-redis および system-redis シークレットを作成します。

    backend-redis

    REDIS_QUEUES_SENTINEL_HOSTS
    REDIS_QUEUES_SENTINEL_ROLE
    REDIS_QUEUES_URL
    REDIS_STORAGE_SENTINEL_HOSTS
    REDIS_STORAGE_SENTINEL_ROLE
    REDIS_STORAGE_URL

    system-redis

    NAMESPACE
    SENTINEL_HOSTS
    SENTINEL_ROLE
    URL

    • Redis と Sentinel を設定する場合、backend-redis および system-redis の該当する URL フィールドには、redis://[:redis-password@]redis-group[/db] のフォーマットで Redis グループを指定します。ここで、[x] はオプションの要素 x を意味し、redis-passwordredis-group、および db 変数は適切な値に置き換えてください。

      redis://:redispwd@mymaster/5

    • SENTINEL_HOSTS フィールドは、以下のフォーマットの Sentinel 接続文字列のコンマ区切りリストです。

      redis://:sentinel-password@sentinel-hostname-or-ip:port
      • リスト内の各要素に関して、[x] はオプションの要素 x を意味し、sentinel-passwordsentinel-hostname-or-ip、および port 変数は適切な値に置き換えてください。

        :sentinelpwd@123.45.67.009:2711,:sentinelpwd@other-sentinel:2722

    • SENTINEL_ROLE フィールドの値は、master または slave のどちらかです。
  2. operator を使用した 3scale のデプロイ に記載の手順に従って 3scale を デプロイします。

    1. backend-redis および system-redis がすでに存在するために表示されるエラーは無視します。

4.2.3. 3scale の非 HA デプロイメントの HA への移行

  1. HA 用 3scale の新規インストールのデプロイ に記載のとおり、すべてのフィールドを指定して backend-redis および system-redis シークレットを編集します。
  2. 以下の backend-redis 環境変数がバックエンド Pod に対して定義されていることを確認してください。

    name: BACKEND_REDIS_SENTINEL_HOSTS
      valueFrom:
        secretKeyRef:
          key: REDIS_STORAGE_SENTINEL_HOSTS
          name: backend-redis
    name: BACKEND_REDIS_SENTINEL_ROLE
      valueFrom:
        secretKeyRef:
          key: REDIS_STORAGE_SENTINEL_ROLE
          name: backend-redis
  3. 以下の system-redis の環境変数が system-(app|sidekiq|sphinx) Pod に対して定義されていることを確認してください。

    name: REDIS_SENTINEL_HOSTS
      valueFrom:
        secretKeyRef:
          key: SENTINEL_HOSTS
          name: system-redis
    name: REDIS_SENTINEL_ROLE
      valueFrom:
        secretKeyRef:
          key: SENTINEL_ROLE
          name: system-redis
  4. 指示に従って、テンプレートを使用した 3scale のアップグレード を続行します。

4.2.3.1. Redis Enterprise の使用

  1. 3 つの異なる redis-enterprise インスタンスで、OpenShift にデプロイされた Redis Enterprise を使用します。

    1. system-redis シークレットを編集します。

      1. system-redis のシステム redis データベースを URL に設定します。
    2. backend-redis のバックエンドデータベースを REDIS_QUEUES_URL に設定します。
    3. backend-redis の 3 番目のデータベースを REDIS_STORAGE_URL に設定します。

4.2.3.2. Redis Sentinel の使用

注記

オプションで、Redis Sentinel をデータベースのいずれかに適用できます。ただし、Red Hat は、HA 用に Redis Sentinel をすべてに適用することを推奨します。

  1. 統計のバックエンド redis: backend-redis シークレットを更新し、以下の値を指定します。

    • REDIS_STORAGE_URL
    • REDIS_STORAGE_SENTINEL_ROLE
    • REDIS_STORAGE_SENTINEL_HOSTS

      REDIS_STORAGE_SENTINEL_ROLE を Sentinels ホストおよびポートのコンマ区切りリストに設定します (例::sentinelpwd@123.45.67.009:2711,:sentinelpwd@other-sentinel:2722)。

  2. キューのバックエンド redis: backend-redis シークレットを更新し、以下の値を指定します。

    • REDIS_QUEUES_URL
    • REDIS_QUEUES_SENTINEL_ROLE
    • REDIS_QUEUES_SENTINEL_HOSTS

      REDIS_QUEUES_SENTINEL_ROLE を Sentinels ホストおよびポートのコンマ区切りリストに設定します (例: :sentinelpwd@123.45.67.009:2711,:sentinelpwd@other-sentinel:2722)。

  3. これらの Redis データベースと共に Redis Sentinel を使用します。
  4. データ用のシステム redis: system-redis シークレットを更新し、以下の値を指定します。

    注記

    system-redis シークレットを編集します: URL

    • SENTINEL_ROLE
    • NAMESPACE
    • URL
    • SENTINEL_HOSTS

      SENTINEL_HOSTS を Sentinels ホストおよびポートのコンマ区切りリストに設定します (例: :sentinelpwd@123.45.67.009:2711,:sentinelpwd@other-sentinel:2722)。

注記

  • system-app および system-sidekiq コンポーネントは、統計を取得するために back-end Redis に直接接続します。

    • 3scale 2.7 の時点で、これらのシステムコンポーネントは Sentinel を使用する際にも back-end Redis (ストレージ) に接続することができます。
  • system-app および system-sidekiq コンポーネントは、backend-redis ストレージ しか使用しません (backend-redis キューは使用しません)。

    • システムコンポーネントに加えた変更は、backend-redis ストレージと Sentinel の組み合わせをサポートします。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.