查看原文
其他

Rancher 2.3实现K8S一键式升级!再也不用同步升级Rancher啦!

KINARA SHAH RancherLabs 2019-12-18

R

明天晚上8点30,第一期在线培训课程《Rancher 2.3快速概览Demo》准时开播,赶紧报名参与吧!


在Rancher 2.3之前,Rancher的新版本总是随着Kubernetes的新版本一起发布,如果你想要使用最新版本的Kubernetes,那么你需要先升级Rancher才能使用。Rancher 2.3改变了这一模式——现在,可以为可用的Kubernetes版本更新元数据存储,从而使Rancher服务器的升级过程与Kubernetes集群的升级过程解耦。


Kubernetes 版本控制


关于发行版的版本控制在Kubernetes文档中已经有详细的介绍,值得一提的是,每个Kubernetes的版本都遵循X.Y.Z的格式:


  • X=主要版本

  • Y=次要版本

  • Z=修复版本(补丁版本)


Kubernetes社区大致每三个月会发布一个次要版本(1.14->1.15),这些发行的版本会更新许多所需功能以及改进。尽管被标记为“次要版本”,但这些版本依旧十分重要!


补丁版本(1.15.1->1.15.2)的更新会更加频繁并且十分重要,因为它们包含了及其重要的安全性和适用于最新次要版本的bug修复。它们解决了:


  • 安全漏洞

  • 修复影响大部分用户无法解决的问题

  • 基于Kubernetes的客户和产品拦截


Kubernetes官方希望集群将“合理地”更新到生产环境中,并且“大致”运行的是最新补丁版本。他们可以同时发布三个次要版本。这一切意味着,如果你的Kubernetes版本在最新版本后面有一些补丁版本,此时如果你想知道“何时才是升级集群的最佳时机”,那么答案可能是尽早升级以确保集群安全可靠。如果你的Kubernetes版本后面有几个次要版本,那么答案是在升级路径变得困难之前,应该现在就升级。


而Rancher努力通过实现“一键升级”以使这一过程变得简单和易于管理。在Rancher 2.3之前,Rancher的新版本始终适配Kubernetes最新的补丁版本。重要的安全修复已移植到新发布的版本,因此Rancher升级后即可使用Kubernetes新的补丁版本。


K8s版本和Rancher版本的解耦


在Rancher 2.3之前的版本中,将Rancher启动的集群升级到最新版本的Kubernetes需要两个步骤:


1、 升级Rancher server

2、 在下游集群中升级Kubernetes版本


现在,一切都不一样了。在Rancher 2.3中,你可以直接升级Kubernetes集群到最新版本,并且无需升级Rancher。因为,在Rancher 2.3中解耦了Rancher中的Kubernetes元数据。


Rancher部署的集群运行RKE,这是Rancher的一款开源的Kubernetes发行版,它可以让你在任意地方运行Docker。在Rancher 2.3之前,启动不同Kubernetes版本的信息存储在不同的地方。这个数据与代码库中的数据接近,因此更新任一值都需要发布一个新的Rancher版本。没有一个位置可以让系统访问需要传递给集群的值。Rancher 2.3重构了整个方法以满足以下需求:


  • 将Kubernetes元数据持续交付给兼容的Rancher server

  • 清晰地将所有元数据组件映射到Kubernetes版本

  • 可以从Rancher API轻松访问所有内容

  • 离线设置的可用性和支持路径

  • 使启用或禁用升级程序、设置升级中使用的值易于配置


请注意:Kubernetes API会在两个次要版本之间更改,因此升级次要版本不一定能成功。例如,在Kubernetes 1.15中 API发生了重大更改,而在你的Rancher server中支持的最高版本是Kubernetes 1.14,如果此时你想要升级Kubernetes到1.15版本的话,需要升级Rancher以支持Kubernetes 1.15。


Rancher元数据


Rancher定期同步和下载元数据,这些数据不能直接从UI中获取,但是用户可以在API里查看。



RKE元数据配置决定了Rancher同步元数据的频率以及下载数据的位置。你可以从UI的【设置】下找到,也可以通过API的/v3/settings/rke-metadata-config这个路径获取。它包括以下选项:



当然,你也可以选择手动更新,操作地址在右上角:Tools > Drivers > Refresh Kubernetes Metadata。对于离线设置,可以选择将URL配置复制到默认的Rancher元数据存储库。你也可以下载包含所需系统镜像的文件,只需点击Rancher UI左下角的Rancher版本即可下载。


运作方式如下:


Rancher v2.3.0一开始默认可选择以下Kubernetes版本:



Kubernetes发布了1.15.5版本,修复了一个重要的CVE,而我们目前的版本1.15.4受到安全漏洞的影响。



Rancher测试团队会测试新版本,让其可以在Rancher中使用。用户仅需通过选择Tools > Drivers > Refresh Kubernetes Metadata即可更新元数据。



最新的Kubernetes版本(1.14.8、1.15.5和1.16.2)现在在同一个Rancher版本(v2.3.0)中可以使用。



通过这一更改,你可以按计划保证集群处于最新状态,而与Rancher发布Rancher server新版本的时间无关。


Rancher一向致力于让Kubernetes的各个方面都变得简单,并且我们将继续添加更多功能以及进行更多优化,我们希望收到你的反馈。欢迎扫码添加文末小助手的微信号与我们联系,分享你的想法!


还想了解更多Rancher 2.3版本的新功能欢迎参加我们明天晚上的免费在线培训课程噢,报名及观看链接:

http://mudu.tv/watch/3976729



推荐阅读

零基础教程!一文教你使用Rancher 2.3和Terraform运行Windows容器

生产用例 | 百台边缘设备上的Kubernetes实践

kubectl+HPA!提升K8S容器资源利用的关键解决方案

About Rancher Labs


Rancher Labs由CloudStack之父梁胜创建。旗舰产品Rancher是一个开源的企业级Kubernetes管理平台,实现了Kubernetes集群在混合云+本地数据中心的集中部署与管理。Rancher一向因操作体验的直观、极简备受用户青睐,被Forrester评为2018年全球容器管理平台领导厂商,被Gartner评为2017年全球最酷的云基础设施供应商。


目前Rancher在全球拥有超过一亿的下载量,并拥有包括中国人寿、华为、中国平安、兴业银行、民生银行、平安证券、海航科技、厦门航空、上汽集团、海尔、米其林、丰田、本田、中船重工、中联重科、迪斯尼、IBM、Cisco、Nvidia、辉瑞制药、西门子、CCTV、中国联通等全球著名企业在内的共27000家企业客户。

点击阅读原文,即可传送到培训现场

↓↓↓

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存