OCP3.5到3.6在线升级步骤概要
笔者前两天将笔记本实验环境的OpenShift3.5升级到3.6。由于我采取在线升级方式,步骤并不复杂,大致步骤如下
(https://docs.openshift.com/container-platform/3.6/install_config/upgrading/automated_upgrades.html#preparing-for-an-automated-upgrade):
升级之前查看版本:
开始准备升级,master和所有的node都需要执行:
在master执行,选择第二项:
确认升级:
接下来,开始升级步骤:
过了一段时间,升级成功。升级成功以后,重启所有节点。
查看OCP和K8S版本:
查看OCP节点状态:
查看docker版本:
UI登录OCP 3.6:
备注:我升级OCP的时候,在家里升级,因此访问cdn有时候不稳定,出现较多如下报错:
后来修改docker配置文件后,问题有所缓解(所有节点反注释如下行,然后重启docker服务):
vi /etc/sysconfig/docker
升级以后代码构建失败
笔者将笔记本实现环境的OpenShift从3.5升级到3.6以后,原有项目中的pod build失败:
查看构建失败原因:
查看详细信息:
Failed to pull image "172.30.28.70:5000/grey2/v1@sha256:a0a737c874226b2cee1ffd692ebffe20a0001688d5111657effde900d0946bb0": rpc error: code = 2 desc = Get https://172.30.28.70:5000/v2/: dial tcp 172.30.28.70:5000: getsockopt: no route to host
Build失败的原因是:代码构建成功后,将image向docker-registry push的时候失败。
为了验证docker-registry是否存在问题,接下来手工登录docker-registry,查看能否手工push一个镜像上去。
先查看docker-registry的IP:
这时候,发现docker-registry的IP以后发生了变化,不是报错显示的172.30.28.70旧IP。
没关系,先手工登录docker-registry容器。
第一步,登录master:
第二步:获取token:
第三步:登入docker-registry
登录失败,报错如下:
docker login -u admin -p A2diqg_Lsthnm8180s7NR2c1QzHJMf3fx67rhsxyCAs 172.30.76.236:5000
Error response from daemon: Get https://172.30.76.236:5000/v1/users/: http: server gave HTTP response to HTTPS client
经过搜索和查询,在互联网上搜到了线索(问题面描述和我遇到的非常类似):
参考该文档,在左右的节点修改配置文件: /etc/sysconfig/docker,增加如下内容:
然后在所有节点上重启docker服务:
接下来,再次尝试登陆docker-registry,登陆成功:
第四步:将本地docker镜像库的一个docker image打tag:
先用docker images找一个小一点的镜像:
打tag:
然后向docker-registry push镜像:
可以成功,说明目前docker-registry没问题。
再次出发代码build,依然报错。问题依旧:
Failed to pull image "172.30.28.70:5000/grey2/v1@sha256:a0a737c874226b2cee1ffd692ebffe20a0001688d5111657effde900d0946bb0": rpc error: code = 2 desc = Get https://172.30.28.70:5000/v2/: dial tcp 172.30.28.70:5000: getsockopt: no route to host
此时,尝试查看bc中是否有旧的docker-registry的IP,没有找到:
因此怀疑缓存中的docker-registry依然是旧IP,重启OCP的master和node IP:
再次手工触发代码构建,成功!
问题解决!
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有