Confluent Platform に対するカスタム Docker レジストリの使用¶
Confluent for Kubernetes (CFK)は、Docker Hub でホストされ公開されている Docker イメージを confluentinc
リポジトリからデプロイします。
CFK で Confluent Platform イメージを別のレジストリから、または Docker Hub 上の独自のリポジトリセットからデプロイするには、以下の手順に従ってください。
Confluent リポジトリから目的のイメージをプルし、ターゲットレジストリにプッシュします。
以下に記載されているのは、デフォルトの Docker イメージの URI 一覧です。
Confluent Platform コンポーネントイメージの
<tag>
は、コンポーネントのバージョンです。たとえば、ZooKeeper バージョン 7.0.1 イメージの URI はdocker.io/confluentinc/cp-zookeeper:7.0.1
となります。confluent-operator
イメージのタグを選択する場合は、「Confluent for Kubernetes のイメージ タグとバージョン」を参照してください。init コンテナーの
<tag>
は、CFK のバージョンになります。docker.io/confluentinc/confluent-init-container:<tag> docker.io/confluentinc/confluent-operator:<tag> docker.io/confluentinc/cp-enterprise-control-center:<tag> docker.io/confluentinc/cp-enterprise-replicator:<tag> docker.io/confluentinc/cp-kafka-rest:<tag> docker.io/confluentinc/cp-ksqldb-server:<tag> docker.io/confluentinc/cp-schema-registry:<tag> docker.io/confluentinc/cp-server:<tag> docker.io/confluentinc/cp-server-connect:<tag> docker.io/confluentinc/cp-zookeeper:<tag>
イメージレジストリに対し、ユーザー名とパスワードで認証を行う必要がある場合、その各レジストリについて、Confluent Platform コンポーネントと同じ名前空間に
docker-registry
タイプの Kubernetes シークレットを作成します。イメージプルシークレットには、プルするイメージが置かれているレジストリへの認証情報が格納されます。
<confluent-namespace>
は、この Confluent Platform コンポーネントのデプロイ先となる名前空間を表します。kubectl create secret docker-registry <registry-secret> \ --namespace <confluent-namespace> --docker-server=<Docker-registry-FQDN> \ --docker-username=<Docker-username> \ --docker-password=<Docker-password> \ --docker-email=<Docker-email>
各 Confluent Platform コンポーネントについて、カスタムリソース(CR)で次の設定を構成します。
spec: image: # Changes in this property will roll the cluster. application: # Required. Specify # <Docker-registry FQDN>/<docker-repository-name>/<component-image-name>:<tag> init: # Required. Specify # <Docker-registry FQDN>/<docker-repository-name>/<init-container-image-name>:<tag> pullSecretRef: # The image pull secret added in the previous step.
たとえば、前の手順で作成した
registry-secret
を使用してカスタムレジストリから Schema Registry イメージをプルするには、次のようにします。spec: image: application: docker.io/myrepository/cp-schema-registry:7.0.1 init: docker.io/myrepository/confluent-init-container:2.2.2 pullSecretRef: - registry-secret