1. 程式人生 > 實用技巧 >kubeadm 部署k8s

kubeadm 部署k8s

1:伺服器資訊以及節點介紹

  • 系統資訊:centos1708 minimal 只修改IP地址
主機名稱IP備註
ansible  192.168.1.9 管控
master1 192.168.1.13 master and etcd
master2 192.168.1.14 master and etcd
master3 192.168.1.15 master and etcd
node1 192.168.1.12 node
VIP 192.168.1.110

軟體版本:

docker17.03.2-ce
socat-1.7.3.2-2.el7.x86_64
kubelet-1.10.0-0.x86_64
kubernetes-cni-0.6.0-0.x86_64
kubectl-1.10.0-0.x86_64
kubeadm-1.10.0-0.x86_64

1:環境初始化

分別在4臺主機設定主機名

hostnamectl set-hostname master1
hostnamectl set-hostname master2
hostnamectl set-hostname master3
hostnamectl set-hostname node1

2:配置主機對映

cat <<EOF >>/etc/hosts
192.168.1.13 master1
192.168.1.14 master2
192.168.1.15 master3
192.168.1.12 node1
EOF

3:ansible上執行shell指令碼實現批量免密

4:ansible上批量分發四臺主機配置、停防火牆、關閉Swap、關閉Selinux、設定核心、K8S的yum源、安裝依賴包、配置ntp(配置完後建議重啟一次)

編輯ansible-playbook

1、vim files/fstab

# /etc/fstab
# Created by anaconda on Sat Oct 31 00:13:02 2020
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8
) for more info # /dev/mapper/centos-root / xfs defaults 0 0 UUID=8808a084-af9b-4dc7-8c19-dbdbd4822bd0 /boot xfs defaults 0 0 /dev/mapper/centos-home /home xfs defaults 0 0 #/dev/mapper/centos-swap swap swap defaults 0 0

2、vim files/k8s.conf

net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1                                   

3、vim tasks/main.yml

- include: fire.yml
- include: selinux.yml
- include: swap.yml
- include: sysctl.yml

4、vim tasks/fire.yml

- name: stop firewall
  service: name=firewalld state=stopped enabled=no

5、vim tasks/selinux.yml

- name: SELINUX=disabled
  selinux: state=disabled

6、vim tsaks/swap.yml

- name: swapoff
  shell: swapoff -a
- name: copy fstab
  copy: src=fstab dest=/etc/fstab

7、vim tasks/sysctl.yml

- name: copy k8s.conf file
  copy: src=k8s.conf dest=/etc/sysctl.d/k8s.conf
- name: sysctl k8s
  shell: sysctl -p /etc/sysctl.d/k8s.conf