AutoK3s v0.4.8 发布 与 Harvester 梦幻联动

网友投稿 249 2022-11-03

AutoK3s v0.4.8 发布 与 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 中文文档:Portal:

$ curl -sS | 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

服务启动后,打开浏览器,输入地址(UI。

​创建集群​

在使用之前,我们需要提前搭建好一个 Harvester 集群,并且准备好可以访问这个集群的 Kubeconfig 文件(需要 cluster-admin 权限)。如果你有多套 Harvester 集群,AutoK3s 可以根据 Kubeconfig 配置切换在不同 Harvester 集群联动的效果。

接下来,我们将要在 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?

在新弹出的页面中获取 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。

​一切开源​

感兴趣的用户可以通过 Github 获取更多文档信息:

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

关于 AutoK3s 更多特性,请查看:

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

​​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:mybatis TypeHandler注入spring的依赖方式
下一篇:基于液晶面板走势FPGA的脑机接口实时系统的分析与实验
相关文章

 发表评论

暂时没有评论,来抢沙发吧~