14.2.70.2. volumes
ボリュームを使用して ConfigMap またはシークレットを Kafka Connect Pod にマウントします。
以下の場合、環境変数の代わりにボリュームを使用すると便利です。
- Kafka Connect コネクターの設定に使用されるプロパティーファイルのマウント
- TLS 証明書でのトラストストアまたはキーストアのマウント
ボリュームは、Kafka Connectコンテナ内のパス/opt/kafka/external-configuration/<volume-name>
にマウントされます。例えば、「connector-config」
という名前のボリュームのファイルは、「/opt/kafka/external-configuration/connector-config
」というディレクトリに表示されます。
設定プロバイダーは設定外から値を読み込みます。プロバイダーメカニズムを使用して、制限された情報がKafka ConnectREST インターフェースを介して渡されないようにします。
-
FileConfigProvider
は、ファイル内のプロパティから構成値をロードします。 -
DirectoryConfigProvider
は、ディレクトリ構造内の別々のファイルから構成値をロードします。
複数のプロバイダー (カスタムプロバイダーを含む) を追加する場合は、コンマ区切りリストを使用します。カスタムプロバイダーを使用して、他のファイルの場所から値をロードできます。
FileConfigProvider
を使用してプロパティ値をロードする。
この例では、mysecret
という名前の Secret に、データベース名とパスワードを指定するコネクタ プロパティが含まれています。
データベースプロパティーのある Secret の例
Kafka Connectの設定では、SecretとFileConfigProvider
の設定プロバイダを指定します。
-
Secret は
connector-config
という名前のボリュームにマウントされています。 -
FileConfigProvider
には、エイリアスファイル
が与えられます。
Secret からの値に設定された外部ボリュームの例
Secret のプロパティー値のプレースホルダーは、コネクター設定で参照されます。プレースホルダーの構造は、file:PATH-AND-FILE-NAME:PROPERTY
となっています。FileConfigProvider
は、コネクタ構成でマウントされたSecretからデータベースのユーザ名とパスワードのプロパティ値を読み取り、抽出します。
外部値のプレースホルダーを示すコネクター設定の例
DirectoryConfigProvider
を使用して、別々のファイルからプロパティ値をロードする。
この例では、Secret
にはTLSのトラストストアとキーストアのユーザー認証情報が別々のファイルで含まれています。
ユーザークレデンシャルのある Secret の例
Kafka Connectの設定では、SecretとDirectoryConfigProvider
の設定プロバイダーを指定します。
-
Secret は
connector-config
という名前のボリュームにマウントされています。 -
DirectoryConfigProvider
には、エイリアスのディレクトリ
が与えられます。
ユーザークレデンシャルファイルに設定された外部ボリュームの例
クレデンシャルのプレースホルダーはコネクター設定で参照されます。プレースホルダの構造は、directory:PATH:FILE-
NAMEとなっています。DirectoryConfigProvider
は、コネクタ構成でマウントされたSecretから認証情報を読み取り、抽出します。
外部値のプレースホルダーを示すコネクター設定の例