
一.资源准备系统版本 centos7.9硬件需求 cpu 4个 内存2G 硬盘20G虚拟机数量 三台三个互通ip二.环境准备 三台主机分别执行2.1 关闭防火墙 selinux 交换内存 重启生效systemctl stop firewalld; systemctl disable firewalld; sed -i s/enforcing/disabled/ /etc/selinux/config; sed -ri s/.*swap.*/#/ /etc/fstab; reboot;2.2 主机命名 配置解析hostnamectl set-hostname k8s-master-135; #hostnamectl set-hostname k8s-master-136; #hostnamectl set-hostname k8s-master-137; cat /etc/hosts EOF 192.168.133.135 k8s-master-135 192.168.133.136 k8s-node1-136 192.168.133.137 k8s-node2-137 EOF2.3设置内核转发 内核模块加载cat /etc/sysctl.d/k8s.conf EOF net.bridge.bridge-nf-call-ip6tables 1 net.bridge.bridge-nf-call-iptables 1 net.ipv4.ip_forward 1 vm.swappiness 0 EOF modprobe br_netfilter; sysctl --system; yum -y install ipset ipvsadm; cat /etc/sysconfig/modules/ipvs.modules EOF #!/bin/bash modprobe -- ip_vs modprobe -- ip_vs_rr modprobe -- ip_vs_wrr modprobe -- ip_vs_sh modprobe -- nf_conntrack_ipv4 EOF chmod 755 /etc/sysconfig/modules/ipvs.modules bash /etc/sysconfig/modules/ipvs.modules lsmod | grep -e ip_vs -e nf_conntrack_ipv44.安装docker k8sapt-get install -y wget; wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo; yum -y install docker-ce-18.06.3.ce-3.el7; systemctl enable docker systemctl start docker; mkdir -p /etc/docker; cat /etc/docker/daemon.json EOF { registry-mirrors: [ https://hub-mirror.c.163.com, https://docker.m.daocloud.io, https://docker.1panel.live, https://mirror.ccs.tencentyun.com ] } EOF systemctl daemon-reload; systemctl restart docker; cat /etc/yum.repos.d/kubernetes.repo EOF [kubernetes] nameKubernetes baseurlhttps://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/ enabled1 gpgcheck1 gpgkeyhttps://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/repodata/repomd.xml.key EOF yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0; cat /etc/sysconfig/kubelet EOF UBELET_EXTRA_ARGS--cgroup-driversystemd EOF systemctl enable kubelet;三.k8s集群配置kubeadm init \ --apiserver-advertise-address192.168.133.135 \ --image-repository registry.aliyuncs.com/google_containers \ --kubernetes-version v1.18.0 \ --service-cidr10.96.0.0/12 \ --pod-network-cidr10.244.0.0/16 mkdir -p $HOME/.kube; sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config; sudo chown $(id -u):$(id -g) $HOME/.kube/config #按照输出 其他节点添加进master kubectl get nodes; wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml; kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml