项目介绍

kubeasz旨在帮助您快速部署高可用的Kubernetes集群,并努力成为您的Kubernetes实践和使用的宝贵参考。我们采用二进制方式部署,并通过Ansible Playbook实现自动化,既提供了便捷的一键安装脚本,也支持按照详细的安装指南分步操作,灵活选择适合自己的组件。


从单个组件到整个集群,kubeasz提供了极其灵活的配置选项,几乎可以让您自定义任何组件的参数。同时,我们也为集群预设了一套经过验证的默认配置,确保一切运行顺畅。对于大规模集群,我们还特别设计了自动化的 BGP Route Reflector网络模式,让您的集群更加高效稳定。

项目特点

  • 集群特性Master高可用、离线安装、多架构支持(amd64/arm64)
  • 集群版本 kubernetes v1.24, v1.25, v1.26, v1.27, v1.28, v1.29, v1.30, v1.31, v1.32
  • 运行时 containerd v1.7.x, v2.0.x
  • 网络 calico, cilium, flannel, kube-ovn, kube-router

推荐版本对照

Kubernetes1.231.241.251.261.271.281.291.301.311.32
kubeasz3.2.03.6.23.6.23.6.23.6.23.6.23.6.33.6.43.6.53.6.6

可以支持大多数使用systemdLinux系统。

同时,还为您准备了详尽的安装指南手册以及各类组件的使用说明。

项目使用演示

  1. 下载项目源码、二进制及离线镜像。
export release=3.6.2
wget https://github.com/easzlab/kubeasz/releases/download/${release}/ezdown
chmod +x ./ezdown

  1. 建议您将离线包下载到本地计算机上。由于网络状况的影响,这个过程可能会有些慢,请耐心等待。下载完成后,我们推荐将其放置在 /etc/kubeasz 目录下,这样后续进行离线部署时会更加方便哦。
./ezdown -D
  1. 容器化运行kubeasz
./ezdown -S
docker exec -it kubeasz ezctl new k8s-01 # 创建新集群 k8s-01
sed -i 's/^INSTALL_SOURCE.*$/INSTALL_SOURCE: "offline"/g' /etc/kubeasz/example/config.yml  # 离线部署方式
  1. 修改hosts文件
vim /etc/kubeasz/clusters/k8s-01/hosts

[etcd]
16.32.15.116

[kube_master]
16.32.15.116 k8s_nodename='master-01'

[kube_node]
16.32.15.200 k8s_nodename='worker-01'

  1. 执行ansible剧本,安装K8S集群。
source ~/.bashrc
dk ezctl setup k8s-01 all

推荐阅读