1

默认情况下,当我们创建 Strimzi-Kafka 用户时,用户会在 Kubernetes secrets-manager 中创建自己的 user.crt 和 user.key,但我想使用自己的 user.crt 和 user.key,这可行吗?

而不是先创建用户,然后用我们自己的密钥替换!我们是否可以选择传递我们自己的 crt,运行时用户创建的键?我们可以在部署文件中以某种方式指定吗?

来自官方文档:我得到了这个https://strimzi.io/docs/master/#installing-your-own-ca-certificates-str但它kind:Kafka不是kind:KafkaUser因为我们知道kind:KafkaUser用于用户创建。

4

1 回答 1

1

我自己回答我的问题!

步骤1:

kubectl -n <namespace> create secret generic <ca-cert-secret> --from-file=ca.crt=<ca-cert-file>

例如:

kubectl -n kafka create secret generic custom-strimzi-user --from-file=ca.crt=ca-decoded.crt --from-file=user.crt=user-decoded.crt --from-file=user.key=user-decoded.key -o yaml

第2步:

kubectl -n <namespace> label secret <ca-cert-secret> strimzi.io/kind=<Kafka or KafkaUser> strimzi.io/cluster=<my-cluster>

例如:

kubectl -n kafka label secret custom-strimzi-user strimzi.io/kind=KafkaUser strimzi.io/cluster=kafka

STEP3:现在为上面创建的用户启用 ACL 和 TLS:

应用 Strimzi 官方提供的创建用户 yaml部署文件(种类KafkaUser)格式,将用户名替换为上面创建的用户名,然后执行:

kubectl apply -f kafka-create-user.yml

注意:如果我们 kubectl apply -f kafka-create-user.yml在 STEP1 和 STEP2 中创建自定义用户之前运行,那么 Strimzi 创建一个具有自己的用户user.crt&user.key

仅供参考,我分享的是用户自定义crt和用户自定义密钥,但对于操作员集群 CA(crt 和密钥),我们在这里有官方文档:https ://strimzi.io/docs/master/#installing-your-own-ca -证书-str

问候, 苏迪尔·塔塔拉朱

于 2020-04-11T07:55:24.367 回答