OpenShift 4 之集群是如何通过Cluster Version Operator升级的?
OpenShift 4 的升级服务提供了"over-the-air"特性来对OpenShift集群以及底层的Linux进行升级,这其中最关键的是使用了CVO(Cluster Version Operator)实现对自动对集群环境进行升级。 CVO会首先根据当前环境查看是否有合法的升级版本,以及基于当前版本的升级路径,当CVO发现新版本后会将升级配置传递给Machine Config Operator,MCO主要负责对节点主机进行管理,主机环境(包括CoreOS和OCP)的升级只能是通过MCO完成。
为了不影响业务连续运行,MCO是通过滚动的方式让每个节点升级。每个节点的升级过程是由Machine Config Daemons完成的,它首先下载升级介质,然后再进行节点升级操作。
我们可以通过以下方式查看CVO的运行状态。当关闭了CVO的时候,数量全部为“0”,此时OpenShift集群就无法升级了。
$ oc get deployments -n openshift-cluster-version
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
cluster-version-operator 1 1 1 1 2h
可以通过以下方式查看CVO的运行日志,其中包括了“Started”,“Desired”,“Finished”等不同状态。
$ oc logs deployments/cluster-version-operator -n openshift-cluster-version > operatorlog.txt
$ tail operatorlog.txt
。。。
I0514 20:48:20.887420 1 cvo.go:336] Started syncing cluster version "openshift-cluster-version/version" (2019-05-14 20:48:20.88740786 +0000 UTC m=+87191.276686302)
I0514 20:48:20.887478 1 cvo.go:364] Desired version from operator is v1.Update{Version:"4.1.0-rc.3", Image:"quay.io/openshift-release-dev/ocp-release@sha256:713aae8687cf8a3cb5c2c504f655
32dfe11e1b3534448ea9eeef5b0931d3e208", Force:false}
I0514 20:48:20.887574 1 cvo.go:338] Finished syncing cluster version "openshift-cluster-version/version" (162.252µs)
I0514 20:48:35.887466 1 cvo.go:336] Started syncing cluster version "openshift-cluster-version/version" (2019-05-14 20:48:35.887452731 +0000 UTC m=+87206.276731165)
I0514 20:48:35.887651 1 cvo.go:364] Desired version from operator is v1.Update{Version:"4.1.0-rc.3", Image:"quay.io/openshift-release-dev/ocp-release@sha256:713aae8687cf8a3cb5c2c504f655
32dfe11e1b3534448ea9eeef5b0931d3e208", Force:false}
I0514 20:48:35.887738 1 cvo.go:338] Finished syncing cluster version "openshift-cluster-version/version" (280.777µs)
I0514 20:48:50.887443 1 cvo.go:336] Started syncing cluster version "openshift-cluster-version/version" (2019-05-14 20:48:50.887431061 +0000 UTC m=+87221.276709496)
I0514 20:48:50.887516 1 cvo.go:364] Desired version from operator is v1.Update{Version:"4.1.0-rc.3", Image:"quay.io/openshift-release-dev/ocp-release@sha256:713aae8687cf8a3cb5c2c504f655
32dfe11e1b3534448ea9eeef5b0931d3e208", Force:false}
I0514 20:48:50.887675 1 cvo.go:338] Finished syncing cluster version "openshift-cluster-version/version" (239.797µs)
。。。
OpenShift 4 之集群是如何通过Cluster Version Operator升级的?相关推荐
- 在CentOS上配置Percona XtraDB集群(Percona XtraDB Cluster)
原作者:Percona官网 翻译&转载来源:https://www.percona.com/doc/percona-xtradb-cluster/LATEST/howtos/centos_ho ...
- DM8守护集群(主备)数据库补丁升级操作
概述 本文介绍在测试环境对DM8守护集群数据库补丁升级操作相关内容. 一.升级集群介绍 1.1升级集群架构说明 本次升级守护集群架构如下图,有A.B.C三台机器,分别是主库.备库和监视器. 1.2集群 ...
- OpenShift 4 - 为集群配置镜像签名功能,只能运行被签名的本地镜像
<OpenShift 4.x HOL教程汇总> 说明:本文已经在OpenShift 4.8环境中验证 文章目录 配置签名环境 安装镜像签名的Operator 为集群指定签名用的 sigst ...
- OpenShift 4 - 在集群节点用crictl对Pod/Image/Container进行操作
<OpenShift 4.x HOL教程汇总> 说明:本文已经在OpenShift 4.6环境中验证 文章目录 查看crictl命令的配置文件 用crictl命令操作Pod/Image/C ...
- OpenShift 4 - 设置集群节点和Pod容器的时间和时区
<OpenShift 4.x HOL教程汇总> 说明:本文已经在OpenShift 4.6环境中验证 文章目录 OpenShift的时间和时区 节点和容器的时间 节点和容器的时区 节点时间 ...
- tomcat集群 (自带Cluster集群)
不用借助其他任何工具,tomcat自身就可以实现session共享,实现集群.以下为大概步骤 1,如果是在同一台机器上,请保持多个tomcat端口(一个tomcat对应三个端口)不相同:如果是不同机器 ...
- Spark练习 - 提交作业到集群 - submit job via cluster
Created by Wang, Jerry, last modified on Sep 12, 2015 start-master.sh ( sbin folder下) then ps -aux 7 ...
- redis集群 + 哨兵 + zookeeper_Redis05——Redis Cluster 如何实现分布式集群
前面一片文章,我们已经说了Redis的主从集群及其哨兵模式.本文将继续介绍Redis的分布式集群. " 在高并发场景下,单个Redis实例往往不能满足业务需求.单个Redis数据量过大会 ...
- 计算机集群英语怎么说,cluster是什么意思_cluster的翻译_音标_读音_用法_例句_爱词霸在线词典...
全部 丛生 群聚 a diamond cluster ring 群镶钻戒 朗文当代高级英语词典 第6版 a cluster of stars 星团 牛津词典 The plant bears its f ...
最新文章
- Android学习书籍参考
- 实战matlab之并行程序设计.pdf,实战Matlab之并行程序设计_IT教程网
- localBlock在java_将java.util.Date转换为java.time.LocalDate
- mysql创建非聚集索引_一文看懂聚集索引和非聚集索引的区别
- MySQL的distinct:去重
- ASP.NET Core MVC 之依赖注入 View
- android html 启动app,Android js交互 与 Html启动App
- 今天,我辞职了,35岁对测试员的影响究竟有多大?
- [转载] Python字符串解析
- 计算机组装与配置答案,解答电脑组装配置有哪些
- js,vue 上传图片前压缩图片(无损压缩,保持在2M以内)
- C语言构造有理数的函数,创建有理数对象
- P1919 FFT加速高精度乘法
- 堆漏洞挖掘:19---_lib_malloc函数源码详解
- 倒计时!「一起学」大会线下分享与社群内部直播!
- CentOS7.5 重装 SSH 与 禁止网卡休眠
- 什么是熵(entropy)?
- 使用sqlite数据库和tkinter实现用户和管理员的登录系统以及图书管理系统
- C#参数详解一(形参和实参)
- Java-11-访问字符串中字符与字符串长度
热门文章
- 子集和问题 算法_LeetCode 90 | 经典递归问题,求出所有不重复的子集II
- 2维数组 qt_Qt编写地图综合应用11-动态添加
- prometheus命令_Prometheus+Grafana 基础及简单搭建
- zipkin使用_我的Spring Cloud(十):Zipkin 服务跟踪
- c语言表达式10 6的结果,C语言表达式(++i)+(++i)+(++i)结果多少?
- 在保护继承中基类的共有成员_C++学习刷题13--继承的实现、继承的方式
- 呼叫 :邓伦粉丝!手机桌面壁纸来喽
- 看看如何有效地在你的设计工作中使用霓虹色?
- UI历练素材|成功,少不了的临摹进阶
- 计算机高级技师考试题,高级技师考试题及答案.doc