首页 > 解决方案 > 使用 minikube 配置 apiserver 以使用加密配置

问题描述

我正在尝试配置它,kube-apiserver以便它使用加密来配置我的 minikube 集群中的机密。

为此,我遵循了kubernetes.io 上的文档,但被困在第 3 步,上面写着

--encryption-provider-config标志设置kube-apiserver为指向配置文件的位置。

我发现了该选项--extra-configminikube start尝试使用

minikube start --extra-config=apiserver.encryption-provider-config=encryptionConf.yaml

但自然它不能工作,因为encryptionConf.yaml它位于我的本地文件系统中,而不是在 minikube 启动的 pod 中。minikube log给我的错误是

error: error opening encryption provider configuration file "encryptionConf.yaml": open encryptionConf.yaml: no such file or directory

将加密配置文件放到kube-apiserver. 或者minikube也许是尝试这些事情的错误工具?

标签: kubernetesminikube

解决方案


我自己在这个 GitHub 问题中找到了解决方案,他们在传递配置文件时遇到了类似的问题。/var/lib/localkube/certs/对我有帮助的评论是利用minikube VM 中的目录安装到 apiserver中这一事实的稍微 hacky 的解决方案。

所以我的最终解决方案是运行

minikube mount .:/var/lib/minikube/certs/hack

在当前目录中我的位置encryptionConf.yaml,然后像这样启动 minikube

minikube start --extra-config=apiserver.encryption-provider-config=/var/lib/minikube/certs/hack/encryptionConf.yaml

推荐阅读