乐趣区

关于kubernetes:AutoK3s-v048-发布-与-Harvester-梦幻联动

作者简介
鞠宏超,SUSE SW Engineering,6 年云计算畛域教训,先后参加了 Longhorn 产品研发、Rancher2.x 产品研发,目前次要致力于 Rancher 企业版产品设计与研发工作,AutoK3s 的外围维护者。

AutoK3s 是一款 K3s 集群自动化部署工具,能够不便开发者自助治理多云环境中的 K3s 集群。之前的版本反对了 AWS/Aliyun/Tencent/Google 四个支流私有云,同时能够帮忙开发者治理本地 K3d 集群。

最新的 v0.4.8 版本个性预览:

  • 反对 Harvester Provider,用户能够在 Harvester 上疾速创立虚拟机,并主动搭建 K3s 集群。
  • 反对 Google Provider,用户能够在 GCE 上疾速创立虚拟机,并主动搭建 K3s 集群,同时反对主动部署 Google K8s Cloud Provider(CCM)。
  • 加强 Native Provider 个性,用户当初能够在 UI 上治理和保护 Native 模式创立的 K3s 集群。

本文将基于最新的 v0.4.8 版本,为大家介绍如何实现 AutoK3s 与 Harvester 的梦幻联动。

本文所应用的环境版本信息:

PS:如果您还未搭建过 Harvester 集群,能够查看 Harvester 的相干介绍或拜访 Harvester 中文文档:http://docs.rancher.cn/harves…

一键启动

如果您是 Linux 或者 MacOS 用户,能够应用以下脚本装置 AutoK3s,并启动 UI Portal:

$ curl -sS http://rancher-mirror.cnrancher.com/autok3s/install.sh  | INSTALL_AUTOK3S_MIRROR=cn sh

$ autok3s serve

或者应用 Docker 一键启动 UI Portal: 

# 规范 Linux 环境,应用以下命令
$ docker run -itd --restart=unless-stopped --net=host -v /var/run/docker.sock:/var/run/docker.sock cnrancher/autok3s:v0.4.7

# MacOS 环境,应用以下命令
$ docker run -itd --restart=unless-stopped -p 8080:8080 -v /var/run/docker.sock:/var/run/docker.sock cnrancher/autok3s:v0.4.7

服务启动后,关上浏览器,输出地址(http://127.0.0.1:8080),拜访 UI。

创立集群

在应用之前,咱们须要提前搭建好一个 Harvester 集群,并且筹备好能够拜访这个集群的 Kubeconfig 文件(须要 cluster-admin 权限)。如果你有多套 Harvester 集群,AutoK3s 能够依据 Kubeconfig 配置切换在不同 Harvester 集群联动的成果。

以 Rancher v2.6.3 为例,应用管理员用户登录后,点击左上角菜单,抉择全局利用 > 虚拟化治理,抉择要操作的某个 Harvester 集群,点击右侧下拉按钮,获取 Kubeconfig:

接下来,咱们将要在 UI 上应用 Harvester Provider,通过 Kubeconfig 配置指定咱们要操作的 Harvester 集群,并在这个 Harvester 集群上创立两个虚拟机,并主动启动由 1 个 master 和 1 个 worker 节点组成的 K3s 集群。

集群配置信息如下:

  • Instance Options 中,咱们设置 2C/4G/40G 大小的虚拟机,Image Name 设置为 Ubuntu 20.04 镜像,Network Name 设置为咱们创立好的 VLAN 网络,以便 AutoK3s 能够从内部 SSH 连贯到虚拟机中;后面获取的 Kubeconfig 内容也一并填写到表单对应地位中:

  • K3s Options 中,K3s Install Script 抉择中国区 mirror 的下载链接,能够减速装置 K3s 集群:

配置信息实现当前,点击创立按钮,期待集群创立实现。

集群创立实现后,能够通过 SSH 性能连贯到 Harvester 虚拟机中。在下面的例子中,咱们配置了 cloud-init 模板,在启动虚拟机的时候,装置了 curl 及 jq 工具。这样,在连贯虚拟机后就能够间接应用 jq 工具了。

集群创立实现后,您能够应用 Launch Kubectl 性能,间接操作 K3s 集群的资源;也能够开启 kube-explorer 性能,从精简的 explorer UI 来治理 K3s 集群的资源;这些应用体验与其余 provider 的都是统一的。

拜访 Harvester 环境,咱们能够在虚拟机列表页面中查看到通过 AutoK3s 创立进去的虚拟机信息。

在此场景下,您能够基于 Harvester 与 AutoK3s 构建本人的公有 K8s 云环境;您能够联合 cloud-init 模板,在虚拟机初始化时做更多的筹备,例如提前写入代理配置文件、提前下载所需镜像等操作;更多乏味的应用场景期待您的挖掘。

小贴士:

Q:如何获取 Harvester 中的资源信息,并填写到 AutoK3s 配置参数中,例如 Image Name?
A:您能够拜访 Harvester Dashboard,找到您要应用的 Image 资源,点击右侧的下拉按钮,抉择在 API 中查看 (View in API)

在新弹出的页面中获取 JSON 构造体的 id 属性值,即为您须要填写的参数内容。

集群治理

最近,咱们总结了社区用户应用过程中较频繁遇到的 issue,v0.4.8 版本加强了 Native provider 个性,应用体验与其余 Provider 保持一致,用户能够在集群列表页面治理 Native Cluster 了。

在 Native 模式下,主机信息由用户自行保护,所以 Native 模式仅反对对 K3s 集群的搭建、卸载、SSH 连贯到指定主机,不负责主机的生命周期治理。

后续布局

在下个版本中,AutoK3s 将集成 Kubeapp,减少对 Helm repo 的反对,用户能够一键部署 Helm Chart 到不同的集群中,例如通过 AutoK3s 一键搭建 K3s 集群并部署 Rancher。咱们还会减少对 K3s 集群降级体验的反对,不便用户降级 K3s 集群版本。

AutoK3s 的将来指标是为开发者打造一款自服务的 K3s 管理工具,等同于更加轻量的 Rancher。

想理解第一手性能布局,请点击:https://github.com/cnrancher/…

所有开源

感兴趣的用户能够通过 Github 获取更多文档信息:
https://github.com/cnrancher/… 
https://docs.rancher.cn/docs/…

AutoK3s 是纯正面向开发者的一款小工具,并非企业级产品。如果您在应用过程中遇到问题,或者您有好的意见,欢送提交 issue;如果您喜爱咱们,请点亮 star。

对于 AutoK3s 更多个性,请查看:

  • AutoK3s 0.4.0 公布 多云 K3s 治理的极简体验
  • 1 款工具助力 Ranchere HA 疾速部署,极速晋升研发测试效率
  • AutoK3s+k3d,K3s 部署体验再降级
  • AutoK3s v0.4.4 公布,K3s 集群资源管理 so easy!

AutoK3s 将于近期举办直播,敬请期待!

退出移动版