Kubernetes
Kubernetes
裸机搭建 Kubernetes
- 初始化 Kubernetes
1
2
3
4
5
6sudo swapoff -a
sudo systemctl start kubelet
sudo kubeadm init --control-plane-endpoint=main --pod-network-cidr=10.244.0.0/16
cp /etc/kubernetes/admin.conf ~/.kube/config
# 如果出错使用下列命令重置
sudo kubeadm reset - 安装 cilium
1
2
3
4
5
6
7
8
9
10
11
12helm upgrade cilium cilium/cilium \
--namespace kube-system \
--reuse-values \
--set kubeProxyReplacement=true \
--set l2announcements.enabled=true \
--set k8sClientRateLimit.qps=10 \
--set k8sClientRateLimit.burst=20 \
--set kubeProxyReplacement=true \
--set k8sServiceHost="k8s.local" \
--set k8sServicePort=6443 \
# --set devices= \
--set externalIPs.enabled=true - 安装 Dashboard
1
2helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard - 移除主节点的
NoScheduletaint1
kubectl taint nodes xwd node-role.kubernetes.io/control-plane:NoSchedule- - 创建 root 用户并绑定最高权限
1
2kubectl create serviceaccount root
kubectl create clusterrolebinding rootBind --clusterrole=cluster-admin --serviceaccount=default:root - 生成 root 用户登录 Dashboard 的 Token,并开放 Dashboard 本地访问
1
kubectl create token root && kubectl port-forward -n kubernetes-dashboard svc/kubernetes-dashboard-kong-proxy 8443:443
常用命令
1 | |
更换 CA 证书
- 将
/etc/kubernetes/pki目录下的所有根证书替换为新的根证书 - 执行命令
sudo kubeadm certs renew all - 替换
/etc/kubernetes/kubelet.conf文件内的certificate-authority-data为新的根证书(该字段为 pem 文件的 base64 编码) - 软链接
/var/lib/kubelet/pki/kubelet-client-current.pem为 kubeadm 新生成的apiserver-kubelet-client的证书和密钥