Kubernetes 如何修复';映射[]不包含声明的合并键:name';编辑和保存pod yaml时出错?
我正试图从私人注册表中提取图像。但是pod的状态是“ImagePullBackOff”,这意味着我需要给pod添加一个秘密Kubernetes 如何修复';映射[]不包含声明的合并键:name';编辑和保存pod yaml时出错?,kubernetes,kubernetes-pod,kubernetes-secrets,Kubernetes,Kubernetes Pod,Kubernetes Secrets,我正试图从私人注册表中提取图像。但是pod的状态是“ImagePullBackOff”,这意味着我需要给pod添加一个秘密 Events: Type Reason Age From Message ---- ------ ---- ----
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Pulling 52m (x255 over 22h) kubelet, cn-huhehaote.i-hp3fkfzlcf1u9cigq2h7 pulling image "xxx/fcp"
Normal BackOff 8m (x5597 over 22h) kubelet, cn-huhehaote.i-hp3fkfzlcf1u9cigq2h7 Back-off pulling image "xxx/fcp"
Warning Failed 3m (x5618 over 22h) kubelet, cn-huhehaote.i-hp3fkfzlcf1u9cigq2h7 Error: ImagePullBackOff
因此,我在pod yaml中添加了以下代码
spec:
containers:
- name: private-reg-container
image: <your-private-image>
imagePullSecrets:
- name: my-secret
我找到的解决方案是删除“imagePullSecret”,这对我不起作用。我想知道如何纠正这个错误。有人能帮我吗
kubectl版本是
kubectl version
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.5", GitCommit:"753b2dbc622f5cc417845f0ff8a77f539a4213ea", GitTreeState:"clean", BuildDate:"2018-11-26T14:41:50Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.5", GitCommit:"753b2dbc622f5cc417845f0ff8a77f539a4213ea", GitTreeState:"clean", BuildDate:"2018-11-26T14:31:35Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}
正如评论中提到的@Fiunchino和按群集联合是不推荐的 强烈反对使用联合版本1。联邦V1从不 已获得GA地位,不再处于积极开发中。 文档仅用于历史目的 解决办法是使用。
有关更多详细信息,请参阅和我遇到了相同的问题(使用helm),我发现不允许编辑部署中的
imagePullSecret
部分
解决方案是删除部署并重新创建它 你能分享你正在使用的Kubernetes版本吗?粘贴
kubectl版本的输出
。另外,你能分享你的完整Pod yaml代码吗?我只是粘贴输出,请检查。pod是控制器管理器pod。我以前没有编辑过yaml代码。我未能初始化联合控制平面。Kubefed init说“等待联邦控制飞机出现”,但它一直没有出现,所以我检查了pod状态,发现了这个错误。所以你试图使用你的自定义版本作为控制器管理器?@Fiunchino是的,我按照指示,但无法拉取图像。没有帮助,但看起来群集联合已被弃用,我看不到答案和问题之间的联系……“我只是粘贴了输出,请检查。pod是控制器管理器pod。我以前没有编辑yaml代码。我未能初始化联合控制平面。Kubefed init说”等待联邦控制飞机出现“但它从来没有出现过,所以我检查了pod状态并发现了这个错误。-李翔4月17日9:56”据我所知,可以使用补丁语法。例如:kubectl-n示例修补程序部署mydeployment-p'{“imagePullSecrets”:[{“name”:“registry”}]},如果部署删除不是这样的话。@DariyN和--force标志(我不确定它是kubectl还是oc扩展),但通常情况下,helm在这种情况下会失败。。。
kubectl version
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.5", GitCommit:"753b2dbc622f5cc417845f0ff8a77f539a4213ea", GitTreeState:"clean", BuildDate:"2018-11-26T14:41:50Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.5", GitCommit:"753b2dbc622f5cc417845f0ff8a77f539a4213ea", GitTreeState:"clean", BuildDate:"2018-11-26T14:31:35Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}