OpenShift 4 之集群是如何通过Cluster Version Operator升级的?

59 篇文章 2 订阅
4 篇文章 0 订阅

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)
。。。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 OpenShift 中配置访问内网的外部代理需要以下几步: 1. 在 OpenShift 集群中配置代理服务器,以便路由对内网的请求。 2. 在集群中的容器中配置 HTTP_PROXY 环境变量,以便使用代理服务器进行网络请求。 3. 在容器中更新代理配置文件,以指定要使用的代理服务器。 4. 验证代理配置是否生效,以确保可以访问内网。 请注意,上述步骤仅是大致流程,具体的步骤可能因集群环境和代理服务器的不同而有所差异。建议您在实施前仔细阅读相关文档和说明,以确保您使用的配置是正确和安全的。 ### 回答2: 要在OpenShift中配置访问内网的外部代理,可以按照以下步骤进行操作: 1. 首先,在OpenShift集群中创建一个用于访问内网的外部代理服务。这可以是一个独立的代理服务器或者其他设备,具体取决于你的环境。确保该代理服务已经正确配置,并可以访问内网资源。 2. 在OpenShift集群中创建一个命名空间,用于部署和管理代理应用。 3. 编写一个Dockerfile,用于创建一个基于OpenShift的镜像,该镜像能够启动代理应用。在Dockerfile中,可以指定代理服务的地址和端口,以便应用能够正确连接到代理。 4. 构建镜像,并将其推送到OpenShift的内部镜像仓库。 5. 创建一个Deployment配置文件,用于在OpenShift集群中部署代理应用。在配置文件中,指定刚才推送到仓库的镜像,并将其部署到之前创建的命名空间。 6. 配置代理应用的路由,以便可以从集群外部访问该应用。可以使用OpenShift的路由功能来实现。确保路由的目标端口与代理应用的端口一致。 7. 最后,将OpenShift集群的出口流量路由到代理应用。这可以通过OpenShift的网络策略功能来实现。配置网络策略,允许来自OpenShift集群的流量通过代理应用进行转发。 通过以上步骤,你就可以在OpenShift中配置访问内网的外部代理。 ### 回答3: 要在OpenShift上配置访问内网的外部代理,可以按照以下步骤进行操作: 1. 登录到OpenShift集群的Master节点上,并使用root或有sudo权限的用户执行以下命令,编辑OpenShift默认的路由配置文件: ```shell vi /etc/origin/master/master-config.yaml ``` 2. 在`routingConfig`部分添加以下代码块,以配置代理: ```yaml routingConfig: proxyRedirect: false subdomain: "" location: "" httpProxy: "http://proxy.example.com:8080" # 修改为你的代理地址和端口 httpsProxy: "http://proxy.example.com:8080" noProxy: "localhost,127.0.0.1,.example.com" # 修改为不需要代理的内网地址,多个地址使用逗号分隔 ``` 3. 保存并关闭文件。 4. 重启OpenShift Master服务以使更改生效: ```shell systemctl restart origin-master.service ``` 5. 配置完成后,OpenShift的路由将会通过指定的代理进行访问内网资源。 注意事项: - `httpProxy`和`httpsProxy`的地址和端口需要替换为你实际使用的代理服务器地址和端口。 - `noProxy`用于指定不需要代理的内网地址,多个地址之间使用逗号分隔。 - 如果没有权限修改OpenShift Master配置文件,可以联系集群管理员进行配置。 - 要确保代理服务器能够访问到内网资源,并且OpenShift节点能够通过代理服务器进行访问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值