作者简介
鞠宏超,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/harvester1.0/

一键启动

如果您是 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/autok3s/milestones

一切开源

感兴趣的用户可以通过 Github 获取更多文档信息:
https://github.com/cnrancher/autok3s
https://docs.rancher.cn/docs/k3s/autok3s/_index/

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

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

  • AutoK3s 0.4.0 发布 多云 K3s 管理的极简体验

  • 1款工具助力 Ranchere HA 快速部署,极速提升研发测试效率

  • AutoK3s+k3d,K3s 部署体验再升级

  • AutoK3s v0.4.4 发布,K3s 集群资源管理 so easy!

AutoK3s v0.4.8 发布 与 Harvester 梦幻联动相关推荐

  1. AutoK3s v0.5.0 发布 延续简约和友好

    作者简介 鞠宏超,SUSE SW Engineering,6 年云计算领域经验,先后参与了 Longhorn 产品研发.Rancher2.x 产品研发,目前主要致力于 Rancher 企业版产品设计与 ...

  2. Pytorch v0.4.1发布:添加频谱范数,自适应Softmax,优化CPU处理速度,添加异常检测NaN等

    Pytorch v0.4.1发布:添加频谱范数,自适应Softmax,优化CPU处理速度,添加异常检测(NaN等)以及支持Python 3.7和CUDA 9.2支持 一.目录 突破性的变化 新功能 神 ...

  3. Grinmw.py v0.1.1发布,支持Grin Wallet API V3和Grin Node API V2

    Grinmw.py v0.1.1发布.Grinmw.py是一个Python语言的包, 用于使用Python语言调用Grin-node/Grin-wallet API接口.目前已经用于Goblinpoo ...

  4. ipados远程linux软件,JingOS Linux平板系统v0.6下载发布 支持多点触摸手势

    原标题:JingOS Linux 平板系统 v0.6 下载发布:iPadOS 风格,附安装方法 1月29日消息 今年1月份,一款新的操作系统 JingOS 官网上线,官方介绍是全球首个 iPadOS ...

  5. 爬虫管理平台Crawlab v0.4.3发布(界面上点几下就可安装pip或npm依赖)

    前言 Crawlab 是一款受人欢迎的分布式通用爬虫管理平台,由 Crawlab 开发组 开发和维护.自去年 3 月份上线以来,Crawlab 因为极其强大的灵活性.简单精美的操作界面以及健壮而稳定稳 ...

  6. linux 网页另存为pdf,zhtmltopdf v0.2版发布 url页面转存为pdf或image扩展

    zhtmltopdf v0.2版发布 url页面转存为pdf或image扩展 发布时间:2014-06-05 21:24:24来源:红联作者:empast zhtmltopdf 是一个把 url页面转 ...

  7. Tekton实践篇-Tekton和Argocd的梦幻联动

    微信公众号:运维开发故事,作者:乔克 前面的一系列文章基本已经把Tekton相关的知识介绍完了,如果你认真的看完并且实践过,相信你对Tekton已经有一定的掌握了. 在实际的工作中,Tekton可以完 ...

  8. 世界杯梦幻联动.html

    世界杯梦幻联动.html <!doctype html> <html> <head> <meta charset="utf-8"> ...

  9. 世界杯网页梦幻联动.html

    世界杯网页梦幻联动代码如下 <!doctype html> <html> <head> <meta charset="utf-8"> ...

  10. Star Trek强势来袭 开启元宇宙虚拟与现实的梦幻联动

    火爆的元宇宙概念,让Web 3.0世界的样子终于在人们的脑海中逐步变得清晰起来.随着大量资产.人才的入场,整个社会都开始了加速的进步,各类技术也开始逐步围绕着Web 3.0.元宇宙.NFT的开始发展, ...

最新文章

  1. Linux下*.tar.bz2等文件如何解压--转
  2. [c++] vector<vector<int>>排序
  3. 强大的Mockito测试框架(转)
  4. rust挖油机怎么整_挖掘机发动机进气管断裂该怎么办?
  5. delphi中的ParamStr
  6. 【Linux基础】crontab定时命令详解
  7. 内置对象和自定义对象的原型链
  8. 在 Windows Azure 上部署预配置 Oracle VM
  9. 喝什么汤对肝脏有好处?
  10. 403 常见原因 java_科普 httpClient 403 Forbidden (JAVA方向分析)
  11. 前端通过ajax请求一次性上传多张图片到后台
  12. HDF5: 读写速度与文件的大小
  13. 1.100个房产测量常见问题  2. 现有的商用房产测绘软件 3.问题_拔剑-浆糊的传说_新浪博客...
  14. 宝塔php7.1安装ioncube,如何使用宝塔安装ionCube扩展
  15. 打了两分钟国际长途,我又得给手机充话费了
  16. vs.Net2003无法打开或创建Web应用程序若干解决办法
  17. 合阔智云核心生产系统切换到服务网格 ASM 的落地实践
  18. C++入门到精通。(五、C++的运算符。)
  19. Categories各种举例
  20. vs2010 无法启动程序 系统找不到指定的文件

热门文章

  1. SQL注入-04-(最后有实战教学)关系注入逻辑注入
  2. 订单超时自动取消 java_springboot 支付订单超时自动处理
  3. 路由器回执路由配置_路由器接路由器设置详细图文教程
  4. 575. 分糖果【我亦无他唯手熟尔】
  5. Kruise Rollout v0.2.0 版本发布:支持 Gateway API、StatefulSet 分批发布等能力
  6. linux yum vsftpd,CentOS 7 使用Yum方式安装配置vsftpd服务
  7. java异常处理(Exception handing)机制
  8. selenium-java 实现QQ音乐自动登录获取cookie数据,爬取qq音乐会员资源和网易云音乐会员资源。实现任意网站的会员资源爬取
  9. android 自定义星级评分控件
  10. 1894 Beckham’s Freekick