10 月 23 - 25 日,QCon 上海站即将召开,现在大会已开始正式报名,可以享受 8 折优惠 了解详情
写点什么

15 分钟!在 Azure 上部署 Rancher 管理 Kubernetes

  • 2020-05-14
  • 本文字数:2219 字

    阅读完需:约 7 分钟

15分钟!在Azure上部署Rancher管理Kubernetes


Rancher 是一个开源的 Kubernetes 多集群操作和工作负载管理的解决方案。简而言之,您可以使用 Rancher 来统一部署和管理公有云(如 Azure、AWS、GCP 等)上的 Kubernetes 集群,它们可以是公有云托管的 Kubernetes 如 GCE、EKS、AKS,也可以是用户自己创建的集群。Rancher 还集成了许多第三方身份验证解决方案,诸如 Active Directory、Azure Active Directory、Github,还有 Splunk、Elasticsearch 或 Syslog 端点等日志解决方案。


关于通过 Terraform 在笔记本电脑或 AWS 上运行 Rancher,我找到了不少现成的的指令和设置脚本可以供用户直接使用,却发现关于 Azure + Rancher 的相关内容比较少。


我自己尝试后,成功地让我的 Rancher 环境在 Azure 上运行了。但我想,如果有一些准备好了的脚本或模板,可以让大家更快速地在 Azure 上启动 Rancher,那就更不错。我找到了一些其他人贡献的 ARM 模板来驱动 Rancher,但是他们部署的是旧版本的 Rancher,并且在模板中不清楚如何更新,以部署最新版本的 Rancher。于是我决定构建一些可用于在 Azure 上快速部署 Rancher、并将一个 Kubernetes 主机添加到 Rancher 的 ARM 模板。在我构建的这个 ARM 模板中,它将始终从 Docker Hub 中拉取 Rancher 容器,因此它能够保持始终部署了最新版本的 Rancher。在这篇文章中,我将详细说明如何让你的 Rancher 在 15 分钟内启动并运行。


首先,您可以在我的 Github 上找到 ARM 模板:


https://github.com/Buchatech/DeployRanchertoAzure


这个镜像库中包含了用于部署 Rancher 的 ARM 模板和用于 Kubernetes 的主机 VM。注意:我提供的这些模板可以供大家学习使用,但我不建议将其用于生产。


在 repo 中,名为 RancherNode.JSON 的 ARM 模板#1 将部署一个带 Docker 的 Ubuntu VM 以及最新版的 Rancher(https://hub.docker.com/r/rancher/rancher)。名为 RancherHost.JSON 的 ARM 模板#2 将部署带有 Docker 的 Ubuntu VM,用作为 Rancher 中的 Kubernetes 主机。

节点部署

通过“模版部署”或其他部署方法,将 RancherNode.JSON 的 ARM 模板部署到 Azure 订阅中。系统将提示您输入下面这张屏幕截图中显示的信息:


主机部署

通过“模板部署”或其他部署方法,将 RancherHost.JSON ARM 模板部署到 Azure 订阅中。需要注意的是,这个操作应该将 Rancher Host ARM 模版部署到和 Rancher Node ARM 模板的同一个资源组中。系统将提示您输入下面这张屏幕截图中显示的信息:



部署 Rancher Node 和 Rancher Host ARM 模板后,就可以在新资源组中看到以下资源了:



接下来,在 Web 浏览器中,打开 Rancher 门户。URL 是 Rancher Node VM 的 DNS 名称。如果你不知道 DNS 名称是什么,可以单击概述页面上 Azure 门户中的 Rancher Node VM。以下是 URL 的示例:


https://ranchernode.centralus.cloudapp.azure.com


Rancher 门户将提示您设置密码,就如下图所示:



设置好密码后,Rancher 门户将提示您输入正确的 Rancher Server URL。这将自动成为 Rancher Node VM DNS 名称。然后单击“保存 URL”。



保存之后,你就会登录到 Rancher 门户,然后看到集群页面。现在你可以向 Rancher 添加新的 Kubernetes 集群了。在这篇文章中,我将展示如何将集群添加到 Rancher Host VM。完成所有这一切后,Rancher 会成功地将 Kubernetes 部署到 Rancher Host VM。你也可以添加一个托管的 Kubernetes,例如 AKS,但这篇文章中我们暂时不演示这部分内容了。


单击“添加集群”



在“从我自己的现有节点”下,单击“自定义”,为集群命名,然后单击“下一步”。



接下来,检查节点选项的所有可选框,因为所有角色都将在单个 Kubernetes 集群上。复制页面底部显示的代码,单击“完成”,并在 Rancher 主机上运行代码。



要在 Rancher 主机上运行代码,您需要 SSH 并从那里运行它。请按照下列步骤操作:


  1. 在 Azure 门户中,在资源组中点击 Rancher Host VM。

  2. 在 Overview 页面上,单击 Connect。

  3. 稍后会弹出一个“连接到虚拟机”的屏幕,复制屏幕上的“ssh ranchuser@rancherhost.centralus.cloudapp.azure.com”。

  4. 通过 VS 代码,打开 Azure 云 shell 的终端或类似终端的终端,然后输入刚刚复制的“ssh ranchuser@rancherhost.centralus.cloudapp.azure.com”。



运行代码将如下所示:



完成后,运行 Docker PS,以查看 Rancher agent 容器是否正在运行:



在集群下的 Rancher 门户中,可以看到 Rancher 主机正在配置中:



当 Kubernetes 部署完成后,状态将发生变化:



完成配置后,Kubernetes 集群将处于“活跃”状态了:



现在我们可以看到这个新的 Kubernetes 集群的大量信息了。我们甚至可以从此处启动 Kubectl 并开始运行命令!你可以花点时间到处点击试试,看看有哪些是你使用 Kubernetes 时熟悉的东西。可以说 Rancher 是真正大幅简化了 Kubernetes 的管理体验,Cool!



如果要添加更多节点或再次需要配置代码,只需单击我下图框出的省略号按钮,然后进行编辑即可:



在“编辑集群”中,您可以更改集群名称、获取和更改设置、以及复制代码以将更多 VM 添加到集群中:



本文到此结束,欢迎在作者博客中了解更多有关 Azure、Kubernetes、Rancher 的技术文章:


http://www.buchatech.com


作者简介


Steve Buchanan,Avanade 云转型与 DevOps 团队主管。近 20 年的 IT 从业经验,出版过多本云和数据中心管理的技术书籍。从 2012 年起至今,Steve 连续 7 年成为微软 MVP,并在 2017 年获得过微软“25 ITSM Experts to Watch in 2017”和“IT Unity Community Champ”。


2020-05-14 22:26811

评论

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

【指针内功修炼】字符指针 + 指针数组 + 数组指针 + 指针参数(一)

Albert Edison

C语言 二维数组 9月月更 指针数组 数组指针

面试造火箭!连续轰炸50问,我却靠这些"java复习宝典"一一攻克!

收到请回复

Java 云计算 开源 架构 编程语言

华为云快成长直播间大数据&AI专场,加速经济物联网智能化提升

科技怪咖

7.07亿TPC-C背后的技术突破,OceanBase研究成果入选VLDB

OceanBase 数据库

“大厂”角力移动办公系统市场,钉钉和企微向左、WorkPlus向右

BeeWorks

变革加速,博睿数据赋能“中国智造”转型升级

博睿数据

可观测性 智能运维 博睿数据

Paper Time|开放式时空大数据助力智能公交路线规划

OceanBase 数据库

重磅!阿里首推内部“SpringCloudAlibaba项目文档”这细节讲解,封神!

收到请回复

Java 云计算 开源 架构 编程语言

京东金融客户端用户触达方式的探索与实践

京东科技开发者

京东 用户 用户触达 widget 推送

算法基础(二)| 高精度算法详解

timerring

算法 9月月更

FreeRTOS记录(八、用软件定时器?还是硬件定时器?)

矜辰所致

软件定时器 FreeRTOS 9月月更

WorkPlus移动应用管理平台 | 政企数字化的超级“连接器”

BeeWorks

私有化的即时通讯工具能为企业带来哪些帮助?

BeeWorks

MobLink Android 快速集成文档

MobTech袤博科技

sdk Android;

Databend 特性系列(1)|Databend 数据生命周期

Databend

大数据 大数据 开源 数据生命周期

关于用户 email 邮件地址是否允许有加号的问题

汪子熙

typescript 正则表达式 邮件 9月月更 输入校验

推荐|海泰国密通信安全解决方案 助力用户实现安全合规

电子信息发烧客

一文看懂:什么是CRM系统?有什么用?哪些公司在用?

优秀

CRM系统

新零售数智化转型,需要怎样的数据底座?

OceanBase 数据库

“双减”一年,如何让教育回归本质?

旺链科技

区块链 产业区块链 企业号九月金秋榜 教培行业

全新演绎!美团内部疯传Spring Boot速成手册也太香了叭!

收到请回复

Java 云计算 开源 架构 编程语言

带您了解昇腾模型压缩工具

华为云开发者联盟

人工智能 后端 企业号九月金秋榜

高并发之缓存

源字节1号

软件开发

阿里大佬力荐6篇实战文档:JVM+多线程+Kafka+Redis+Nginx+MySQL,你确定不看?

收到请回复

Java 云计算 开源 架构 编程语言

华为云快成长直播ERP专场,以数据驱动企业智慧变革

科技怪咖

如何设计企业级数据埋点采集方案?

字节跳动数据平台

数据分析 用户增长 埋点 数据应用 埋点设计

从零到一构建完整知识体系,阿里最新SpringBoot原理最佳实践真香

程序员小毕

Java spring 源码 面试 SpringBoot 2

小红书自研小程序:电商体验与效果优化的运行时体系设计

小红书技术REDtech

小程序 前端 小程序运行时

一文带你体验MRS HetuEngine如何实现跨源跨域分析

华为云开发者联盟

大数据 后端 企业号九月金秋榜

SpringBoot源码 | refreshContext方法解析

六月的雨在InfoQ

源码 springboot 源码阅读 9月月更 refreshContext

百度App Android启动性能优化-工具篇

百度Geek说

android 性能优化 企业号九月金秋榜

15分钟!在Azure上部署Rancher管理Kubernetes_文化 & 方法_Rancher_InfoQ精选文章