#k8s Kubernetes v1.15 v1.16 v1.17 v1.18 高可用 快速安装 shell
Master单节点、高可用,使用kubeadm安装
最简单的安装shell,只为快速部署k8s测试环境
测试环境centos 7 , ubuntu server 18shell可以浏览器打开,或下载查看
2018-5-1 Kubernetes v1.10
2019年8月更新脚本为 v1.15
2019年10月新增v1.16版本
2019年11月新增高可用
2020年添加v1.18
#单节点Master
#1 部署k8s master节点
export Ver=1.15.5 #默认1.15.5
curl -s http://elven.vip/ks/k8s/k8s.master.ha.sh |bash
export Ver=1.15.5指定安装版本,默认1.15.5,最新1.18.3
1.16以上使用calico网络,dashboard使用v2
#2 添加Node节点
#安装kubelet
export Ver=1.15.5
curl -s http://elven.vip/ks/k8s/kubelet.sh |bash
#按master节点提示执行加入 kubeadm join MasterIP:6443 --token
#高可用(多Master节点)
#1 docker运行haproxy+keeplived
#部署在每个k8s Master节点
#k8s Master IP地址
export Node1=172.16.11.145
export Node2=172.16.11.146
export Node3=172.16.11.147
#VIP
export Node_VIP=172.16.11.150
export VIP_Port=6444
#运行
curl -s http://elven.vip/ks/k8s/node.vip.sh |bash
#2 部署k8s master节点
#安装第一个Master节点
#k8s版本
export Ver=1.15.5
#VIP
export Node_VIP=172.16.11.150
export VIP_Port=6444
#运行
curl -s http://elven.vip/ks/k8s/k8s.master.ha.sh |bash
#3 添加Node节点
#3.1 安装kubelet
export Ver=1.15.5
curl -s http://elven.vip/ks/k8s/kubelet.sh |bash
#3.2 按master节点提示,添加Master节点或Node节点
#kubeadm join MasterIP:6443 --token ***
#主要服务
master节点
- Etcd #数据存储
- kube-apiserver #api是集群控制的入口
- kube-controller-manager #资源自动化控制中心
- kube-scheduler #负责Pod调度
node
- kubelet #与master通信,Pod、容器管理
- kube-proxy #代理和负载均衡器
概念
#Pod是k8s调度最小单位,每个Pod中运行着相关的业务容器,这些容器共享IP和Volume
#K8s中Service相当于微服务,一个Service对应多个Pod实例,使用LabelSelector将Pod捆绑一起
#访问服务: ->Node IP -> Cluster IP(Service) -> Pod IP