继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

OpenShift 升级指南

幕布斯6054654
关注TA
已关注
手记 1303
粉丝 221
获赞 1015

概述

openshift-ansible 为 OpenShift Origin 集群提供了方便的升级手册,在主版本之间进行升级绝大部分没有问题。但请注意,从测试版(如 3.7.0-rc.0 -> 3.7.0)或者小版本(3.6.0 -> 3.6.1)升级时会有问题。

OpenShift Origin 版本和 openshift-ansible 分支的对照关系表如下:

Origin/OCPOpenShift-Ansible versionopenshift-ansible branch
1.3 / 3.33.3release-1.3
1.4 / 3.43.4release-1.4
1.5 / 3.53.5release-1.5
3.X3.Xrelease-3.x

官方的升级文档请访问 https://docs.openshift.org/latest/install_config/upgrading/index.html

主版本升级

主版本之间除 3.7 到 3.9 版本之间允许跨版本进行升级之外,其他主版本之间不允许跨版升级,具体见如下表格:

版本从版本至备注
3.6.x3.7
3.7.x3.8需手工设置 3.8 的 YUM 源
3.7.x3.9需手工设置 3.8 的 YUM 源
3.8.x3.9

通用升级步骤

我们以 3.6 升级至 3.7 为例来说明。

更新版本标识

编辑 ansible 配置文件 /etc/ansible/hosts 并将以下属性并修改为 3.7 版本的相应值。

#openshift_release=3.6openshift_release=3.7

运行升级手册

ansible-playbook /path/to/openshift-ansible/playbooks/byo/openshift-cluster/upgrades/v3_7/upgrade.yml

注意

Origin 3.7 版本以后默认会启用 Service Catalog 和 Template Service Broker 这两个组件。以目前国内的网络情况看,他们可能在安装前后都不会正常的工作,因此建议在升级前禁用它们。具体做法就是在 /etc/ansible/hosts 里面加入以下设置:

openshift_enable_service_catalog=falsetemplate_service_broker_install=false

跨版本升级

OpenShift 唯一一次允许跨版本升级是从 3.7.x 升级至 3.9,据官方文档描述,这个升级过程分为两个阶段:

  1. 从 3.7.x 升级到 3.8

  2. 从 3.8 升级到 3.9

全程自动升级,无需手工干预。不过,从笔者的升级实践上看,社区版进行升级时会由于未自动启用 3.8 的 YUM 软件源而升级失败,提示 Package 'origin-3.8*' not found 的错误。因此在升级之前,我们需要手工设置一下 Origin 3.8 的 YUM 软件源。

设置 Origin 3.8 软件源

将文件 CentOS-OpenShift-Origin38.repo 复制到目录 /etc/yum.repos.d/ 下。文件内容如下:

[centos-openshift-origin38]
name=CentOS OpenShift Origin
baseurl=http://mirror.centos.org/centos/7/paas/x86_64/openshift-origin38/
enabled=1gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-PaaS

[centos-openshift-origin38-testing]
name=CentOS OpenShift Origin Testing
baseurl=http://buildlogs.centos.org/centos/7/paas/x86_64/openshift-origin38/
enabled={{ 1 if openshift_repos_enable_testing else 0 }}
gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-PaaS

[centos-openshift-origin38-debuginfo]
name=CentOS OpenShift Origin DebugInfo
baseurl=http://debuginfo.centos.org/centos/7/paas/x86_64/enabled=0gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-PaaS

[centos-openshift-origin38-source]
name=CentOS OpenShift Origin Source
baseurl=http://vault.centos.org/centos/7/paas/Source/openshift-origin38/
enabled=0gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-PaaS

更新版本标识

编辑 ansible 配置文件 /etc/ansible/hosts 并将以下属性并修改为 3.7 版本的相应值。

openshift_release=3.9

运行升级手册

# 切换至 3.9 分支cd /path/to/openshift-ansible
git checkout release-3.9# 运行升级手册ansible-playbook playbooks/byo/openshift-cluster/upgrades/v3_9/upgrade.yml

小版本升级

小版本升级一般不需要变更 Ansible 的 hosts 文件,除非读者在之前的安装时强制指定了 openshift_image_tag 或者 openshift_pkg_version 这两个变量,那么您可能需要手工指定两个版本值或者直接去掉它们。

升级时读者仅需要找到当前主版本对应的升级手册运行即可。我们以 3.7 为例,最开始安装的时候,ansible 自动找到了明细的版本为 3.7.0,后面社区推出了小版本升级包 3.7.1,这时读者仅需要运行 3.7 对应的升级手册即可:

ansible-playbook /path/to/openshift-ansible/playbooks/byo/openshift-cluster/upgrades/v3_7/upgrade.yml

         

             




作者:莫失已忘
链接:https://www.jianshu.com/p/9f8e2497ee78


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP