1.关闭防火墙
systemctl disable firewalld #永久关闭
systemctl stop firewalld #临时关闭
2.关闭selinux
sed -i 's/enforcing/disabled/' /etc/selinux/config #永久关闭
setenforce 0 #临时关闭
3.关闭swap
sed -ri 's/.*swap.*/#&/' /etc/fstab #永久关闭
swapoff -a #临时关闭
4.根据规划设计主机名
hostnamectl set-hostname
5.在master添加hosts
cat >> /etc/hosts << EOF 192.168.10.110 k8s-master 192.168.10.111 k8s-node111 192.168.10.112 k8s-node112 EOF
6.将桥接的IPv4流量传递到iptables的链
cat > /etc/sysctl.d/k8s.conf << EOF net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF
sysctl --system #生效
7.时间同步
yum install ntpdate -y
ntpdate time.windows.com
8.安装dockerlinux centos7安装docker_a124550785的博客-CSDN博客第一步:打开docker官网https://docs.docker.com/engine/install/centos/进入官网点击安装并下载第一步:第三步:第四步:执行linux命令1.卸载系统自带的docker$ sudo yum remove docker docker-client docker-client-latest docker-c..https://blog.csdn.net/a124550785/article/details/115322743配置阿里镜像
cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
}
EOF
9.设置kubernetes的yum源
cat > /etc/yum.repos.d/kubernetes.repo << EOF [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=0 repo_gpgcheck=0 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF
10.安装kubelet、kubeadm、kubectl
yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0
systemctl enable kubelet
11.部署Kubernetes Master,在Master服务器上执行
kubeadm init --apiserver-advertise-address=192.168.10.110 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.18.0 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16
初始化完成后,有提示操作说明,以下为示例,执行代码按实际操作中返回的展示代码执行:
To start using your cluster, you need to run the following as a regular user:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
https://kubernetes.io/docs/concepts/cluster-administration/addons/
Then you can join any number of worker nodes by running the following on each as root:
kubeadm join 192.168.10.110:6443 --token j6sb8s.lezund2frja2sfwz
--discovery-token-ca-cert-hash sha256:cd2d9626e7f255d0c69320d45c13ff9415a11f7ec00658951b311b53e77309d0
12.设置kubectl(在Master服务器执行)
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
查看节点
kubectl get nodes
13.在node服务器上执行以下代码,将节点加入到集群中
kubeadm join 192.168.10.110:6443 --token j6sb8s.lezund2frja2sfwz
--discovery-token-ca-cert-hash sha256:cd2d9626e7f255d0c69320d45c13ff9415a11f7ec00658951b311b53e77309d0
其中的token有效期为24小时,过期后重新生成(在Master服务器执行):
kubeadm token create --print-join-command
14.部署CNI网络插件(在Master服务器执行)
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/documentation/kube-flannel.yml kubectl get pods -n kube-system
15.测试Kubernetes集群(在Master服务器执行)
kubectl create deployment nginx --image=nginx kubectl expose deployment nginx --port=80 --type=NodePort kubectl get pod,svc



