介紹
kainstall = kubeadm install kubernetes
使用 shell 腳本, 基于 kubeadm 一鍵部署 kubernetes 集群
https://github.com/lework/kainstall
為什么?
為什么要搞這個(gè)?Ansible PlayBook 不好么?
因?yàn)閼?/strong>,Ansible PlayBook 編排是非常給力的,不過需要安裝 Python 和 Ansible, 且需要下載多個(gè) yaml 文件 。因?yàn)閼?/strong>,我想要個(gè)更簡單的方式來快速部署一個(gè)分布式的 Kubernetes HA 集群, 使用 shell 腳本可以不借助外力直接在服務(wù)器上運(yùn)行,省時(shí)省力。 并且 shell 腳本只有一個(gè)文件,文件大小不到 100 KB,非常小巧,可以實(shí)現(xiàn)一條命令安裝集群的超快體驗(yàn),而且配合離線安裝包,可以在不聯(lián)網(wǎng)的環(huán)境下安裝集群,這體驗(yàn)真的非常爽啊。
功能
- 服務(wù)器初始化。
- 關(guān)閉
selinux - 關(guān)閉
swap - 關(guān)閉
firewalld - 關(guān)閉大內(nèi)存頁
- 配置
epel源 - 修改
limits - 配置內(nèi)核參數(shù)
- 配置
history記錄 - 配置
journal日志 - 配置
chrony時(shí)間同步 - 安裝
ipvs模塊 - 更新內(nèi)核
- 關(guān)閉
- 安裝
docker,kube組件。 - 初始化
kubernetes集群,以及增加或刪除節(jié)點(diǎn)。 - 安裝
ingress組件,可選nginx,traefik。 - 安裝
network組件,可選flannel,calico, 需在初始化時(shí)指定。 - 安裝
monitor組件,可選prometheus。 - 安裝
log組件,可選elasticsearch。 - 安裝
storage組件,可選rook,longhorn。 - 安裝
web ui組件,可選dashboard,kubesphere。 - 升級(jí)到
kubernetes指定版本。 - 更新集群證書。
- 添加運(yùn)維操作,如備份etcd快照。
- 支持離線部署。
- 支持sudo特權(quán)。
- 支持10年證書期限。
- 支持環(huán)境變量賦值。
一鍵初始化
bash -c "$(curl -sSL https://cdn.jsdelivr.net/gh/lework/kainstall/kainstall.sh)" \
- init \
--master 192.168.77.130,192.168.77.131,192.168.77.132 \
--worker 192.168.77.133,192.168.77.134 \
--user root \
--password 123456 \
--port 22 \
--version 1.19.3
更多操作見: kainstall 倉庫
離線部署
wget http://kainstall.oss-cn-shanghai.aliyuncs.com/1.19.3/centos7.tgz
bash -c "$(curl -sSL https://cdn.jsdelivr.net/gh/lework/kainstall/kainstall.sh)" \
- init \
--master 192.168.77.130,192.168.77.131,192.168.77.132 \
--worker 192.168.77.133,192.168.77.134 \
--user root \
--password 123456 \
--port 22 \
--version 1.19.3 \
--offline-file centos7.tgz
更多離線包: kainstall-offline 倉庫
聯(lián)系
創(chuàng)建了一個(gè) QQ群 467645743 大家有問題的可以加進(jìn)來。