ローカルモードでの Flex Gateway の共有ストレージの設定

Anypoint Flex Gateway では、分散キャッシュおよびレート制限ポリシーの共有ストレージを設定できます。

本番ワークフローでは Redis​ を使用する必要がありますが、その定義は省略可能です。Redis が定義されていない場合、ポート 4000 の共有ストレージサービスを引き続き使用できますが、メモリ内実装が使用されます。

カスタム YAML ファイルを介して共有ストレージを設定します。

次の手順は、Linux サービスまたは Kubernetes クラスターとして、Docker コンテナで実行されている Flex Gateway の Redis ベースのストレージサポートを示しています。

20%

25%

20%

始める前に

Flex Gateway の共有ストレージを設定する前に、次のタスクを完了します。

Linux サービスとして Flex Gateway の共有ストレージを設定する

  1. /etc/mulesoft/flex-gateway/conf.d​ ディレクトリにフォルダーを作成し、​custom​ という名前を付けます。

    sudo mkdir /etc/mulesoft/flex-gateway/conf.d/custom
  2. custom​ フォルダーに YAML 設定ファイルを作成します。

    sudo touch /etc/mulesoft/flex-gateway/conf.d/custom/shared-storage-config.yaml
  3. Redis ストレージ設定の詳細を使用してファイルを更新します。次に例を示します。

    sudo vi /etc/mulesoft/flex-gateway/conf.d/custom/shared-storage-config.yaml

    Redis ベースの共有ストレージを追加するためのサンプル設定:

    apiVersion: gateway.mulesoft.com/v1alpha1
    kind: Configuration
    metadata:
     name: shared-storage-redis
    spec:
     sharedStorage:
       redis:
         address: redis.e-commerce.svc:6379
         username: ecomm-user
         password: ecomm-pwd-123
         DB: 7

Docker コンテナで Flex Gateway の共有ストレージを設定する

Flex Gateway 設定ファイルを含むフォルダーのボリュームをすでに追加している場合、最後のステップまでスキップします。
  1. Flex Gateway とすべてのレプリカを停止します。

  2. Flex Gateway 設定ファイルを含むディレクトリに ​app​ という名前のフォルダーを作成します。

  3. 新しい ​app​ ディレクトリの追加ボリュームで Flex Gateway を再起動します。

    docker run --rm \
    -v "$(pwd)":/usr/local/share/mulesoft/flex-gateway/conf.d \
    -p 8080:8080 \
    mulesoft/flex-gateway
    -e ​FLEX_NAME​=<name-for-flex-replica> \ を含めて、Flex レプリカに割り当てる名前 (省略可能) を指定します。
  4. YAML 設定ファイルを作成し、共有ストレージの詳細を使用して ​app​ フォルダーに保存します。

    Redis ベースの共有ストレージを追加するためのサンプル設定:

    apiVersion: gateway.mulesoft.com/v1alpha1
    kind: Configuration
    metadata:
     name: shared-storage-redis
    spec:
     sharedStorage:
       redis:
         address: redis.e-commerce.svc:6379
         username: ecomm-user
         password: ecomm-pwd-123
         DB: 7

Kubernetes クラスターで Flex Gateway の共有ストレージを設定する

Flex Gateway の共有ストレージを設定するには、YAML 設定ファイルとストレージの詳細を使用して新しいリソースを作成します。

Redis ベースの共有ストレージを追加するためのサンプル設定:

apiVersion: gateway.mulesoft.com/v1alpha1
kind: Configuration
metadata:
 name: shared-storage-redis
spec:
 sharedStorage:
   redis:
     address: redis.e-commerce.svc:6379
     username: ecomm-user
     password: ecomm-pwd-123
     DB: 7

Redis ベースの共有ストレージ用の TLS の設定

TLS で Redis を使用し、Flex Gateway と Redis インスタンス間のデータセキュリティを確保できます。TLS を設定することで、機密データを保護し、不正なアクセスを防止して、サービスの信頼性を維持できます。さらに、TLS を設定すれば、組織はコンプライアンス要件を満たしてユーザーの信頼を築きやすくなります。

前のセクションで説明した手順を使用して Redis ベースの共有ストレージ用に TLS を設定します。

TLS を使用して Redis ベースの共有ストレージを追加するためのサンプル設定:

apiVersion: gateway.mulesoft.com/v1alpha1
kind: Configuration
metadata:
  name: shared-storage-redis
spec:
  sharedStorage:
    redis:
      address: internal.redis.com:6379
      tls:
        skipValidation: false
        minVersion: "1.1"
        maxVersion: "1.3"
        alpn:
          - h2
          - http/1.1
        ciphers:
          - TLS_AES_128_GCM_SHA256
          - TLS_AES_256_GCM_SHA384
          - TLS_CHACHA20_POLY1305_SHA256
          - TLS_RSA_WITH_3DES_EDE_CBC_SHA
          - TLS_RSA_WITH_AES_128_CBC_SHA
          - TLS_RSA_WITH_AES_256_CBC_SHA
          - TLS_RSA_WITH_AES_128_CBC_SHA256
          - TLS_RSA_WITH_AES_128_GCM_SHA256
          - TLS_RSA_WITH_AES_256_GCM_SHA384
          - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
          - TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
          - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
          - TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
          - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
          - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
          - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
          - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
          - TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
          - TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
        trustedCA: |
          -----BEGIN CERTIFICATE-----
          ...
          -----END CERTIFICATE-----

        certificate:
          keyPassphrase: "****"
          key: |
            -----BEGIN RSA PRIVATE KEY-----
            ...
            -----END RSA PRIVATE KEY-----

          crt: |
            -----BEGIN CERTIFICATE-----
            ...
            -----END CERTIFICATE-----

パラメーターの設定については、​「Declarative Configuration Reference (Shared Storage) (宣言型設定リファレンス (共有ストレージ))」​を参照してください。