返回

详解 k8s 离线安装部署教程(X86 二):掌控集群架构,轻松打造高效环境

后端

6. 设置ipvs模式

6.1 配置ipvs模块

modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wlc
modprobe -- ip_vs_sh
modprobe -- br_netfilter
modprobe -- iptable_nat

6.2 配置netfilter支持ipvs

echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/vs/conntrack
cat <<EOF >> /etc/sysctl.conf
net.ipv4.ip_forward=1
net.ipv4.vs.conntrack=1
EOF

6.3 设置iptables规则

iptables -A OUTPUT -p tcp --dport 80 -j DNAT --to-destination 10.244.0.10:80
iptables -A OUTPUT -p tcp --dport 443 -j DNAT --to-destination 10.244.0.10:443

6.4 启用ipvs规则

sysctl -p

7. 部署calico网络

7.1 配置calico网络

kubectl create -f https://docs.projectcalico.org/v3.21/manifests/calico.yaml

7.2 验证calico网络

kubectl get pods -n kube-system -l k8s-app=calico-node

8. 部署k8s组件

8.1 准备所需镜像

kubeadm config images pull --kubernetes-version=v1.22.4

8.2 初始化k8s集群

kubeadm init --apiserver-advertise-address=10.244.0.10 --pod-network-cidr=10.244.0.0/16 --kubernetes-version=v1.22.4 --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers

8.3 配置kubeadm.yaml文件

apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
kubernetesVersion: v1.22.4
controlPlaneEndpoint: 10.244.0.10:6443
apiServer:
  certSANs:
  - 10.244.0.10
  extraArgs:
    ipvs-mode: ipvs
networking:
  podSubnet: 10.244.0.0/16

8.4 加入其他节点

kubeadm join 10.244.0.10:6443 --token 5abf1b.2deef466b3fb9792 --discovery-token-ca-cert-hash sha256:5e5122d4d6d9f4d0ca2f94a0966d58385000f66b3d644716721a897d6b24c4c1

8.5 安装flannel网络

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

9. 配置集群安全

9.1 创建rbac

kubectl create clusterrolebinding kube-proxy-role --clusterrole=system:kube-proxy --user=kube-proxy

9.2 安装kube-dashboard

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.6.0/aio/deploy/recommended.yaml

9.3 安装metrics-server

kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.6.1/components.yaml

至此,k8s 离线安装部署教程(X86 二)的内容已经全部完成。在本文中,我们详细介绍了 k8s 集群的构建过程,包括准备环境、配置 ipvs 模式、部署 calico 网络、部署 k8s 组件、配置集群安全等步骤。希望通过本文,您可以顺利搭建自己的 k8s 集群,并为后续的集群管理做好充分的准备。