diff --git a/README.md b/README.md
index c54e681..85c95d1 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
项目致力于提供快速部署高可用`k8s`集群的工具, 同时也努力成为`k8s`实践、使用的参考书;基于二进制方式部署和利用`ansible-playbook`实现自动化;既提供一键安装脚本, 也可以根据`安装指南`分步执行安装各个组件。
-- **集群特性** `TLS`双向认证、`RBAC`授权、[多Master高可用](docs/setup/00-planning_and_overall_intro.md#ha-architecture)、支持`Network Policy`、备份恢复、[离线安装](docs/setup/offline_install.md)
+- **集群特性** `TLS`双向认证、`RBAC`授权、[Master高可用](docs/setup/00-planning_and_overall_intro.md#ha-architecture)、支持`Network Policy`、[离线安装](docs/setup/offline_install.md)
- **集群版本** kubernetes v1.21, v1.22, v1.23, v1.24
- **操作系统** CentOS/RedHat 7, Debian 9/10, Ubuntu 16.04/18.04/20.04
- **运行时** [containerd](docs/setup/containerd.md) v1.6.4, docker 20.10.x (k8s < 1.24)
@@ -11,8 +11,6 @@
**[news]** kubeasz 通过cncf一致性测试 [详情](docs/mixes/conformance.md)
-**[news]** 群里大佬上新一套免费[kubernetes架构师课程](https://www.toutiao.com/c/user/token/MS4wLjABAAAA0YFomuMNm87NNysXeUsQdI0Tt3gOgz8WG_0B3MzxsmI/?tab=article),强烈推荐!
-
推荐版本对照
@@ -35,7 +33,7 @@
3.1.0 |
3.1.1 |
3.2.0 |
- 3.3.0 |
+ 3.3.1 |
@@ -44,8 +42,6 @@
单机快速体验k8s集群的测试环境--[AllinOne部署](docs/setup/quickStart.md)
-- 命令行工具 [ezctl介绍](docs/setup/ezctl.md)
-
## 安装指南
@@ -104,6 +100,7 @@
- 微信群:k8s&kubeasz实践, 搜索微信号`badtobone`, 请备注(城市-github用户名), 验证通过会加入群聊。
- 推荐阅读
+ - [kubernetes架构师课程](https://www.toutiao.com/c/user/token/MS4wLjABAAAA0YFomuMNm87NNysXeUsQdI0Tt3gOgz8WG_0B3MzxsmI/?tab=article)
- [kubernetes-the-hard-way](https://github.com/kelseyhightower/kubernetes-the-hard-way)
- [feisky-Kubernetes 指南](https://github.com/feiskyer/kubernetes-handbook/blob/master/SUMMARY.md)
- [opsnull 安装教程](https://github.com/opsnull/follow-me-install-kubernetes-cluster)
diff --git a/docs/mixes/conformance.md b/docs/mixes/conformance.md
index 5c53b25..0536dbf 100644
--- a/docs/mixes/conformance.md
+++ b/docs/mixes/conformance.md
@@ -8,6 +8,7 @@ Cheers!
自kubeasz 3.0.0 版本,k8s v1.20.2开始,正式通过cncf一致性认证,成为cncf 官方认证安装工具;后续k8s主要版本发布或者kubeasz有大版本更新,会优先确保通过集群一致性认证。
+- v1.24 [已认证](https://github.com/cncf/k8s-conformance/tree/master/v1.24/kubeasz)
- v1.23 [已认证](https://github.com/cncf/k8s-conformance/tree/master/v1.23/kubeasz)
- v1.22 [已认证](https://github.com/cncf/k8s-conformance/tree/master/v1.22/kubeasz)
- v1.21 [已认证](https://github.com/cncf/k8s-conformance/tree/master/v1.21/kubeasz)
diff --git a/docs/setup/containerd.md b/docs/setup/containerd.md
index 9306e3f..f764ea7 100644
--- a/docs/setup/containerd.md
+++ b/docs/setup/containerd.md
@@ -8,6 +8,7 @@
## kubeasz 集成安装 containerd
+- 注意:k8s 1.24以后,项目已经设置默认容器运行时为 containerd,无需手动修改
- 安装前修改配置文件,在clusters/xxxx/hosts 中修改全局变量 `CONTAINER_RUNTIME="containerd"`
- 其他正常执行安装即可:分步安装`ezctl setup xxxx 03`,一键安装`ezctl setup xxxx all`
diff --git a/docs/setup/offline_install.md b/docs/setup/offline_install.md
index 65eae44..884b21c 100644
--- a/docs/setup/offline_install.md
+++ b/docs/setup/offline_install.md
@@ -1,28 +1,35 @@
# 离线安装集群
-kubeasz 2.0.1 开始支持**完全离线安装**,目前已测试 `Ubuntu1604|1804` `CentOS7` `Debian9|10` 系统。
+kubeasz 2.0.1 开始支持**完全离线安装**,目前已支持 `Ubuntu1604|1804|2004` `CentOS7` `Debian9|10` 系统。
## 离线文件准备
在一台能够访问互联网的服务器上执行:
-- 下载工具脚本ezdown,举例使用kubeasz版本3.0.0
+- 下载工具脚本ezdown,举例使用kubeasz版本3.3.1
``` bash
-export release=3.0.0
+export release=3.3.1
wget https://github.com/easzlab/kubeasz/releases/download/${release}/ezdown
chmod +x ./ezdown
```
-- 使用工具脚本下载
+- 使用工具脚本下载(更多关于ezdown的参数,运行./ezdown 查看)
-默认下载最新推荐k8s/docker等版本(更多关于ezdown的参数,运行./ezdown 查看)
+下载kubeasz代码、二进制、默认容器镜像
``` bash
+# 国内环境
./ezdown -D
```
-- 可选下载离线系统包 (适用于无法使用yum/apt仓库情形)
+下载额外容器镜像(cilium,flannel,prometheus等)
+
+``` bash
+./ezdown -X
+```
+
+下载离线系统包 (适用于无法使用yum/apt仓库情形)
``` bash
./ezdown -P
@@ -35,19 +42,15 @@ chmod +x ./ezdown
- `/etc/kubeasz/down` 包含集群安装时需要的离线容器镜像
- `/etc/kubeasz/down/packages` 包含集群安装时需要的系统基础软件
-离线文件不包括:
-
-- 管理端 ansible 安装,但可以使用容器化方式运行 kubeasz 安装命令
-- 其他更多 kubernetes 插件镜像
-
## 离线安装
-上述下载完成后,把`/etc/kubeasz`整个目录复制到目标离线服务器相同目录,然后在离线服务器上运行:
+上述下载完成后,把`/etc/kubeasz`整个目录复制到目标离线服务器相同目录,然后在离线服务器/etc/kubeasz目录下执行:
-- 离线安装 docker,检查本地文件,正常会提示所有文件已经下载完成
+- 离线安装 docker,检查本地文件,正常会提示所有文件已经下载完成,并上传到本地私有镜像仓库
```
./ezdown -D
+./ezdown -X
```
- 启动 kubeasz 容器
diff --git a/docs/setup/quickStart.md b/docs/setup/quickStart.md
index 709971b..94caa7f 100644
--- a/docs/setup/quickStart.md
+++ b/docs/setup/quickStart.md
@@ -1,34 +1,43 @@
## 快速指南
-以下为快速体验k8s集群的测试、开发环境--单节点部署(aio),国内环境下比官方的minikube方便、简单很多。
+本文档适用于kubeasz 3.3.1以上版本,部署单节点集群(aio),作为快速体验k8s集群的测试环境。
### 1.基础系统配置
- 准备一台虚机配置内存2G/硬盘30G以上
-- 最小化安装`Ubuntu 16.04 server`或者`CentOS 7 Minimal`
+- 最小化安装`Ubuntu 16.04 server或者CentOS 7 Minimal`
- 配置基础网络、更新源、SSH登录等
**注意:** 确保在干净的系统上开始安装,不能使用曾经装过kubeadm或其他k8s发行版的环境
### 2.下载文件
-- 下载工具脚本ezdown,举例使用kubeasz版本3.0.0
+- 下载工具脚本ezdown,举例使用kubeasz版本3.3.1
``` bash
-export release=3.0.0
+export release=3.3.1
wget https://github.com/easzlab/kubeasz/releases/download/${release}/ezdown
chmod +x ./ezdown
```
-- 使用工具脚本下载
+- 使用工具脚本下载(更多关于ezdown的参数,运行./ezdown 查看)
-默认下载最新推荐k8s/docker等版本(更多关于ezdown的参数,运行./ezdown 查看)
+下载kubeasz代码、二进制、默认容器镜像
``` bash
+# 国内环境
./ezdown -D
+# 海外环境
+#./ezdown -D -m standard
```
-- 可选下载离线系统包 (适用于无法使用yum/apt仓库情形)
+【可选】下载额外容器镜像(cilium,flannel,prometheus等)
+
+``` bash
+./ezdown -X
+```
+
+【可选】下载离线系统包 (适用于无法使用yum/apt仓库情形)
``` bash
./ezdown -P
@@ -43,7 +52,7 @@ chmod +x ./ezdown
### 3.安装集群
-- 容器化运行 kubeasz,详见ezdown 脚本中的 start_kubeasz_docker 函数
+- 容器化运行 kubeasz
```
./ezdown -S
@@ -53,6 +62,8 @@ chmod +x ./ezdown
```
docker exec -it kubeasz ezctl start-aio
+# 如果安装失败,查看日志排除后,使用如下命令重新安装aio集群
+# docker exec -it kubeasz ezctl setup default all
```
### 4.验证安装
@@ -75,14 +86,4 @@ $ kubectl get svc -A # 验证集群服务状态
在宿主机上,按照如下步骤清理
- 清理集群 `docker exec -it kubeasz ezctl destroy default`
-- 清理运行的容器 `./ezdown -C`
-- 清理容器镜像 `docker system prune -a`
-- 停止docker服务 `systemctl stop docker`
-- 删除docker文件
-```
- umount /var/run/docker/netns/default
- umount /var/lib/docker/overlay
- rm -rf /var/lib/docker /var/run/docker
-```
-
-上述清理脚本执行成功后,建议重启节点,以确保清理残留的虚拟网卡、路由等信息。
+- 重启节点,以确保清理残留的虚拟网卡、路由等信息
diff --git a/example/config.yml b/example/config.yml
index f8f96cb..85d132b 100644
--- a/example/config.yml
+++ b/example/config.yml
@@ -7,15 +7,6 @@ INSTALL_SOURCE: "online"
# 可选进行系统安全加固 github.com/dev-sec/ansible-collection-hardening
OS_HARDEN: false
-# 设置时间源服务器【重要:集群内机器时间必须同步】
-ntp_servers:
- - "ntp1.aliyun.com"
- - "time1.cloud.tencent.com"
- - "0.cn.pool.ntp.org"
-
-# 设置允许内部时间同步的网络段,比如"10.0.0.0/8",默认全部允许
-local_network: "0.0.0.0/0"
-
############################
# role:deploy
@@ -98,9 +89,6 @@ KUBE_RESERVED_ENABLED: "no"
# 另外,集群安装时候apiserver等资源占用会短时较大,建议至少预留1g内存
SYS_RESERVED_ENABLED: "no"
-# haproxy balance mode
-BALANCE_ALG: "roundrobin"
-
############################
# role:network [flannel,calico,cilium,kube-ovn,kube-router]
@@ -189,7 +177,7 @@ nfs_server: "192.168.1.10"
nfs_path: "/data/nfs"
# network-check 自动安装
-network_check_enabled: true
+network_check_enabled: false
network_check_schedule: "*/5 * * * *"
############################
diff --git a/roles/chrony/defaults/main.yml b/roles/chrony/defaults/main.yml
new file mode 100644
index 0000000..e59e10a
--- /dev/null
+++ b/roles/chrony/defaults/main.yml
@@ -0,0 +1,8 @@
+# 设置时间源服务器【重要:集群内机器时间必须同步】
+ntp_servers:
+ - "ntp1.aliyun.com"
+ - "time1.cloud.tencent.com"
+ - "0.cn.pool.ntp.org"
+
+# 设置允许内部时间同步的网络段,比如"10.0.0.0/8",默认全部允许
+local_network: "0.0.0.0/0"