k8s Kubernetes v1.15 v1.16 v1.17 v1.18 高可用 快速安装 shell

#k8s Kubernetes v1.15 v1.16 v1.17 v1.18 高可用 快速安装 shell

Master单节点、高可用,使用kubeadm安装
最简单的安装shell,只为快速部署k8s测试环境
测试环境centos 7 , ubuntu server 18

shell可以浏览器打开,或下载查看
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    

原文地址:https://www.cnblogs.com/elvi/p/8976305.html