5.3. AMQ Streams での Service Registry ストレージを使用した TLS セキュリティーの設定


AMQ Streams Operator および Service Registry Operator を、暗号化された Transport Layer Security (TLS) 接続を使用するように設定できます。

前提条件

  • OperatorHub またはコマンドラインを使用して Service Registry Operator をインストールする。
  • AMQ Streams Operator をインストールする、または Kafka が OpenShift クラスターからアクセスできる。
注記

ここでは、AMQ Streams Operator が利用可能であることを前提としていますが、任意の Kafka デプロイメントを使用できます。この場合、Service Registry Operator が想定する Openshift シークレットを手動で作成する必要があります。

手順

  1. OpenShift Web コンソールで Installed Operators をクリックし、AMQ Streams Operator の詳細を選択してから、Kafka タブをクリックします。
  2. Create Kafka をクリックし、Service Registry ストレージの新しい Kafka クラスターをプロビジョニングします。
  3. Kafka クラスターに TLS 認証を使用するように、 authorization フィールドと tls フィールドを設定します。次に例を示します。

    apiVersion: kafka.strimzi.io/v1beta1
    kind: Kafka
    metadata:
      name: my-cluster
      namespace: registry-example-streams-tls
    spec:
      kafka:
        authorization:
          type: simple
        version: 2.5.0
        replicas: 3
        listeners:
          plain: {}
          tls:
            authentication:
              type: tls
        config:
          offsets.topic.replication.factor: 3
          transaction.state.log.replication.factor: 3
          transaction.state.log.min.isr: 2
          log.message.format.version: '2.5'
        storage:
          type: ephemeral
      zookeeper:
        replicas: 3
        storage:
          type: ephemeral
      entityOperator:
        topicOperator: {}
        userOperator: {}
  4. Kafka トピックを作成し、Service Registry アーティファクトを保存します。

    1. Provided APIs > Kafka Topic で、Create topic をクリックします。
    2. デフォルトのトピック名を my-topic から必要な storage-topic に変更します。
  5. Kafka トピックを作成し、Service Registry のグローバル ID を保存します。

    1. Provided APIs > Kafka Topic で、Create topic をクリックします。
    2. デフォルトのトピック名を my-topic から必要な global-id-topic に変更します。
  6. Kafka User リソースを作成し、Service Registry ユーザーの認証および承認を設定します。たとえば、spec ブロックでは metadata セクションにユーザー名を指定するか、デフォルトの my-user を使用できます。

    spec:
      authentication:
        type: tls
      authorization:
        acls:
          - operation: All
            resource:
              name: '*'
              patternType: literal
              type: topic
          - operation: All
            resource:
              name: '*'
              patternType: literal
              type: cluster
          - operation: All
            resource:
              name: '*'
              patternType: literal
              type: transactionalId
          - operation: All
            resource:
              name: '*'
              patternType: literal
              type: group
        type: simple
    注記

    Service Registry が必要とするトピックおよびリソースに合わせて承認を設定する必要があります。これは簡単な例です。

  7. Workloads をクリックしてから Secrets をクリックし、Service Registry が Kafka クラスターに接続するために AMQ Stremas によって作成される 2 つのシークレットを見つけます。

    • my-cluster-cluster-ca-cert - Kafka クラスターの PKCS12 トラストストアが含まれています
    • my-user - ユーザーのキーストアが含まれます

      注記

      シークレットの名前は、クラスターまたはユーザー名によって異なります。

  8. シークレットを手動で作成する場合は、以下のキーと値のペアを含める必要があります。

    • my-cluster-ca-cert

      • ca.p12 - PKCS12 形式のトラストストア
      • ca.password - truststore password
    • my-user

      • user.p12 - PKCS12 形式のキーストア
      • user.password - keystore password
  9. Service Registry をデプロイするように、以下の設定例を設定します。

    apiVersion: apicur.io/v1alpha1
    kind: ApicurioRegistry
    metadata:
      name: example-apicurioregistry
    spec:
      configuration:
        persistence: "streams"
        streams:
          bootstrapServers: "my-cluster-kafka-bootstrap.registry-example-streams-tls.svc:9093"
          security:
            tls:
              keystoreSecretName: my-user
              truststoreSecretName: my-cluster-cluster-ca-cert
    重要

    プレーンでセキュアでないユースケースとは別の bootstrapServers アドレスを使用する必要があります。アドレスは TLS 接続をサポートする必要があり、指定された Kafka リソースの type:tls フィールドにあります。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.