Kubernetesv1.34+集群初始化
prod-k8s-master (master节点) 配置集群初始化配置文件
1:编写Kubernetes初始化配置文件
vim /root/kubeadm-config.yaml
---
apiVersion: kubeadm.k8s.io/v1beta4
bootstrapTokens:
- groups:
- system:bootstrappers:kubeadm:default-node-token
token: 7t2weq.bjbawausm0jaxury
ttl: 24h0m0s
usages:
- signing
- authentication
kind: InitConfiguration
localAPIEndpoint:
advertiseAddress: <master的ip> #注意
bindPort: 6443
nodeRegistration:
criSocket: unix:///var/run/containerd/containerd.sock
imagePullPolicy: IfNotPresent
imagePullSerial: true
name: prod-k8s-master #注意跟自己master主机名一致
taints:
- effect: NoSchedule
key: node-role.kubernetes.io/control-plane
timeouts:
controlPlaneComponentHealthCheck: 4m0s
discovery: 5m0s
etcdAPICall: 2m0s
kubeletHealthCheck: 4m0s
kubernetesAPICall: 1m0s
tlsBootstrap: 5m0s
upgradeManifests: 5m0s
---
apiServer:
certSANs:
- <单master写ip> #注意
apiVersion: kubeadm.k8s.io/v1beta4
caCertificateValidityPeriod: 876000h0m0s
certificateValidityPeriod: 876000h0m0s
certificatesDir: /etc/kubernetes/pki
clusterName: kubernetes
controlPlaneEndpoint: <单master写ip>:6443 #注意
controllerManager: {}
dns: {}
encryptionAlgorithm: RSA-2048
etcd:
local:
dataDir: /var/lib/etcd
imageRepository: registry.cn-hangzhou.aliyuncs.com/google_containers
kind: ClusterConfiguration
kubernetesVersion: v1.34.4 #注意k8s版本
networking:
dnsDomain: cluster.local
podSubnet: 172.16.0.0/16
serviceSubnet: 10.96.0.0/16
proxy: {}
scheduler: {}
查看kubernetesVersion
kubectl version
2:更新的初始化文件(可选,更新记得更改controlPlaneComponentHealthCheck默认的超时时间,以及证书的有效时间)
kubeadm config migrate --old-config kubeadm-config.yaml --new-config new.yaml
集群Master节点拉取相关组件镜像
kubeadm config images pull --config new.yaml

node节点入网
worker 节点执行 kubeadm join,本机 kubelet 连上集群
prod-k8s-master0生成集群Token值
kubeadm init --config new.yaml --upload-certs
这里要是报错了, 到当前目录下的new.yaml修改默认等待时间

然后执行下方蓝色字体下方命令清除缓存!
执行成功:

prod-k8s-master节点执行命令 : 上方图片内对应第一个的红色框内的命令
集群其他Master节点执行命令(红框2) #现在单master用不到
集群其他Node节点执行命令(红框3)
#在对应的工作节点执行,加入到集群内
#以自己的实际生成的命令代码为准


5228

被折叠的 条评论
为什么被折叠?



