mirror of https://github.com/easzlab/kubeasz.git
parent
ecbacdf7b6
commit
44f32434f6
31
README.md
31
README.md
|
@ -5,9 +5,8 @@
|
|||
**kubeasz** 从每一个单独部件组装到完整的集群,提供最灵活的配置能力,几乎可以设置任何组件的任何参数;同时又为集群创建预置一套运行良好的默认配置,甚至自动化创建适合大规模集群的[BGP Route Reflector网络模式](docs/setup/network-plugin/calico-bgp-rr.md)。
|
||||
|
||||
- **集群特性** [Master高可用](docs/setup/00-planning_and_overall_intro.md#ha-architecture)、[离线安装](docs/setup/offline_install.md)、[多架构支持(amd64/arm64)](docs/setup/multi_platform.md)
|
||||
- **集群版本** kubernetes v1.22, v1.23, v1.24, v1.25, v1.26
|
||||
- **操作系统** CentOS/RedHat 7/8, Debian 9/10, Ubuntu 16.04/18.04/20.04/22.04
|
||||
- **运行时** [containerd](docs/setup/03-container_runtime.md) v1.6.x, docker 20.10.x (k8s < 1.24)
|
||||
- **集群版本** kubernetes v1.24, v1.25, v1.26, v1.27
|
||||
- **运行时** [containerd](docs/setup/03-container_runtime.md) v1.6.x
|
||||
- **网络** [calico](docs/setup/network-plugin/calico.md), [cilium](docs/setup/network-plugin/cilium.md), [flannel](docs/setup/network-plugin/flannel.md), [kube-ovn](docs/setup/network-plugin/kube-ovn.md), [kube-router](docs/setup/network-plugin/kube-router.md)
|
||||
|
||||
|
||||
|
@ -19,25 +18,37 @@
|
|||
<thead>
|
||||
<tr>
|
||||
<td>Kubernetes version</td>
|
||||
<td>1.22</td>
|
||||
<td>1.23</td>
|
||||
<td>1.24</td>
|
||||
<td>1.25</td>
|
||||
<td>1.26</td>
|
||||
<td>1.27</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>kubeasz version</td>
|
||||
<td>3.1.1</td>
|
||||
<td>3.2.0</td>
|
||||
<td>3.3.4</td>
|
||||
<td>3.4.5</td>
|
||||
<td>3.5.2</td>
|
||||
<td>3.3.5</td>
|
||||
<td>3.4.6</td>
|
||||
<td>3.5.3</td>
|
||||
<td>3.6.0</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
## 支持系统
|
||||
|
||||
- **Alibaba Linux** 2.1903, 3.2104([notes](docs/setup/multi_os.md#Alibaba))
|
||||
- **Alma Linux** 8, 9
|
||||
- **Anolis OS** 8.x RHCK, 8.x ANCK([notes](docs/setup/multi_os.md#Anolis))
|
||||
- **CentOS/RHEL** 7, 8, 9
|
||||
- **Debian** 10, 11([notes](docs/setup/multi_os.md#Debian))
|
||||
- **Fedora** 34, 35, 36, 37
|
||||
- **openSUSE** Leap 15.x([notes](docs/setup/multi_os.md#openSUSE))
|
||||
- **Rocky Linux** 8, 9
|
||||
- **Ubuntu** 16.04, 18.04, 20.04, 22.04
|
||||
|
||||
能够支持大部分使用systemd的linux发行版,如果安装有问题先请查看[文档](docs/setup/multi_os.md);如果某个能够支持安装的系统没有在列表中,欢迎提PR 告知。
|
||||
|
||||
## 快速指南
|
||||
|
||||
单机快速体验k8s集群的测试环境--[AllinOne部署](docs/setup/quickStart.md)
|
||||
|
|
|
@ -8,6 +8,8 @@ Cheers!
|
|||
|
||||
自kubeasz 3.0.0 版本,k8s v1.20.2开始,正式通过cncf一致性认证,成为cncf 官方认证安装工具;后续k8s主要版本发布或者kubeasz有大版本更新,会优先确保通过集群一致性认证。
|
||||
|
||||
- v1.27 [进行中]()
|
||||
- v1.26 [已认证](https://github.com/cncf/k8s-conformance/tree/master/v1.26/kubeasz)
|
||||
- v1.25 [已认证](https://github.com/cncf/k8s-conformance/tree/master/v1.25/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)
|
||||
|
|
|
@ -1,60 +0,0 @@
|
|||
## kubeasz-3.0.0 (the Beginning of Spring)
|
||||
|
||||
2021春快到了,kubeasz带来全新3.x版本,是继2.x基础上做了一些小优化和创新,力求更加整洁和实用。主要更新点:
|
||||
|
||||
### 优化多集群创建、管理逻辑
|
||||
|
||||
根目录新增 clusters 子目录,用于存放不同集群的配置;现在 ezctl 命令行天然支持多集群管理操作,统一创建、管理,互不影响;建议deploy节点独立出来,具体集群创建、管理操作可以参考 docs/setup/ezctl.md
|
||||
|
||||
### 配置集中,组件版本统一设置
|
||||
|
||||
模版配置文件 example/config.yml 是把原先 roles/xxxx/defaults/main.yml 配置合并后的全局配置文件;每创建一个集群会从这个模版派生一个实例集群的配置文件到 clusters/xxxx/config.yml;
|
||||
|
||||
ezdown 脚本统一设置组件、镜像版本;自动替换clusters/xxxx/config.yml 全局配置中相关版本
|
||||
|
||||
### 增加默认部署 node local dns
|
||||
NodeLocal DNSCache在集群的上运行一个dnsCache daemonset来提高clusterDNS性能和可靠性。在K8S集群上的一些测试表明:相比于纯coredns方案,nodelocaldns + coredns方案能够大幅降低DNS查询timeout的频次,提升服务稳定性
|
||||
|
||||
参考官方文档:https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/
|
||||
|
||||
### 客户端 kubeconfig 管理【强烈推荐】
|
||||
|
||||
经常遇到有人问某个kubeconfig(kubectl)泄露了怎么办?不同权限的kubeconfig怎么生成?这里利用cfssl签发自定义用户证书和k8s灵活的rbac权限绑定机制,ezctl 命令行封装了这个功能,非常方便、实用。
|
||||
|
||||
详细使用参考 docs/op/kcfg-adm.md
|
||||
|
||||
### 更新 prometheus安装部署,自动集成安装
|
||||
|
||||
参考 example/config.yml 配置和 roles/cluster-addon/templates/prometheus/values.yaml.j2 模版配置文件,详细使用文档待更新
|
||||
|
||||
### 其他主要更新
|
||||
|
||||
- 更新支持 ansible 2.10.4
|
||||
- 更新系统加固 os-harden 7.0.0
|
||||
- 更新traefik 安装部署(helm charts)
|
||||
|
||||
### 组件更新
|
||||
|
||||
- k8s: v1.20.2, v.1.19.7, v1.18.15, v1.17.17
|
||||
|
||||
### 集群安装
|
||||
|
||||
- ca 安全管理,所有证书都在deploy节点创建后推送到需要的节点
|
||||
- 移除 netaddr (pip安装) 依赖
|
||||
- 修复ansible group命名不规范问题(group 'kube-node' --> group 'kube_node')
|
||||
- 更新 kube-ovn to 1.5.3 #958
|
||||
- 调整cluster-addon安装方式
|
||||
- 修复 calico 网络 backend 设置为 vxlan none 时,calico 部署失败 #959
|
||||
- 调整默认nodePort范围为30000-32767
|
||||
- 修复 calico backend config #973
|
||||
- 修复 restore an etcd cluster #973
|
||||
- 修复带自定义变量时增加/删除节点可能失败
|
||||
|
||||
### 工具脚本
|
||||
|
||||
- ezdown 替换原 tools/easzup
|
||||
- ezctl 替换原 tools/easzctl
|
||||
|
||||
### 文档
|
||||
|
||||
- 大量文档更新(部分未完成)
|
|
@ -1,34 +0,0 @@
|
|||
## kubeasz-3.0.1 (Pure Brightness)
|
||||
|
||||
清明降至,踏青郊游,祭祖缅怀。kubeasz 3.0.1 版本发布,主要更新点:
|
||||
|
||||
### 技术上通过k8s一致性认证的所有测试项
|
||||
|
||||
kubeasz 用户可以确认集群各项功能符合预期,既符合k8s设计标准;下一步会继续走流程正式申请成为官方认证的部署工具;正式PR在此:https://github.com/cncf/k8s-conformance/pull/1326。
|
||||
|
||||
### 推荐群里大佬的k8s架构师免费视频课程
|
||||
|
||||
作者花很多心思和精力去构思文档、视频录制,并且把工作中的实践经验分享出来;值得参考学习
|
||||
|
||||
https://www.toutiao.com/c/user/token/MS4wLjABAAAA0YFomuMNm87NNysXeUsQdI0Tt3gOgz8WG_0B3MzxsmI/?tab=article
|
||||
|
||||
### 更新harbor 安装流程
|
||||
重写 harbor 安装流程,利用easzlab/harbor-offline:v2.1.3 仓库加速离线安装文件下载,增加可选安装组件。
|
||||
|
||||
|
||||
### 组件更新
|
||||
|
||||
- k8s: v1.20.5, v.1.19.9, v1.18.17
|
||||
- docker: 20.10.5
|
||||
- dashboard: v2.2.0
|
||||
- harbor: v2.1.3
|
||||
|
||||
### 集群安装
|
||||
|
||||
- 修复默认集群内部dns域名后缀
|
||||
- 调整etcd集群配置参数
|
||||
- 更新kube-scheduler部署使用配置文件 kube-scheduler-config.yaml
|
||||
- 更新集群存储插件 nfs-provisioner
|
||||
- 修复安装外部负载均衡服务 ./ezctl setup ${集群名} ex-lb
|
||||
- 修复清理LB(haproxy/keepalived)服务可能报错问题
|
||||
- 修复worker节点安装时无法推送dnscache镜像
|
|
@ -1,52 +0,0 @@
|
|||
## kubeasz-3.1.0 (Grain Rain)
|
||||
|
||||
春归谷雨,夏至未至。kubeasz 3.1.0 版本发布,主要更新点:
|
||||
|
||||
### 正式通过k8s一致性认证
|
||||
|
||||
kubeasz 用户可以确认集群各项功能符合预期,既符合k8s设计标准;
|
||||
|
||||
- v1.20 [已完成](https://github.com/cncf/k8s-conformance/pull/1326)
|
||||
|
||||
### 推荐群里大佬的k8s架构师免费视频课程
|
||||
|
||||
作者花很多心思和精力去构思文档、视频录制,并且把工作中的实践经验分享出来;值得参考学习
|
||||
|
||||
https://www.toutiao.com/c/user/token/MS4wLjABAAAA0YFomuMNm87NNysXeUsQdI0Tt3gOgz8WG_0B3MzxsmI/?tab=article
|
||||
|
||||
### 重写chrony/ex-lb/kube-lb等组件的安装
|
||||
|
||||
原先使用yum/apt方式安装依赖于各操作系统软件源,版本无法统一管理,并且离线安装也不方便;现使用源码最小化依赖编译安装,仅依赖基本库,生成的二进制文件可以运行于受支持的各种操作系统,可以方便的版本管理、配置管理和离线安装。
|
||||
|
||||
原node节点haproxy 由仅四层转发的nginx替代(kube-lb),负责集群内部负载均衡apiservers;简化部署逻辑,现在每个节点均会运行一个轻量kube-lb进程。
|
||||
|
||||
原ex-lb组件keepalived+haproxy由 keepalived+l4lb替代,l4lb同样是仅支持四层转发的nginx源码编译的。
|
||||
|
||||
### 修改有条件使用`systemd` `cgroup driver`
|
||||
|
||||
当容器运行时选择containerd,或者docker version >= 20.10时,容器运行时和kubelet使用`systemd`做资源管理和限制,这是官方文档建议的方式,一定程度上能增加稳定性;
|
||||
当选择docker version < 20.10时,使用`cgroupfs`;主要因为部分操作系统不支持dockerd使用cgroup=systemd,会提示报错:`OCI runtime create failed: systemd cgroup flag passed, but systemd support for managing cgroups is not available: unknown`。
|
||||
|
||||
### 组件更新
|
||||
|
||||
- k8s: v1.21.0, v1.20.6, v.1.19.10, v1.18.18
|
||||
- containerd: v1.4.4 (runc: v1.0.0-rc93)
|
||||
- coredns: 1.8.0
|
||||
- dns-node-cache: 1.17.0
|
||||
- pause: 3.4.1
|
||||
|
||||
### 其他
|
||||
|
||||
- fix:增加/删除节点时ansible hosts文件更新错误
|
||||
- fix:kube-scheduler healthz/metrics listening setting
|
||||
- fix:restart ex-lb when master nodes change
|
||||
- fix:多条默认路由网卡自动识别问题
|
||||
- fix:安装aio集群时docker cgroupdriver设置问题
|
||||
- fix:add scheme:https to service-account-issuer
|
||||
- fix:容器化aio安装时选择containerd运行时失败
|
||||
- feat:增加可选配置apiserver安全端口
|
||||
- feat:允许修改配置ingress port #999
|
||||
- feat:增加支持ubuntu 20.04
|
||||
- feat:增加ezctl setup支持传入额外参数 #1007
|
||||
- 更新ansible.cfg
|
||||
- 更新get-pip.py下载地址 #1006
|
|
@ -1,35 +0,0 @@
|
|||
## kubeasz-3.1.1 (Autumnal Equinox)
|
||||
|
||||
昼夜均,寒暑平,中秋祭月。kubeasz 3.1.1 小版本更新。
|
||||
|
||||
### 正式通过k8s一致性认证
|
||||
|
||||
kubeasz 用户可以确认集群各项功能符合预期,既符合k8s设计标准;
|
||||
|
||||
- v1.20 [已完成](https://github.com/cncf/k8s-conformance/pull/1326)
|
||||
- v1.21 [已完成](https://github.com/cncf/k8s-conformance/pull/1398)
|
||||
- v1.22 [进行中]
|
||||
|
||||
### 组件更新
|
||||
|
||||
- k8s: v1.22.2, v1.21.5, v.1.20.11, v1.19.15
|
||||
- etcd: v3.5.0
|
||||
- docker: 20.10.8
|
||||
- calico: v3.19.2
|
||||
- coredns: 1.8.4
|
||||
- pause: 3.5
|
||||
- dashboard: v2.3.1
|
||||
- metrics-server: v0.5.0
|
||||
|
||||
### 其他
|
||||
|
||||
- 更新:kuboard 文档 #1014 #1023
|
||||
- 更新:判断服务状态直接使用systemctl is-active #1019
|
||||
- 修复:etcd dir bug #1036
|
||||
- 更新:traefik为Daemonset部署,增加健康检测功能以及Node节点亲和性调度 #1028
|
||||
- 更新:dashboard 部署文件和文档
|
||||
- 更新:metrics-server 部署文件和文档
|
||||
- 修复:coredns 1.8.4 rbac settings
|
||||
- 修复:docker/containerd是否需要安装的判断条件
|
||||
- 修复:暂时绕过centos7.9开启KUBE_RESERVED的问题
|
||||
- 调整:docker/containerd运行时安装互不影响
|
|
@ -1,36 +0,0 @@
|
|||
## kubeasz 3.2.0 (Slight Cold)
|
||||
|
||||
小寒料峭, 盼雪迎春。kubeasz 3.2.0 发布更新支持k8s 1.23 版本。
|
||||
|
||||
### 主要更新
|
||||
|
||||
- 修改默认容器运行时为containerd,如果需要仍旧使用docker,请对应修改clusters/${集群名}/hosts 配置项`CONTAINER_RUNTIME`
|
||||
- 修改默认network-plugin:calico
|
||||
- 修复CNCF Conformance Test,选择ipvs模式时sessionAffinity的问题
|
||||
- 调整containerd配置文件与版本格式一致
|
||||
- 调整kube-scheduler启动配置文件
|
||||
- 调整kube-proxy启用配置文件
|
||||
|
||||
### 组件更新
|
||||
|
||||
- k8s: v1.23.1
|
||||
- etcd: v3.5.1
|
||||
- containerd: 1.5.8
|
||||
- calico: v3.19.3
|
||||
- flannel: v0.15.1
|
||||
- coredns: 1.8.6
|
||||
- cni-plugins: v1.0.1
|
||||
- pause: 3.6
|
||||
- dashboard: v2.4.0
|
||||
- metrics-server: v0.5.2
|
||||
- k8s-dns-node-cache: 1.21.1
|
||||
- nfs-provisioner: v4.0.2
|
||||
|
||||
### 其他
|
||||
|
||||
- fix: avoid cleaning iptables rules on docker setup
|
||||
- fix: controller-manager health check issue #1084
|
||||
- feat: Add docker proxy config at ezdown
|
||||
- fix: kubectl drain 参数版本差异导致失败的问题
|
||||
- fix: prepare阶段的一些小问题
|
||||
- fix: nf_conntrack模块安装判断等
|
|
@ -1,35 +0,0 @@
|
|||
## kubeasz 3.3.0 (Grain in Ear)
|
||||
|
||||
泽草所生,种之芒种。kubeasz 3.3.0 发布更新支持k8s 1.24 版本。
|
||||
|
||||
### 主要更新
|
||||
|
||||
#### 1.容器运行时
|
||||
|
||||
修改默认容器运行时为containerd,kubeasz 3.3.0 暂未适配docker 和其他容器运行时;集群使用containerd作为运行时,确实更简单、稳定;至于docker,镜像打包、单机运行容器等等真好用;各自发挥所长吧;kubeasz项目中在离线资源下载、安装中使用docker非常方便,还可以避免在部署机器上安装ansible等麻烦事,推荐使用。
|
||||
|
||||
#### 2.去除安装ingress插件
|
||||
|
||||
ingress一般是具体业务强相关的,属于上层组件;鉴于维护人力和频率,项目中仅保留历史相关ingress文档,不再继续更新;请移步相关ingress组件官网获取更新部署方式;kubeasz 今后将更加关注底层集群组件的更新和维护。做简单,做好一件事。
|
||||
|
||||
#### 3.更新prometheus安装套件
|
||||
|
||||
监控组件属于底层功能,将持续更新;项目使用kube-prometheus-stack helm chart 默认部署,需要自定义设置请参考项目 https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack
|
||||
|
||||
### 组件更新
|
||||
|
||||
- k8s: v1.24.1
|
||||
- etcd: v3.5.4
|
||||
- containerd: 1.6.4
|
||||
- calico: v3.19.4
|
||||
- cni-plugins: v1.1.1
|
||||
- dashboard: v2.5.1
|
||||
|
||||
### 其他
|
||||
|
||||
- 调整kube-controller-manager启动配置文件
|
||||
- 调整kubelet启用配置文件
|
||||
- 修复部分系统首次执行安装失败 (缺失 '/usr/bin/python')
|
||||
- 修复'ezdown‘运行可能会遗留容器导致再次运行失败
|
||||
- 部分文档更新
|
||||
- fix: get secret tokens for dashboard login in v1.24
|
|
@ -1,37 +0,0 @@
|
|||
## kubeasz 3.3.1 (Slight Heat)
|
||||
|
||||
倏忽温风至,因循小暑来。竹喧先觉雨,山暗已闻雷。kubeasz 3.3.1 发布,稳定性和新特性更新说明如下。
|
||||
|
||||
### 主要更新
|
||||
|
||||
#### 1.新增local insecure registry
|
||||
|
||||
为方便集群离线安装,新增本地镜像仓库,用于预存放集群安装所需的组件镜像;建议仅做集群安装时临时使用,不适合对外用作业务应用的镜像存储(harbor 可以作为企业内部镜像仓库应用)。调整ezdown 下载脚本,区分默认组件镜像(`ezdown -D`)自动下载和可选组件镜像(`ezdown -X`)下载并推送至该本地镜像仓库。
|
||||
|
||||
#### 2.新增网络检测工具/插件
|
||||
|
||||
集群初始安装后,或者运行很久时,非常需要有个工具能够简单检测当前集群各个节点网络是否正常;受 cilium connectivity-check 启发,利用cronjob 检测集群各种网络访问方式是否正常。详解[组件说明](https://github.com/easzlab/kubeasz/blob/master/docs/setup/network-plugin/network-check.md)
|
||||
|
||||
#### 3.更新calico组件支持自动安装calico route reflector
|
||||
|
||||
calico 是最流行的网络组件之一;但是当集群节点达到一定数量后,默认的bgp全互联拓扑会导致每个节点需要维护大量BGP邻居信息;本次更新集成了calico-route-reflector自动安装,建议当节点数大于50时必须开启,详见[文档说明](https://github.com/easzlab/kubeasz/blob/master/docs/setup/network-plugin/calico-bgp-rr.md)
|
||||
|
||||
#### 4.更新重写cilium组件安装
|
||||
|
||||
cilium 可算是最酷的网络组件之一;拥有eBPF光环,以及炫酷的cilium network policy(比k8s原生network policy增强很多),还有可观测性... 后续项目会加大对cilium组件的更新支持。
|
||||
|
||||
#### 5.增加github action 自动同步仓库
|
||||
|
||||
自动同步kubeasz项目到国内gitee仓库,方便国内网络环境下访问。
|
||||
|
||||
|
||||
### 组件更新
|
||||
|
||||
- k8s: v1.24.2
|
||||
- coredns: 1.9.3
|
||||
- pause: 3.7
|
||||
|
||||
### 其他
|
||||
|
||||
- 大量安装文档更新
|
||||
- 修复add-node等添加节点时自动添加`/usr/bin/python`软链接
|
|
@ -1,23 +0,0 @@
|
|||
## kubeasz 3.4.0 (White Dew)
|
||||
|
||||
蒹葭苍苍,白露为霜。kubeasz 3.4.0 发布更新支持k8s 1.25 版本。
|
||||
|
||||
### 组件更新
|
||||
|
||||
- k8s: v1.25.1
|
||||
- containerd: 1.6.8
|
||||
- calico: v3.23.3
|
||||
- cilium: 1.12.2
|
||||
- flannel: v0.19.2
|
||||
- kube-prometheus-stack: 39.11.0
|
||||
- nodelocaldns: 1.22.8
|
||||
- dashboard: v2.6.1
|
||||
- pause: 3.8
|
||||
|
||||
### 其他
|
||||
|
||||
- fix: custom PATH settings
|
||||
- 修复calico ipip隧道模式说明错误,并完善可选参数说明以及使用场景 (#1168 by Hello-Linux)
|
||||
- fix: checking bash shell (#1171 by EamonZhang)
|
||||
- fix: create etcd certs (#1172 by EamonZhang )
|
||||
- fix: ca-config.json format (#1174 by libinglong)
|
|
@ -1,39 +0,0 @@
|
|||
## kubeasz 3.4.1 (Frost's Descent)
|
||||
|
||||
霜降水返壑,风落木归山。冉冉岁将宴,物皆复本源。kubeasz 3.4.1 发布更新支持多架构平台(amd64/arm64)
|
||||
|
||||
### 1.更新多架构支持
|
||||
|
||||
当前已支持linux amd64和linux arm64,更多架构支持根据后续需求来计划。
|
||||
|
||||
目前多架构安装逻辑:根据部署机器(执行ezdown/ezctl命令的机器)的架构,会自动判断下载对应amd64/arm64的二进制文件和容器镜像,然后推送安装到整个集群。
|
||||
|
||||
- 暂不支持不同架构的机器加入到同一个集群。
|
||||
- harbor目前仅支持amd64安装
|
||||
|
||||
### 2.重写项目依赖组件的镜像构建流程,利用github-action自动构建、推送多架构的镜像
|
||||
|
||||
k8s核心组件本身提供多架构的二进制文件/容器镜像下载,项目调整了下载二进制文件的容器dockerfile
|
||||
|
||||
- https://github.com/easzlab/dockerfile-kubeasz-k8s-bin
|
||||
|
||||
kubeasz其他用到的二进制或镜像,重新调整了容器创建dockerfile
|
||||
|
||||
- https://github.com/easzlab/dockerfile-kubeasz-ext-bin
|
||||
- https://github.com/easzlab/dockerfile-kubeasz-ext-build
|
||||
- https://github.com/easzlab/dockerfile-kubeasz-sys-pkg
|
||||
- https://github.com/easzlab/dockerfile-kubeasz-mirrored-images
|
||||
- https://github.com/easzlab/dockerfile-kubeasz
|
||||
- https://github.com/easzlab/dockerfile-ansible
|
||||
|
||||
### 3.去除master/node节点上的admin kubeconfig文件,这个文件拥有全部集群权限,需要谨慎保管,目前仅部署机器上保留,可以自行按需管理使用。
|
||||
|
||||
### 组件更新
|
||||
|
||||
- k8s: v1.25.3
|
||||
|
||||
### 其他
|
||||
|
||||
- fix: curl dns resolving problem in a rare case (#ab9603d509900919)
|
||||
- cleaning some images/pics
|
||||
- fix: logo url
|
|
@ -1,33 +0,0 @@
|
|||
## kubeasz 3.4.2 (Great Snow)
|
||||
|
||||
晚来天欲雪,能饮一杯无。kubeasz 3.4.2 发布,小版本更新以及一些bugfix。
|
||||
|
||||
### 小版本更新
|
||||
|
||||
- k8s: v1.25.4
|
||||
- etcd: v3.5.5
|
||||
|
||||
### 更新国内容器镜像站
|
||||
|
||||
mirrors.ustc.edu.cn 站点已经停止服务,当前替换为docker.nju.edu.cn,提升国内网络环境下载国外容器镜像的速度。
|
||||
|
||||
### 新增命令强制更新集群CA及其他证书
|
||||
|
||||
此命令使用需要小心谨慎,确保了解功能背景和可能的结果;执行后,它会重新创建集群CA证书以及由它颁发的所有其他证书;一般适合于集群admin.conf不小心泄露,为了避免集群被非法访问,重新创建CA,从而使已泄漏的admin.conf失效。更新过程中会中断集群服务,详见 docs/op/force_ch_certs.md 使用说明。
|
||||
|
||||
### 新增机器人清理过期的issue
|
||||
|
||||
### 优化etcd 备份和恢复流程,by itswl (#1191 #1193)
|
||||
|
||||
### 修复默认配置的 Kubernetes CA 证书 by ffutop (#1197)
|
||||
|
||||
### 调整cluster-addon 组件安装流程
|
||||
|
||||
### 其他
|
||||
|
||||
- fix:系统架构判断,replace 'uname -p(non-portable)' to 'uname -m'
|
||||
- fix:/var/lib/etcd单独分区时,删除集群报"Device or resource busy"错误 #1159
|
||||
- fix:更新 roles/kube-master/main.yml 修改证书时复制新证书到Master节点 by liyu36 (#1186)
|
||||
- fix:kube-apiserver 访问 kubelet的权限
|
||||
- fix:shell加载环境变量 by itswl (#1202 #1203)
|
||||
- fix:离线安装系统软件包 (38925ccc56134e4d007fec2a71691828dd15e9d5)
|
|
@ -0,0 +1,51 @@
|
|||
## kubeasz 3.6.0 (Beginning of Summer)
|
||||
|
||||
微雨过,小荷翻。榴花开欲然。kubeasz 3.6.0 发布:支持k8s v1.27版本,支持更多操作系统安装,以及组件更新和一些bugfix。
|
||||
|
||||
### 版本更新
|
||||
|
||||
- k8s: v1.27.1
|
||||
- cilium: v1.13.2
|
||||
- flannel: v0.21.4
|
||||
- harbor: v2.6.4
|
||||
- metrics-server: v0.6.3
|
||||
- k8s-dns-node-cache: 1.22.20
|
||||
- kube-prometheus-stack: 45.23.0
|
||||
|
||||
### 调整项目分支更新规则
|
||||
|
||||
k8s大版本对应kubeasz特定的大版本号,详见README.md 中版本对照表,当前积极更新的分支如下:
|
||||
|
||||
- master:默认保持与最新分支同步,当前与v3.6同步
|
||||
- v3.6:对应k8s v1.27 版本,持续保持更新
|
||||
- v3.5:对应k8s v1.26 版本,主要使用cherry-pick方式合并后续版本中的重要commit
|
||||
- v3.4:对应k8s v1.25 版本,主要使用cherry-pick方式合并后续版本中的重要commit
|
||||
- v3.3:对应k8s v1.24 版本,主要使用cherry-pick方式合并后续版本中的重要commit
|
||||
|
||||
### 支持更多操作系统安装
|
||||
|
||||
本次增加测试支持大部分使用systemd的linux发行版,如果安装有问题先请查看(docs/setup/multi_os.md);如果某个能够支持安装的系统没有在列表中,欢迎提PR 告知。
|
||||
|
||||
- **Alibaba Linux** 2.1903, 3.2104([notes](docs/setup/multi_os.md#Alibaba))
|
||||
- **Alma Linux** 8, 9
|
||||
- **Anolis OS** 8.x RHCK, 8.x ANCK([notes](docs/setup/multi_os.md#Anolis))
|
||||
- **CentOS/RHEL** 7, 8, 9
|
||||
- **Debian** 10, 11([notes](docs/setup/multi_os.md#Debian))
|
||||
- **Fedora** 34, 35, 36, 37
|
||||
- **openSUSE** Leap 15.x([notes](docs/setup/multi_os.md#openSUSE))
|
||||
- **Rocky Linux** 8, 9
|
||||
- **Ubuntu** 16.04, 18.04, 20.04, 22.04
|
||||
|
||||
### 重要更新
|
||||
|
||||
- 重写`ezdown`脚本支持下载多系统软件包部分
|
||||
- 重写`role:prepare`支持离线安装多系统软件包部分
|
||||
- 简化harbor安装后集成使用,目前在containerd容器运行时中额外配置允许insecure仓库方式
|
||||
- 修复pod挂载 hostpath volume,删除pod会卡住问题 (#1259) by itswl
|
||||
- 增加设置limits for pids #1265 by AsonZhang
|
||||
|
||||
### 其他
|
||||
|
||||
- 增加项目`ISSUE`模版
|
||||
- 修复chronyd 服务可能出现 enable失败问题 (#1254) by Roach57
|
||||
- 增加ezctl setup脚本执行时打印版本信息
|
|
@ -1,15 +1,20 @@
|
|||
# 离线安装集群
|
||||
|
||||
kubeasz 2.0.1 开始支持**完全离线安装**,目前已支持 `Ubuntu1604|1804|2004` `CentOS7` `Debian9|10` 系统。
|
||||
使用kubeasz 离线安装 k8s集群需要下载四个部分:
|
||||
|
||||
- kubeasz 项目代码
|
||||
- 二进制文件(k8s、etcd、containerd等组件)
|
||||
- 容器镜像文件(calico、coredns、metrics-server等容器镜像)
|
||||
- 系统软件安装包(ipset、libseccomp2等,仅无法使用本地yum/apt源时需要)
|
||||
|
||||
## 离线文件准备
|
||||
|
||||
在一台能够访问互联网的服务器上执行:
|
||||
|
||||
- 下载工具脚本ezdown,举例使用kubeasz版本3.3.1
|
||||
- 下载工具脚本ezdown,举例使用kubeasz版本3.6.0
|
||||
|
||||
``` bash
|
||||
export release=3.3.1
|
||||
export release=3.6.0
|
||||
wget https://github.com/easzlab/kubeasz/releases/download/${release}/ezdown
|
||||
chmod +x ./ezdown
|
||||
```
|
||||
|
@ -23,7 +28,7 @@ chmod +x ./ezdown
|
|||
./ezdown -D
|
||||
```
|
||||
|
||||
下载额外容器镜像(cilium,flannel,prometheus等)
|
||||
[可选]如果需要更多组件,请下载额外容器镜像(cilium,flannel,prometheus等)
|
||||
|
||||
``` bash
|
||||
./ezdown -X
|
||||
|
@ -32,7 +37,8 @@ chmod +x ./ezdown
|
|||
下载离线系统包 (适用于无法使用yum/apt仓库情形)
|
||||
|
||||
``` bash
|
||||
./ezdown -P
|
||||
# 如果操作系统是ubuntu 22.04
|
||||
./ezdown -P ubuntu_22
|
||||
```
|
||||
|
||||
上述脚本运行成功后,所有文件(kubeasz代码、二进制、离线镜像)均已整理好放入目录`/etc/kubeasz`
|
||||
|
@ -59,7 +65,7 @@ chmod +x ./ezdown
|
|||
./ezdown -S
|
||||
```
|
||||
|
||||
- 设置参数允许离线安装
|
||||
- 设置参数允许离线安装系统软件包
|
||||
|
||||
```
|
||||
sed -i 's/^INSTALL_SOURCE.*$/INSTALL_SOURCE: "offline"/g' /etc/kubeasz/example/config.yml
|
||||
|
@ -67,8 +73,10 @@ sed -i 's/^INSTALL_SOURCE.*$/INSTALL_SOURCE: "offline"/g' /etc/kubeasz/example/c
|
|||
|
||||
- 举例安装单节点集群,参考 https://github.com/easzlab/kubeasz/blob/master/docs/setup/quickStart.md
|
||||
|
||||
```
|
||||
docker exec -it kubeasz ezctl start-aio
|
||||
``` bash
|
||||
source ~/.bashrc
|
||||
dk ezctl start-aio
|
||||
# 或者执行 docker exec -it kubeasz ezctl start-aio
|
||||
```
|
||||
|
||||
- 多节点集群,进入kubeasz 容器内 `docker exec -it kubeasz bash`,参考https://github.com/easzlab/kubeasz/blob/master/docs/setup/00-planning_and_overall_intro.md 进行集群规划和设置后使用./ezctl 命令安装
|
||||
|
|
Loading…
Reference in New Issue