kubeasz

使用Ansible脚本安装K8S集群,介绍组件交互原理,方便直接,不受国内网络环境影响

Stars
10.1K
Committers
80

Bot releases are hidden (Show)

kubeasz - kubeasz 1.0.0

Published by gjmzj over 5 years ago

kubeasz-1.0.0 发布说明

  • Note: kubeasz 1.x 第一个正式版本,引入新功能:easzctl 命令行工具、多集群管理、容器化使用以及更多配置精简与优化;原 master 已并入 release-0 分支,停止主要更新,仅做 bug 修复版本;后续 master 分支将开始 kubeasz-1.x 版本发布。
  • Action Required: 本次更新修改 ansible hosts 文件,请按照 example 目录中的对应例子修改/etc/ansible/hosts文件, 确保 ansible hosts 文件中主机组的顺序与例子一致。

CHANGELOG: (0.6.x 版本以后)

  • 组件更新:
    • k8s: v1.13.4
    • calico v3.4.3
    • cilium v1.4.1
    • dashboard v1.10.1
  • 集群安装:
    • 引入easzctl命令行工具,后续它将作为推荐的集群常规管理工具,使用介绍
    • 新增 docker 运行安装 kubeasz,请参考文档 https://github.com/gjmzj/kubeasz/blob/master/docs/setup/docker_kubeasz.md
    • 优化 ansible hosts 配置,更加精简、易用
      • 废弃 new-node/new-master/new-etcd 主机组,对应功能已集成在 easzctl 命令行
      • 废弃变量 K8S_VER,改为自动识别,避免手工配置错误
      • 迁移 basic_auth 相关配置至 roles:kube-master,增强初始安全性,且默认关闭apiserver的用户名/密码认证,详见 roles/kube-master/defaults/main.yml
    • easzctl 提供以下集群层面操作
      • 切换/创建集群 context
      • 删除当前集群
      • 显示所有集群
      • 创建集群
      • 创建单机集群(类似 minikube)
    • easzctl 提供以下集群内操作
    • 修改优化部分安装脚本以兼容 docker 运行 kubeasz
    • 增加启动 kubeasz 容器的脚本 tools/kubeasz-docker
    • 修改默认安装 dashboard 的同时安装 heapster(当前 dashboard 版本仍旧依赖 heapster)
  • 其他:
    • 修复兼容 docker 18.09.x 版本安装
    • 修复项目bin目录下二进制不能执行的错误
    • 修复docker版本判断逻辑
    • 修复cilium安装时判断内核版本逻辑
    • add support for harbor v1.7.x (#478 by weilinqwe)
    • perf: 加速源码下载速度 (#483 by waitingsong)
    • 更新 dashboard 文档
kubeasz - kubeasz 0.6.1

Published by gjmzj over 5 years ago

kubeasz-0.6.1 发布说明

CHANGELOG:

  • BUG 修复:
    • 修复兼容docker 18.09.x 版本安装
    • 修复增加etcd节点时,在Centos7执行偶然没有正确读取配置信息的bug(PR #465 by loverto)
    • 修复docker安装获取版本任务的tags信息
    • 修复项目bin目录下二进制不能执行的错误
    • 修复docker版本判断逻辑
kubeasz - kubeasz 1.0.0rc1

Published by gjmzj over 5 years ago

kubeasz-1.0.0rc1 发布说明

  • Note: kubeasz-1.x 第一个版本预发布,原 master 已并入 release-0 分支,停止主要更新,仅做 bug 修复版本;后续 master 分支将开始 kubeasz-1.x 版本发布。
  • Action Required: 本次更新修改 ansible hosts 文件,请按照 example 目录中的对应例子修改/etc/ansible/hosts文件, 确保 ansible hosts 文件中主机组的顺序与例子一致。

CHANGELOG:

  • 组件更新:
    • k8s: v1.13.4
    • cilium v1.4.1
  • 集群安装:
  • 其他:
    • 修复兼容 docker 18.09.x 版本安装
kubeasz - kubeasz 0.6.0

Published by gjmzj over 5 years ago

kubeasz-0.6.0 发布说明

  • Note: 本次为 kubeasz-0.x 最后一次版本发布,它将被并入 release-0 分支,停止主要更新,仅做 bug 修复版本;后续 master 分支将开始 kubeasz-1.x 版本发布。
  • Action Required: 本次更新修改 ansible hosts 文件,如需要更新已有项目使用,请按照 example 目录中的对应例子修改/etc/ansible/hosts文件。

CHANGELOG:

  • 组件更新:
    • k8s: v1.13.3
    • calico v3.4.1
    • flannel v0.11.0-amd64
    • docker 18.09.2
    • harbor 1.6.3
    • helm/tiller: v2.12.3
  • 集群安装:
    • 增加添加/删除 etcd 节点脚本和文档
    • 增加可选配置附加负载均衡节点(ex-lb),可用于负载均衡 NodePort 方式暴露的服务
    • 更新删除节点脚本和文档
    • 优化增加 node 和增加 master 节点流程
    • 更新 harbor 安装流程和文档
    • 优化 prepare tasks,避免把证书和 kubeconfig 分发到不需要的节点
    • 更新 prometheus 告警发送钉钉配置和文档
    • 增加使用 helm 部署 mariadb 集群和文档
    • 增加 k8s 官方 mysql 集群示意配置
    • 增加使用 helm 部署 redis-ha 集群
    • 增加开机启动 k8s 相关内核模块配置
    • 更新 calico 3.4.1,并保留版本 3.3.x/3.2.x 可选
  • 文档更新:
  • 其他:
    • 修复为兼容k8s版本 <= 1.11,revert PR #440
    • 修复清除iptables规则时无法连接节点(PR #453 by PowerDos)
    • 添加开启docker远程API选项(默认关闭)(PR #444 by lusyoe)
    • 修复 calico 3.3.x rbac 配置(PR #447 by sunshanpeng)
    • 增加 coredns 和 calico 的 metrics 监控选项(PR #447 by sunshanpeng)
    • 添加 helm 离线安装方法说明(doc/guide/helm.md)(PR #443 by j4ckzh0u)
kubeasz - kubeasz 0.5.1

Published by gjmzj almost 6 years ago

kubeasz-0.5.1 发布说明

CHANGELOG:

  • 组件更新:
    • k8s: v1.13.2, v1.12.4, v1.11.6, v1.10.12
    • calico v3.3.2
    • coredns 1.2.6
  • 集群安装:
    • 更新 calico 3.3.2,并保留3.2.4可选
    • 修复特定环境下lb节点变量LB_IF自动设置错误
    • 移除 kube-node csr 请求批准部分(PR #399)
    • 添加支持 RedHat (PR #431)
    • 修改 docker 存储的目录设置(PR #436)
    • 更新 kube-schedule 监听参数 (PR #440)
    • 安装流程增加等待 ETCD 同步完成再返回成功(PR #420)
    • 增加 pod-infra-container 可选择配置
    • 增加 nginx-ingress manifests
  • 文档更新:
  • 其他:
    • 添加 helm tls 环境变量(PR #398)
    • 修复 dashboard ingress 配置(issue #403)
kubeasz - kubeasz 0.5.0

Published by gjmzj almost 6 years ago

kubeasz-0.5.0 发布说明

CHANGELOG:

  • 组件更新:
    • k8s: v1.12.3, v1.11.5, v1.10.11
    • calico v3.2.4
    • helm v2.11.0
    • traefik 1.7.4
  • 集群安装:
    • 更新集群升级脚本和文档,关注安全漏洞
    • 集成 metallb 作为自有硬件 k8s 集群的 LoadBalancer 实现
    • 支持修改 APISERVER 证书
    • 增加 ingress nodeport 负载转发的脚本与文档
    • 增加 https ingress 配置和文档
    • 增加 kubectl 只读访问权限配置和文档
    • 增加 apiserver 配置支持 istio sidecar自动注入webhook (#375)
    • 初始化集群节点设置 net.netfilter.nf_conntrack_max=1000000
    • 取消多主集群LB_IF参数设置,自动生成以避免人为配置疏忽
  • 文档更新:
  • 其他:
    • 修复内核4.19加载nf_conntrack (#366)
    • 修复 calico controller 中 NodePorts 的自动配置
    • 取消 helms 别名设置
    • 升级jenkins-lts版本和插件版本 (#358)
    • 修复阿里云nas动态pv脚本
kubeasz - kubeasz 0.4.0

Published by gjmzj about 6 years ago

kubeasz-0.4.0 发布说明

CHANGELOG:

  • 组件更新:
    • k8s: v1.12.1, v1.10.8, v1.9.11 注意 v1.12.1 kubelet日志bug
    • docker: 18.06.1-ce (选择k8s官方测试稳定的版本)
    • metrics-server: v0.3.1
    • coredns: 1.2.2, kube-dns 1.14.13
    • heapster v1.5.4
    • traefik 1.7.2
  • 集群安装:
    • 更新 kubelet使用 webhook方式认证/授权 ,提高集群安全性
    • 调整安装步骤中 kubectl 命令的执行以兼容公有云部署
    • 调整部分安装步骤以兼容ansible执行节点与deploy节点分离
    • 更新节点的安全加固脚本ansible-os-hardening 5.0.0
  • 文档更新:
  • 其他:
    • 升级 promethus chart 7.1.4,grafana chart 1.16.0
    • 升级 jenkins 安全插件和 k8s 插件版本 (#325)
    • 修复 新增 master 节点时报变量未定义错误
    • 修复 ipvs 模式下网络组件偶尔连不上kubernetes svc的错误
    • 修复 Ansible 2.7 环境下 yum/apt 安装多个软件包的 DEPRECATION WARNING (#334)
    • 修复 chrony 与 ntp 共存冲突问题 (#341)
    • 修复 CentOS 下使用 ipvs 模式需依赖 conntrack-tools 软件包
    • 修复 tools/change_k8s_network.yml 脚本
kubeasz - kubeasz 0.3.1

Published by gjmzj about 6 years ago

kubeasz-0.3.1 发布说明

CHANGELOG:

  • 组件更新:
    • k8s: v1.11.3, v1.10.7
    • kube-router: v0.2.0
    • dashboard: v1.10.0
    • docker: 17.03.2-ce (选择k8s官方测试稳定的版本)
  • 集群安装:
    • 增加集群时间同步服务chrony 说明
    • 取消 Node节点 Bootstrap机制,安装流程更稳定,配置更精简
    • 简化 ansible host 文件配置,移除etcd、harbor 相关变量
    • 拆分 prepare 阶段的安装脚本,增加设置系统 ulimit
    • 增加多lb节点(多于2节点)配置支持 (#286)
    • 增加可选配置lb 节点负载转发ingress controller NodePort service的功能
    • 自定义 kubelet docker 存储目录 (#305)
    • 增加变量配置支持多网卡情况时安装 flannel calico
  • 文档更新:
  • 其他:
    • 修复 calicoctl 配置,修复calico/node跑在LB 主节点时使用vip作为bgp peer地址问题
    • 修复 jq安装错误,补充ipset和ipvsadm安装
    • 修复清除单节点脚本 tools/clean_one_node.yml
    • 修复消除离线镜像不存在时安装的错误提示信息
    • 修复多节点(超过2节点时)lb 备节点 router_id重复问题
    • 锁定jenkins镜像tag、升级插件版本以及锁定安全插件 (#315)
kubeasz - kubeasz 0.3.0

Published by gjmzj about 6 years ago

kubeasz-0.3.0 发布说明

CHANGELOG:

  • 组件更新:
    • k8s: v1.11.2/v1.10.6/v1.9.10/v1.8.15
    • calico: v3.1.3
    • kube-router: v0.2.0-beta.9
  • 功能更新:
    • 增加集群备份与恢复 功能与说明
    • 增加cilium网络插件 ,文档待更新
    • 增加cluster-storage角色文档说明
    • 增加阿里云NAS存储支持
    • 增加集群个性化配置说明与生成脚本tools/init_vars.yml
    • 支持deploy节点与ansible执行节点分离,为一份代码创建多个集群准备
  • 其他:
    • 更新 jenkins and plugins (#258)
    • 重写 nfs动态存储脚本与文档
    • 优化 cluster-addon 安装脚本
    • 增加 docker 配置文件
    • 更新 offline images 0.3
    • 增加 batch/v2alpha支持
    • 移动 DNS yaml文件至 /opt/kube/kube-system
    • fix 多主集群下change_k8s_network时vip丢失问题
    • fix 禁止节点使用系统swap
    • fix 解压后的harbor安装文件没有执行权限问题
    • fix Ubuntu 18.04无法安装haproxy、keepalived问题
kubeasz - kubeasz 0.2.2

Published by gjmzj over 6 years ago

kubeasz-0.2.2 发布说明

CHANGELOG:

  • 组件更新:
    • k8s v1.11.0
    • etcd v3.3.8
    • docker 18.03.1-ce
  • 功能更新:
    • 更新使用ipvs 配置及说明文档
    • 更新lb节点keepalived使用单播发送vrrp报文,预期兼容公有云上自建LB(待测试)
    • 废弃原 ansible hosts 中变量SERVICE_PROXY
    • 更新haproxy负载均衡算法配置 roles/lb/defaults/main.yml
  • 其他修复:
    • fix 变更集群网络的脚本和文档
    • fix 脚本99.clean.yml清理环境变量
    • fix metrics-server允许的client cert问题
    • fix #242: 添加CA有效期参数,设定CA有效期为15年(131400h) (#245)
    • fix helm安装出现Error: transport is closing (#248)
    • fix harbor点击tag界面出现"发生未知错误,请稍后再试" (#250)
    • fix 脚本99.clean.yml清理 services softlink (#253)
    • fix kube-apiserver-v1.8 使用真实数量的 apiserver-count (#254)
    • fix 清理ipvs产生的网络接口
kubeasz - kubeasz 0.2.1

Published by gjmzj over 6 years ago

kubeasz-0.2.1 发布说明

CHANGELOG:
如果服务器能够使用内部yum源/apt源,但是无法访问公网情况下,请下载离线docker镜像完成集群安装:从百度云盘把basic_images_kubeasz_x.y.tar.gz 下载解压到项目down目录即可

  • 组件更新:
    • 更新 coredns版本1.1.3
  • 功能更新:
    • 集成网络插件(可选)使用离线docker镜像安装
    • 集成其他插件(可选)使用离线docker镜像安装
    • 增加切换集群网络插件的脚本
  • 文档更新:
  • 其他:
    • Bug fix: 清理集群时可能出现Device or resource busy: '/var/run/docker/netns/xxxxxxx'的错误,可手动umount后重新清理集群
    • Bug fix: #239 harbor调整安装解压工具, 适配多系统 (#240)

~

kubeasz - kubeasz 0.2.0

Published by gjmzj over 6 years ago

CHANGELOG:

  • 组件更新:
    • 增加新网络插件 kube-router,可在ansible hosts配置CLUSTER_NETWORK="kube-router"
  • 功能更新:
    • 增加IPVS/LVS服务代理模式,比默认的kube-proxy服务代理更高效;在选择kube-router网络插件同时配置SERVICE_PROXY="IPVS"
    • 增加部署metrics-server,以替代heapster 提供metrics API
    • 增加自动集成安装kube-dns/dashboard等组件,可在roles/cluster-addon/defaults/main.yml配置
  • 脚本更新:
    • 增加删除单个节点脚本,docs/op/del_one_node.md
    • 增加等待网络插件正常运行
    • Bug fix: 更新99.clean.yml清理脚本,解决集群重装后cni地址分配问题 kubernetes #57280
    • Bug fix: 从0.1.0版本升级时,kube-apiserver服务启动失败问题
  • 其他:
    • 修改部分镜像拉取策略统一为:imagePullPolicy: IfNotPresent
    • 新增metrics-server、cluster-addon文档
    • 更新kube-router相关文档
    • 更新集群升级说明文档 docs/op/upgrade.md
kubeasz - kubeasz 0.1.0

Published by gjmzj over 6 years ago

kubeasz项目第一个独立版本发布,使用ansible playbook自动化安装k8s集群(目前支持v1.8/v1.9/v1.10)和主要插件,方便部署和灵活配置集群;

CHANGELOG:

  • 组件更新:
    • kubernetes v1.10.4, v1.9.8, v1.8.12
    • etcd v3.3.6
  • 安全更新:
    • 修复kubelet匿名访问漏洞(感谢 cqspirit #192 提醒)
  • 功能更新:
    • 增加helm安全部署及说明
    • 增加prometheus部署及说明
    • 增加jenkins部署及说明(感谢 lusyoe #208 )
  • 脚本更新:
    • 精简 inventory(/etc/ansible/hosts)配置项
      • 移动calico/flannel配置至对应的roles/defaults/main.yml
      • 取消变量NODE_IP,使用内置变量inventory_hostname代替
      • 取消lb组变量设置,自动完成
      • 取消etcd相关集群变量设置,自动完成
    • 增加集群版本K8S_VER变量,为兼容k8s v1.8安装
    • 增加修改AIO部署的系统IP的脚本和说明(docs/op/change_ip_allinone.md)
    • 增加设置node角色
    • 修改OS安全加固脚本为可选安装
  • 其他:
    • 修复calico-controller多网卡问题
    • 修改manifests/apiserver参数兼容k8s v1.8
    • 简化新增master/node节点步骤
    • 优化ansible配置参数
    • 更新 harbor 1.5.1及文档修复(感谢 lusyoe #224 )
    • 更新 kube-dns 1.14.10
    • 丰富dashboard文档( #182 )
    • 修复selinux关闭( #194 )
kubeasz - V1102-r1

Published by gjmzj over 6 years ago

CHANGELOG:

  • 组件更新:
    • kubernetes v1.10.2
    • etcd v3.3.4
    • calico v3.0.6
  • 功能更新:
  • 文档更新:
    • 更新项目TodoList
    • 更新kubedns文档、dashboard文档(感谢 lusyoe PR#182
  • 其他:
    • fix: 多网卡服务器部署flannel问题 kubernetes ISSUE 39701
    • fix: 原有PATH被覆盖问题,感谢 Antergone PR#177
    • 更新pause镜像3.1,kube-dns 1.14.9
kubeasz - v1100-r1

Published by gjmzj over 6 years ago

CHANGELOG:

  • 组件更新:
    • kubernetes v1.10.0
  • 功能更新:
    • 更新安装coredns的yaml配置和说明
    • 更新EFK 日志持久化配置和说明
    • 更新工具脚本basic-env-setup.sh
  • 文档更新:
  • 其他:
    • fix: 清理集群后calico的bgp路由残留
    • fix: shell执行systemctl enable xx可能报错退出问题
    • fix: 向node分发harbor的CA证书路径错误
    • 修改calico日志为warning级别
    • 修改apiserver reconciler使用lease模式
    • 增加预装conntrack socat
    • 更新flannel多网卡情况说明
kubeasz - v196-r1

Published by gjmzj over 6 years ago

CHANGELOG:

  • 组件更新:
    • kubernetes v1.9.6
    • docker 18.03.0-ce
    • calico/node v3.0.4
  • 文档更新:
    • 更新 heapster 监控数据持久化方式配置和文档
    • 更新 dashboard 和 hpa 文档
  • 其他:
    • fix:清理集群后calico的bgp路由残留
    • 更新等待node状态Ready脚本
    • 修改判断证书是否存在的方式
    • 优化等待kubelet启动bootstrap机制
kubeasz - v194-r1

Published by gjmzj over 6 years ago

CHANGELOG:

  • 组件更新:
    • kubernetes v1.9.4
    • etcd v3.3.2
  • 文档更新:
    • EFK 安装说明
    • 新增 node 节点脚本和文档更新
    • 新增 master 节点脚本和文档更新
  • 其他:
    • 优化安装流程,修复多主模式访问 dashboard 问题,详见 ISSUE #130
    • 添加sshkey自动复制脚本,方便ansible的使用
    • 添加kubectl自动补全配置
    • 更新CentOS系统下selinux配置脚本
    • 添加等待master节点服务启动完成检测任务
    • 增加配置keepalived参数:virtual_router_id
kubeasz - v193-r1

Published by gjmzj over 6 years ago

Deploy kubernetes cluster v1.9.3 using ansible-playbook.
Support calico and flannel networking.
Binaries are downloadable @ https://pan.baidu.com/s/1c4RFaA
For more information, go to README.md
CHANGELOG:

  • update components:
    • kubernetes v1.9.3
    • etcd v3.3.1
    • docker 17.12.0-ce
    • calico/node v2.6.7
    • flannel v0.10.0
  • others:
    • fix docker container's log file size limits
    • update kubedns to 1.14.8
    • fix haproxy default timeout
kubeasz - v188-r1

Published by gjmzj over 6 years ago

Deploy kubernetes cluster v1.8.8 with calico v2.6.7 using ansible-playbook.
Binaries are downloadable @ https://pan.baidu.com/s/1c4RFaA
For more information, go to README.md
CHANGELOG:

  • update components:
    • kubernetes v1.8.8
    • etcd v3.3.1
    • docker 17.12.0-ce
    • calico/node v2.6.7
  • others:
    • fix docker container's log file size limits
    • update kubedns to 1.14.8
    • fix haproxy default timeout
kubeasz - v190-r1

Published by gjmzj almost 7 years ago

Deploy kubernetes cluster v1.9.0 with calico v2.6.3 using ansible-playbook.
Binaries are downloadable @ https://pan.baidu.com/s/1c4RFaA
For more information, go to README.md
CHANGELOG:

  • update components:
    • kubernetes v1.9.0
    • etcd v3.2.11
    • docker 17.09.1-ce
    • calico/node v2.6.3