k8s中imagePullSecrets

在k8s部署私有镜像时,部分node出现拉取失败的情况。问题出在服务配置文件未设置imagePullSecrets。当服务分布在多个namespace下,每个namespace都需要创建对应的secret。解决方案包括正确配置imagePullSecrets和确保secret已在所有相关namespace下创建。
摘要由CSDN通过智能技术生成

在k8s集群的使用过程中,初学者可能会碰到这样的(怪异)问题:
在一个k8s集群里,部署服务(用的私有镜像仓库,如harbor)的时候,只有个别node的服务是部署成功的,其他都是部署失败的,错误的原因就是镜像拉取失败,如下:

kubectl get pods -A -owide |grep jenkins-demo
devlopment     jenkins-demo-67d4f9d666-2fh8k            1/1     Running            0          27m     10.244.2.40     local-k8s-nd02   <none>           <none>
devlopment     jenkins-demo-dbc9f5b6b-h78tx             0/1     ImagePullBackOff   0          6m4s    10.244.6.93     local-k8s-nd03   <none>           <none>
production     jenkins-demo-dbc9f5b6b-tnkfs             1/1     Running            0          5m47s   10.244.2.44     local-k8s-nd02   <none>           <none>
qatest         jenkins-demo-67d4f9d666-hb22t            1/1     Running            0          27m     10.244.2.41     local-k8s-nd02   <none>           <none>
qatest         jenkins-demo-dbc9f5b6b-d6
k8s使用http拉取Harbor镜像的步骤如下: 1. 首先,进入K8S内部,需要配置Docker以允许使用http拉取镜像。你可以使用命令`docker --insecure-registry <Harbor地址>`来配置。这将允许K8S使用http协议从Harbor仓库拉取镜像。 2. 接下来,你需要在K8S添加一个Secret,以提供拉取镜像时的认证信息。你可以使用`kubectl create secret docker-registry <Secret名称> --docker-server=<Harbor地址> --docker-username=<用户名> --docker-password=<密码> --docker-email=<邮箱>`命令来创建Secret。确保替换尖括号的信息为实际的值。这个Secret将被用来进行认证,以便从Harbor仓库拉取镜像。 3. 在Deployment配置,你需要添加一个`imagePullSecrets`字段,以与之前创建的Secret进行认证。在你的Deployment配置文件找到`spec`字段,并在其添加以下内容: ``` spec: imagePullSecrets: - name: <Secret名称> ``` 确保替换尖括号的信息为你之前创建的Secret的名称。这样,K8S将使用这个Secret进行认证,以拉取来自Harbor仓库的镜像。 4. 最后,你需要使用NodePort方式创建Service,并在K8S的机器上进行测试服务。使用NodePort方式创建Service时,可以通过访问K8S的节点IP和指定的NodePort端口来访问服务。这样,你就可以测试从Harbor拉取的镜像在K8S集群是否成功部署。 请按照上述步骤进行配置,以使用http协议从Harbor仓库拉取镜像并部署SpringBoot服务。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [K8S如何以http方式拉取私有镜像仓库Harbor部署SpringBoot服务](https://blog.csdn.net/Xin_101/article/details/124445591)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值