3.3. 使用 TLS 安全性配置 Kafka 存储
您可以配置 AMQ Streams Operator 和 Apicurio Registry Operator,以使用加密的传输层安全(TLS)连接。
先决条件
- 已使用 OperatorHub 或命令行安装了 Apicurio Registry Operator。
- 已安装 AMQ Streams Operator 或可以从 OpenShift 集群访问 Kafka。
本节假设 AMQ Streams Operator 可用,但您可以使用任何 Kafka 部署。在这种情况下,您必须手动创建 Apicurio Registry Operator 期望的 Openshift secret。
流程
- 在 OpenShift Web 控制台中,点 Installed Operators,选择 AMQ Streams Operator 详情,然后选择 Kafka 选项卡。
- 点 Create Kafka 为 Apicurio Registry 存储置备新的 Kafka 集群。
配置
authorization和tls字段,以将 TLS 身份验证用于 Kafka 集群,例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Apicurio Registry 自动创建的默认 Kafka 主题名称是
kafkasql-journal。您可以通过设置环境变量来覆盖此行为或默认主题名称。默认值如下:-
REGISTRY_KAFKASQL_TOPIC_AUTO_CREATE=true -
REGISTRY_KAFKASQL_TOPIC=kafkasql-journal
如果您决定不手动创建 Kafka 主题,请跳过下一步。
-
点 Kafka Topic 选项卡,然后点 Create Kafka Topic 创建
kafkasql-journal主题:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建 Kafka User 资源,以配置 Apicurio Registry 用户的身份验证和授权。您可以在
metadata部分中指定用户名,或者使用默认的my-user。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意这个简单示例假设 admin 权限并自动创建 Kafka 主题。您必须为 Apicurio Registry 所需的主题和资源配置
授权部分。以下示例显示了手动创建 Kafka 主题时所需的最低配置:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 点 Workloads,然后 Secrets 来查找 AMQ Streams 为 Apicurio Registry 创建的两个 secret 以连接到 Kafka 集群:
-
my-cluster-cluster-ca-cert- 包含 Kafka 集群的 PKCS12 信任存储 my-user- 包含用户的密钥存储注意secret 的名称可能会因集群或用户名而异。
-
如果手动创建 secret,它们必须包含以下键值对:
my-cluster-ca-cert
-
ca.p12- 信任存储,格式为 PKCS12 -
ca.password- truststore password
-
my-user
-
user.p12- 密钥存储(以 PKCS12 格式) -
user.password- keystore password
-
配置以下示例配置,以部署 Apicurio Registry。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
您必须使用不同的 bootstrapServers 地址,而不是在不安全的用例中。该地址必须支持 TLS 连接,并在 type: tls 字段下的指定 Kafka 资源中找到。