Admin REST APIs の構成オプション¶
Confluent Server の Admin REST APIs では、Java クライアントを使用して内部的に Confluent Server と通信します。これは Confluent REST Proxy と同じ動作です。ここで説明した設定に加えて、プレフィックス kafka.rest.client.
または kafka.rest.admin.
を使用して、Java クライアントが使用するデフォルト設定をオーバーライドできます。
confluent.http.server.
で始まるすべての設定の前には、代わりに confluent.metadata.server.
を付けることができます。たとえば、confluent.http.server.ssl.keystore.type=JKS
または confluent.metadata.server.ssl.keystore.type=JKS
のいずれを設定しても同じ効果が得られます。唯一の例外は、confluent.http.server.listeners
(組み込み HTTP サーバーを有効にし、MDS はスキップする)と confluent.metadata.server.listeners
(MDS を有効にする)です。
全般¶
confluent.http.server.listeners
HTTP または HTTPS で API リクエストをリッスンするリスナーのコンマ区切りリスト。リスナーが HTTPS を使用する場合は、適切な SSL 構成パラメーターも設定する必要があります。
confluent.http.server.listeners
の代わりにconfluent.metadata.server.listeners
を使用すると、同じリスナーで メタデータサービス も有効になります。- 型: list
- デフォルト :
http://0.0.0.0:8090
- 重要度: 高
confluent.http.server.shutdown.graceful.ms
シャットダウンのリクエスト後、未処理のリクエストの完了を待機する時間。
- 型: int
- デフォルト: 1000
- 重要度: 低
kafka.rest.bootstrap.servers
接続先となる Kafka ブローカーのリストたとえば、
PLAINTEXT://hostname:9092,SSL://hostname2:9092
のように設定します。この設定のデフォルトは、REST Proxy が実行されているブローカーのブローカー間リスナーです。セキュリティ上の理由などから、REST Proxy を別のリスナーを介して Kafka と通信させたい場合にはこの設定を変更できます。- 型: list
- デフォルト : ブローカー間リスナー。例:
PLAINTEXT://localhost:9091
- 重要度: 中
kafka.rest.access.control.allow.methods
Jetty の Access-Control-Allow-Origin ヘッダーに、特定のメソッドの値を設定します。
- 型: string
- デフォルト: ""
- 重要度: 低
kafka.rest.access.control.allow.origin
Jetty の Access-Control-Allow-Origin ヘッダーの値を設定します。
- 型: string
- デフォルト: ""
- 重要度: 低
kafka.rest.debug
一部のエラー応答エンティティで、追加のデバッグ情報を生成するかどうかを示します。
- 型: boolean
- デフォルト: false
- 重要度: 低
kafka.rest.request.logger.name
NCSA 共通ログフォーマットのリクエストログを書き込む SLF4J ロガーの名前。
- 型: string
- デフォルト :
io.confluent.rest-utils.request
- 重要度: 低
kafka.rest.response.mediatype.default
Accept ヘッダーで特定のタイプがリクエストされなかった場合に使用されるデフォルトの応答メディアタイプ。
- 型: string
- デフォルト
application/json
- 重要度: 低
kafka.rest.response.mediatype.preferred
サーバーが応答に使用する優先メディアタイプの順序指定済みリスト。優先度の高いものから順に列挙されます。
- 型: list
- デフォルト: [application/json, application/vnd.kafka.v2+json]
- 重要度: 低
kafka.rest.metrics.jmx.prefix
デフォルトの JMX レポーターのメトリック名に適用するプレフィックス。
- 型: string
- デフォルト
kafka.rest
- 重要度: 低
kafka.rest.metrics.num.samples
メトリクスの計算用に維持されるサンプルの数。
- 型: int
- デフォルト: 2
- 重要度: 低
kafka.rest.metrics.sample.window.ms
メトリクスシステムは、サンプル数(構成可能)を一定のウィンドウサイズにわたって維持します。そのウィンドウのサイズを制御するのが、この構成です。たとえば、2 つのサンプルを 30 秒間維持してそれぞれ計測することができます。ウィンドウの期限が切れると、最も古いウィンドウが消去されて上書きされます。
- 型: long
- デフォルト: 30000
- 重要度: 低
kafka.rest.kafka.rest.resource.extension.class
RestResourceExtension として使用するクラスのリスト。インターフェイス
RestResourceExtension
を実装すると、フィルターなどのユーザー定義リソースを Kafka HTTP API に挿入できます。通常は、ログ記録やセキュリティなど、カスタム機能を追加する際に使用されます。- 型: list
- デフォルト: ""
- 重要度: 低
kafka.rest.advertised.listeners
アドバタイズされるリスナーのリスト。この構成は、V3 応答で絶対 URL を生成するために使用されます。HTTP プロトコルおよび HTTPS プロトコルがサポートされます。各リスナーは、プロトコル、ホスト名、およびポートを含んでいる必要があります。たとえば、
http://myhost:8080
やhttps://0.0.0.0:8081
のように設定します。- 型: list
- デフォルト: ""
- 重要度: 低
kafka.rest.confluent.resource.name.authority
名前空間の管理が委任される権限。この値は、CRN の残りの部分によって定義されます。Confluent リソース名を生成するときに使用されます。たとえば、
confluent.cloud
やmds-01.example.com
のように設定します。- 型: string
- デフォルト: ""
- 重要度: 低
kafka.rest.response.http.headers.config
Confluent Platform コンポーネントの HTTP 応答で返す HTTP ヘッダーを選択する目的で使用します。複数の値は、
[action][header name]:[header value]
形式のコンマ区切り文字列で指定します。ここで[action]
は、set
、add
、setDate
、addDate
のいずれかになります。ヘッダーの値にコンマが含まれている場合は、その値を引用符で囲む必要があります。以下に例を示します。kafka.rest.response.http.headers.config="add Cache-Control: no-cache, no-store, must-revalidate", add X-XSS-Protection: 1; mode=block, add Strict-Transport-Security: max-age=31536000; includeSubDomains, add X-Content-Type-Options: nosniff
- 型: string
- デフォルト: ""
- 重要度: 低
HTTPS の構成オプション¶
confluent.http.server.ssl.keystore.location
HTTPS に使用されます。SSL に使用するキーストアファイルの場所です。
重要
HTTPS では、証明書の CN または SAN フィールドのいずれかにサーバーの FQDN を指定する必要があります。
- 型: string
- デフォルト: ""
- 重要度: 高
confluent.http.server.ssl.keystore.password
HTTPS に使用されます。キーストアのストアパスワードです。
- 型: password
- デフォルト: ""
- 重要度: 高
confluent.http.server.ssl.key.password
HTTPS に使用されます。キーストアファイル内のプライベートキーのパスワード。
- 型: password
- デフォルト: ""
- 重要度: 高
confluent.http.server.ssl.keystore.type
HTTPS に使用されます。キーストアのフォーマットです。
- 型: string
- デフォルト: JKS
- 重要度: 中
confluent.http.server.ssl.protocol
HTTPS に使用されます。SslContextFactory の生成に使用する SSL プロトコルです。
- 型: string
- デフォルト: TLS
- 重要度: 中
confluent.http.server.ssl.provider
HTTPS に使用されます。SSL セキュリティプロバイダーの名前です。Jetty のデフォルトを使用する場合は空白にします。
- 型: string
- デフォルト: ""(Jetty のデフォルト)
- 重要度: 中
confluent.http.server.ssl.enabled.protocols
HTTPS に使用されます。SSL 接続で有効なプロトコルのコンマ区切りリストです。Jetty のデフォルトを使用する場合は空白にします。
- 型: list
- デフォルト: ""(Jetty のデフォルト)
- 重要度: 中
confluent.http.server.ssl.keymanager.algorithm
HTTPS に使用されます。SSL 接続のキーマネージャーファクトリで使用されるアルゴリズムです。Jetty のデフォルトを使用する場合は空白にします。
- 型: string
- デフォルト: ""(Jetty のデフォルト)
- 重要度: 低
confluent.http.server.ssl.trustmanager.algorithm
HTTPS に使用されます。SSL 接続のトラストマネージャーファクトリで使用されるアルゴリズムです。Jetty のデフォルトを使用する場合は空白にします。
- 型: string
- デフォルト: ""(Jetty のデフォルト)
- 重要度: 低
confluent.http.server.ssl.cipher.suites
HTTPS に使用されます。SSL 暗号スイートのコンマ区切りリストです。Jetty のデフォルトを使用する場合は空白にします。
- 型: list
- デフォルト: ""(Jetty のデフォルト)
- 重要度: 低
confluent.http.server.ssl.endpoint.identification.algorithm
HTTPS に使用されます。サーバー証明書を使用してサーバーホスト名を検証するエンドポイント識別アルゴリズムです。Jetty のデフォルトを使用する場合は空白にします。
- 型: string
- デフォルト: https
- 重要度: 低
Admin REST APIs と Kafka ブローカー間の SSL 暗号化の構成オプション¶
REST Proxy が実行されているブローカーのブローカー間リスナーでセキュリティが有効になっている場合は、Java クライアントが Kafka と安全に通信できるように REST Proxy で Java クライアントを手動で構成する必要があります。
以下の構成には、kafka.rest.client.
または kafka.rest.admin.
のいずれかを使用できます。
kafka.rest.client.security.protocol
ブローカーとの通信に使用されるプロトコル。指定可能な値は、PLAINTEXT、SSL、SASL_PLAINTEXT、SASL_SSL です。
- 型: string
- デフォルト: PLAINTEXT
- 重要度: 高
kafka.rest.client.ssl.key.password
キーストアファイル内のプライベートキーのパスワード。クライアントでは省略可能です。
- 型: password
- デフォルト: null
- 重要度: 高
kafka.rest.client.ssl.keystore.location
キーストアファイルの場所。クライアントでは省略可能です。クライアントの相互認証に使用できます。
- 型: string
- デフォルト: null
- 重要度: 高
kafka.rest.client.ssl.keystore.password
キーストアファイルのストアパスワード。クライアントでは省略可能です。ssl.keystore.location を構成した場合にのみ必要となります。
- 型: password
- デフォルト: null
- 重要度: 高
kafka.rest.client.ssl.truststore.location
トラストストアファイルの場所。
- 型: string
- デフォルト: null
- 重要度: 高
kafka.rest.client.ssl.truststore.password
トラストストアファイルのパスワード。
- 型: string
- デフォルト: null
- 重要度: 高
kafka.rest.client.ssl.enabled.protocols
SSL 接続で有効なプロトコルのリスト。
- 型: list
- デフォルト: TLSv1.2,TLSv1.1,TLSv1
- 重要度: 中
kafka.rest.client.ssl.keystore.type
キーストアファイルのファイルフォーマット。クライアントでは省略可能です。
- 型: string
- デフォルト: JKS
- 重要度: 中
kafka.rest.client.ssl.protocol
SSLContext の生成に使用する SSL プロトコルです。デフォルト設定は TLS であり、ほとんどのケースに適しています。最新の Java 仮想マシンで使用できる値は、TLS、TLSv1.1、TLSv1.2 です。古い JVM では SSL、SSLv2、および SSLv3 がサポートされている場合もありますが、セキュリティに関する既知の脆弱性があるため、使用しないことをお勧めします。
- 型: string
- デフォルト: TLS
- 重要度: 中
kafka.rest.client.ssl.provider
SSL 接続に使用するセキュリティプロバイダーの名前。デフォルト値は、JVM のデフォルトのセキュリティプロバイダーです。
- 型: string
- デフォルト: null
- 重要度: 中
kafka.rest.client.ssl.truststore.type
トラストストアファイルのファイルフォーマット。
- 型: string
- デフォルト: JKS
- 重要度: 中
kafka.rest.client.ssl.cipher.suites
暗号スイートのリストです。これは、認証、暗号化、MAC、およびキー交換アルゴリズムの名前付き組み合わせで、TLS または SSL ネットワークプロトコルを使用したネットワーク接続のセキュリティ設定をネゴシエートするために使用されます。デフォルトでは、使用可能なすべての暗号スイートがサポートされます。
- 型: list
- デフォルト: null
- 重要度: 低
kafka.rest.client.ssl.endpoint.identification.algorithm
サーバー証明書を使用してサーバーホスト名を検証するエンドポイント識別アルゴリズム。
- 型: string
- デフォルト: null
- 重要度: 低
kafka.rest.client.ssl.keymanager.algorithm
SSL 接続のキーマネージャーファクトリで使用されるアルゴリズム。デフォルト値は、Java 仮想マシンに構成されているキーマネージャーファクトリアルゴリズムです。
- 型: string
- デフォルト: SunX509
- 重要度: 低
kafka.rest.client.ssl.secure.random.implementation
SSL 暗号化操作に使用する SecureRandom PRNG 実装。
- 型: string
- デフォルト: null
- 重要度: 低
kafka.rest.client.ssl.trustmanager.algorithm
SSL 接続のトラストマネージャーファクトリで使用されるアルゴリズム。デフォルト値は、Java 仮想マシン用に構成されているトラストマネージャーファクトリアルゴリズムです。
- 型: string
- デフォルト: PKIX
- 重要度: 低