李耀宗
发布于:2022-03-12    本文总阅读量:

KubeKey 2.0.0 发布:让离线部署 Kubernetes 更加便捷

2022 年 3 月 8 日,KubeKey 2.0.0 正式发布,这是 KubeKey 的第 7 个正式版本,也是非常重要的一个版本。该版本新增了清单(manifest)和制品(artifact)的概念,为用户离线部署 Kubernetes 集群提供了解决方案。

KubeKey 简介

KubeKey 是 KubeSphere 社区开源的一款高效集群部署工具,运行时默认使用 Docker , 也可对接 Containerd CRI-O iSula 等 CRI 运行时,且 ETCD 集群独立运行,支持与 K8s 分离部署,提高环境部署灵活性。它提供了一种灵活、快速、便捷的方式来仅安装 Kubernetes/K3s,或同时安装 Kubernetes/K3s 和 KubeSphere,以及其他云原生插件。除此之外,它也是扩展和升级集群的有效工具。

传统的离线部署方式需要提前准备好部署工具,镜像 tar 包或者本地镜像仓库,以及其他相关的二进制文件,而每一位用户的需要部署的 Kubernetes 版本和需要部署的镜像都是不同的。而 KubeKey 只需要通过配置清单(即 manifest 文件)来定义将要离线部署的集群环境的内容,再通过该 manifest 来导出制品(artifact)即可完成准备工作。后续只需通过 KubeKey 和 artifact 就可以简单快速地在离线环境中部署 Kubernetes 集群和镜像仓库。

解读 KubeKey 2.0.0 重大更新

全新的任务编排框架

kubekey

基于模块化的设计思路,KubeKey v2.0.0 实现了通用且规范化的任务编排框架。其中定义了host, pipeline, module, taskaction等对象,实现了模块化的任务调度引擎。基于该框架,用户可根据具体需求及业务逻辑,便捷的开发自定义任务流水线执行程序以及扩展 KubeKey 原有的任务流水线。

相关文档可参考:开发者指南

更加方便的离线部署流程

KubeKey v2.0.0 中提供了一种全新的自定义离线部署 Kubernetes 集群的解决方案,为此新增了清单 manifest 和制品 artifact 的概念:

  • manifest:离线部署安装包自定义配置文件。
  • artifact:离线部署自定义安装包。

在过去,用户需要准备部署工具,镜像 tar 包以及其他相关的二进制文件,每位用户需要部署的 Kubernetes 版本和涉及到的镜像都可能是不同的。现在使用 KubeKey ,用户仅需使用清单 manifest 文件来定义将要离线部署的集群环境需要的内容,再通过该 manifest 来导出制品 artifact 文件即可完成准备工作。离线部署时只需要 KubeKey 二进制文件 和 artifact 就可快速、简单的在环境中部署镜像仓库、 Kubernetes 以及 KubeSphere。

离线部署相关文档可参考:

一键部署私有镜像仓库

KubeKey v2.0.0 可使用自签名证书部署 docker regisgry 或者 harbor,部署过程中会自动将证书分发至集群所有节点。并且该功能也支持离线部署,与 Kubernetes 集群离线部署结合实现闪电交付。

相关文档可参考:容器镜像仓库

新增部署配置项

  1. ISSUE #789:支持 Multus CNI 。
  2. ISSUE #811:支持 Kata 和 Node Feature Discovery 。
  3. PR #902:创建集群时默认开启 FeatureGates 。
  4. ISSUE #913:创建集群时默认关闭 SELINUX 。
  5. ISSUE #915:支持私有镜像仓库授权登陆。
  6. ISSUE #940:支持拉取和推送镜像时配置 namespaceOverride 。
  7. ISSUE #950:支持自定义 dnsDomain 。
  8. ISSUE #951:支持设置 NTPServer 和 timezone 。
  9. PR #992:创建集群时添加配置 pod 的 PID Limit 和 PID Available 。

更多更新内容可查看 GitHub Release

安装方式

获取最新正式版 KubeKey 的最快方法是通过命令行脚本:

curl -sfL https://get-kk.kubesphere.io | sh -

或者也可以前往 GitHub Release 页面,下载获取 KubeKey 2.0.0 的二进制文件。

致谢贡献者

以下是参与 KubeKey 2.0.0 代码与文档贡献的贡献者 GitHub ID,若此名单有遗漏请您与我们联系,排名不分先后。

  • 24sama
  • chaunceyjiang
  • haiker2011
  • life-
  • lvillis
  • pixiake
  • tanguofu
  • vincenthe11
  • yj-cloud

感谢以上贡献者在 KubeKey 2.0.0 开发中作出的贡献。KubeKey 是个非常年轻的开源项目,也是一个很有潜力的开源项目,欢迎更多的社区小伙伴加入到贡献者行列。

KubeKey GitHub 地址:https://github.com/kubesphere/kubekey/

KubeKey 相关内容参考

close

通过邮件接收 KubeSphere 最新的技术博客与产品更新的通知