AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

如何在 Rancher 2.2 Preview2 上部署和管理多 K8s 集群应用

  • 2020-04-23
  • 本文字数:1811 字

    阅读完需:约 6 分钟

如何在Rancher 2.2 Preview2上部署和管理多K8s集群应用

近日,全球领先的容器管理软件供应商 Rancher Labs 宣布,其旗舰产品 Rancher——开源的企业级 Kubernetes 管理平台——最新版本Rancher 2.2 Preview 2全面发布,这一版本包含了许多在 K8S 集群操作的强大特性。


您可以通过访问发布页面(https://rancher.com/products/rancher/2.2/)和发布说明(https://github.com/rancher/rancher/releases/tag/v2.2.0-alpha6)来了解所发布的新功能。


本文将介绍其中一个特性:多集群应用(multi-cluster applications),下面将为您介绍,该特性将如何显著减少您的工作量,并提高多集群操作的可靠性。

概览

假如您有用过 k8s,并且有两个及以上的集群运维经验,那么您遇到下面的情况:


  • 当跨多个可用区部署(AZs)时,应用需要具有更高的容错性;

  • 在具有数百个集群的边缘计算场景中,同一个应用需要在多个集群上运行。


在高可靠性的情况下,运维操作人员通常通过将节点从多个可用区纳入到一个集群内来降低单个可用区不可用风险。但是这个方案的问题在于,虽然抵抗了可用区故障,但是防不住集群本身故障,集群故障的可能性高于可用区故障,而且一旦集群出故障后,可能会影响集群中在运行的程序。


另外一种方法是,每个可用区中运行单独的集群,病症每个集群上运行应用程序的副本。相当于每个可用区都有一套 k8s 集群,但是每个集群手动维护应用程序成本高,又易错。


边缘计算场景跟多可用区集群相同的问题:应用程序手动维护,既耗时,又容易出错,即使运维团队给力,创建了复杂的脚本来部署和升级,但是又多了一个故障点,而且这些脚本也需要升级和维护,并且要求负责的运维人员不仅要编写流程(升级发版流程),还要在脚本失败时能够转成人肉运维。


从 Rancher 2.2 Preview 2 (https://github.com/rancher/rancher/releases/tag/v2.2.0-alpha6)开始,Rancher 支持在任意数量的 k8s 集群中同时部署和升级同一应用程序的副本。


同时也扩展了基于 Helm 软件包管理器的应用商店(Application Catalogs),在此之前,应用商店仅适用于单个集群,我们在全局级别增加了一个附加功能,权限允许的情况下,可以将应用程序部署到 Rancher 管理的任意集群上。


有关 Rancher 2.2 Preview2 的功能的完整演示,请保持关注,我们将在 3 月推出全新一季的在线培训,届时将提供新功能的演示,并在 Q&A 环节进行答疑。


下面将演示,在 Rancher 中如何便捷的管理多集群应用。

功能快速入门

  • 登陆 Rancher 后,将看到纳管的所有集群的列表,同时在菜单栏新增了一个【多集群应用(Multi-Cluster Apps)】 的按钮


  • 单击 多集群应用 按钮后,将看到两个按钮,【管理 Catalogs】和【启动】。【管理 Catalogs】将跳到【应用商店(Catalogs) 】的管理页,您开源在其中启用主要 Helm repo 或者添加其他第三方 Helm repo。

  • 单击【启动】按钮以启动新应用程序。


  • 从显示的可以部署的应用中,选择 Grafana(用于演示)。


  • 按照要求配置详细信息,使用表单或者直接用提供 YAML 进行配置。注意,在此处的设置将应用到部署此应用程序的集群中。


  • 在【配置选项】下,在【Target(目标) 】下拉框中选择目标集群的指定项目。


  • 选择升级策略。此处为了演示,我们将选择【滚动更新】并提供每批 1 个,间隔 20 秒。此设置可以确保以后升级应用时,一次只更新一个集群,并且每个集群升级操作的间隔为 20 秒。


  • 如果要调整集群间的差异,可以在【Answer Overrides】部分进行设置。


  • 一切准备妥当,点击底部【启动】,然后将跳到结果页,显示刚刚已安装的多集群应用(此处是演示用的 Grafana)。每个应用将显示当前状态和目标集群以及项目列表。


  • 当应用程序可以升级时,应用状态将显示【Upgrade Available】。

  • 要启动升级,请单击应用上的菜单按钮(三个点的菜单),然后选择升级。



  • 验证是否已选择【滚动更新】选项。

  • 更改一些设置,然后点击底部的【升级】按钮。


打开目标集群的【工作负载】选项卡,将看到其中一个状态更改为更新 ,此集群中的应用将被更新,然后 Rancher 将暂停 20s(刚刚设置的间隔时间),然后继续更新下一个集群的应用。

总结

多集群应用程序将减少运维团队的工作量,并使跨集群快速可靠的部署和升级应用成为可能。


要在实验室或者开发环境中测试这些功能,请安装最新的 Alpha 版本(https://rancher.com/docs/rancher/v2.x/en/installation/server-tags/#helm-chart-repositories),如果有任何反馈意见,请在 Github 上提交 Issues 或者加入论坛(https://forums.rancher.com/)或 Slack(https://slack.rancher.io/) 。


2020-04-23 17:23695

评论

发布
暂无评论
发现更多内容

用了Fabric.js后突然想到了...

为自己带盐

实时音视频 Fabric.js 9月月更

云对象 - 重新定义前后端交互

Java-fenn

Java

内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档

Java-fenn

Java

VS Code加码Java生产力,IDEA危险了

Java-fenn

Java

Docker常用命令原理与实战

Java-fenn

java;

C++ STL deque 容器底层实现原理(深度剖析)

C++后台开发

容器 后端开发 C++后台开发 C++开发 C++ STL

干货 | 初窥 Pytest 测试框架,基础薄弱也能轻松 hold 住

霍格沃兹测试开发学社

2022年哪些工具适合设计企业产品手册?

Baklib

产品 产品手册

设备健康管理平台如何为企业打造五大核心设备管理体系?

PreMaint

企业设备管理 预测性维护 设备健康管理

一文带你弄懂Kubernetes应用配置管理时间

Java-fenn

java;

干货 | 一文搞定 Docker 容器技术与常用命令

霍格沃兹测试开发学社

【9.2-9.9】写作社区精彩技术博文回顾

InfoQ写作社区官方

优质创作周报

透过Redis源码探究Hash表的实现,你学废了吗?

Java快了!

Java 进阶 (八)Java 加密技术之对称加密、非对称加密、不可逆加密算法

Java-fenn

Java

干货 | web自动化总卡在文件上传和弹框处理上?

霍格沃兹测试开发学社

让泛型的思维扎根在脑海——深刻理解泛型时间

Java-fenn

Java

这份数据安全自查checklist请拿好,帮你补齐安全短板的妙招全在里面!

Java-fenn

java;

干货 | REST-assured 获取日志到文件并结合 Allure 报告进行展示

霍格沃兹测试开发学社

详谈 MySQL 8.0 原子 DDL 原理

Java-fenn

Java

从负载均衡到路由,微服务应用现场一键到位

Java-fenn

Java

openGauss内核分析:SQL by pass & 经典执行器

Java-fenn

Java

干货 | 一文搞定 uiautomator2 自动化测试工具使用

霍格沃兹测试开发学社

有哪些方法可以提高企业的文档管理水平?

Baklib

文档 文档管理

知识管理,知识经济时代必不可缺的工具

Baklib

知识管理 知识 知识经济

龙蜥开发者说:海纳百川,有容乃大,我在龙蜥社区的升级之旅 | 第 11 期

OpenAnolis小助手

开源 Linux内核 sig 龙蜥开发者说 epbf

干货 | JavaScript脚本注入,完成Selenium 无法做到的那些事

霍格沃兹测试开发学社

干货 | Web自动化测试中显式等待与隐式等待该怎么用?

霍格沃兹测试开发学社

干货 | 仅需4步,即可用 Docker搭建测试用例平台 TestLink

霍格沃兹测试开发学社

干货 | 一改测试步骤代码就全写?为什么不试试用 Yaml实现数据驱动?

霍格沃兹测试开发学社

Go 语言创始人:复制亿点点代码比用别人轮子好!

Java-fenn

java;

同事多线程使用不当导致OOM,被我怒怼了

Java-fenn

Java

如何在Rancher 2.2 Preview2上部署和管理多K8s集群应用_文化 & 方法_Rancher_InfoQ精选文章