在Kubernetes上安装证书

3

我刚开始探索Kubernetes,并在运行在云平台上的Kubernetes容器中部署了一个服务。

我的服务需要调用一个需要证书认证的数据库。我想知道在Kubernetes上存储/安装证书的最佳实践是什么。

我需要从我的代码中访问该证书,如下所示:

const (
    serverCertificate = "./cert/api.cer"
    serverPrivateKey  = "./cert/api.key"
)
creds, err := credentials.NewServerTLSFromFile(serverCertificate, serverPrivateKey)
1个回答

6

当然。你有任何想法如何从我的代码中访问证书吗?我已经在问题中编辑了我的代码。 - DoIt
1
https://kubernetes.io/docs/concepts/configuration/secret/#using-secrets-as-files-from-a-pod 描述了如何将一个秘密投射为文件到您的容器中。将您的证书作为一个秘密,然后将其投射到您想要的容器中。 - Dance machine
@Dancemachine 这个方法可能可行,但我现在想保持我的代码不变,而是想从 Kubernetes 上的 ./cert 文件夹中访问证书。 - DoIt
证书可以保存在K8S Secrets中,并可以挂载到容器中的任何文件夹中。在您的情况下,是./cert。为了使用一个secret,pod需要引用该secret。Secret可以通过两种方式与pod一起使用:作为一个或多个容器上挂载的卷中的文件,或者在拉取pod镜像时由kubelet使用。https://kubernetes.io/docs/concepts/configuration/secret/#overview-of-secrets - Praveen Sripati

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接