kubeasz/docs/release-notes/kubeasz-3.0.0.md

2.7 KiB
Raw Blame History

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

文档

  • 大量文档更新(部分未完成)