Kubernetes kubectl错误:无法添加键dashboard.yaml,另一个同名键已存在
我们的系统架构师离开了,我被扔进了管理Kubernetes集群的深水区。 我正在尝试使用以下命令更新kubernetes集群上的ssl机密Kubernetes kubectl错误:无法添加键dashboard.yaml,另一个同名键已存在,kubernetes,Kubernetes,我们的系统架构师离开了,我被扔进了管理Kubernetes集群的深水区。 我正在尝试使用以下命令更新kubernetes集群上的ssl机密 kubectl -n zone-system create secret generic ssl-secret \ --from-file=./$CERT_FILE \ --from-file=./$KEY_FILE \ --dry-run=client \ -o yaml |
kubectl -n zone-system create secret generic ssl-secret \
--from-file=./$CERT_FILE \
--from-file=./$KEY_FILE \
--dry-run=client \
-o yaml |
kubectl apply -f -
但是,当我运行它时,会出现以下错误:
error: cannot add key dashboard.yaml, another key by that name already exists
error: no objects passed to apply
我不知道如何解决它。尝试了Google和Stack Overflow搜索,但所有问题实际上都与此错误无关。确保没有传递重复的键名
dashboard.yaml
。您正在使用两个文件作为机密的输入CERT_文件
和KEY_文件
,确保这两个文件中没有重复的密钥,特别是dashboard.yaml
要演示此问题,请将名为dashboard.yaml的密钥传递两次,并在创建secret时得到相同的错误。注意,为了简单起见,这里使用了literal中的
对于证书文件
和密钥文件
上的dashboard.yaml“
,您应该grep
kubectl create secret generic my-secret --from-literal=dashboard.yaml=supersecret --from-literal=dashboard.yaml=supersecret1
error: cannot add key dashboard.yaml, another key by that name already exists
第二个错误错误:没有传递要应用的对象
是因为没有yaml
是从dry run
生成的
进一步调试结果:
命令的echo
将变量CERT\u FILE
和KEY\u FILE
返回为空,它们都指向导致重复的/
root@ip-10-10-10-118:/home/code/kubernetes/dev1# echo "kubectl -n zone-system create secret generic ssl-secret --from-file=./$CERT_FILE --from-file=./$KEY_FILE --dry-run=client -o yaml | kubectl apply -f -"
kubectl -n zone-system create secret generic ssl-secret --from-file=./ --from-file=./ --dry-run=client -o yaml | kubectl apply -f -
@P。。。。在执行上述命令之前,我尝试运行以下命令:`kubectl-n zone system delete secret ssl secret`此外,您的工作目录中deployment.yaml[]*:
只有一个.pem和一个.key文件grep-rE
。这个问题可能更适合or。我按原样运行命令,不传递任何密钥名称。是的,我得到了第二个错误。不确定要传递两个文件的第一个文件,您使用的是--from file
选项。这意味着,从这两个文件中获取机密。例如:CERT\u文件
和KEY\u文件
。所以它来自那里grep
用于deployment.yaml
请在这两个文件中。My setup.sh包含CERT\u FILE=“wild.zonetv.cloud.CERT.pem”KEY\u FILE=“wild.zonetv.cloud.KEY”
这些文件是实际的pem文件,带有服务器证书和链以及证书密钥。其中任何一个中都没有部署.yaml。您可以执行grep-r dashboard.yaml$PWD
?刚刚执行,谢谢您的帮助!现在需要弄清楚如何使用更新的仪表板更新kubernetes