我建议按照官方指南引导 Kubernetes 集群文档。我已继续执行一些步骤在同一 CentOS 版本上构建集群CentOS Linux release 7.5.1804 (Core)
并与您分享,希望对您解决安装过程中的问题有所帮助。
首先擦除当前的集群安装:
# kubeadm reset -f && rm -rf /etc/kubernetes/
添加 Kubernetes 存储库以进一步了解kubeadm
, kubelet
, kubectl
安装:
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*
EOF
检查是否SELinux
处于宽容模式:
# getenforce
Permissive
Ensure net.bridge.bridge-nf-call-iptables
在 sysctl 中设置为 1:
# cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system
安装所需的 Kubernetes 组件并启动服务:
# yum update && yum upgrade && yum install -y docker kubelet kubeadm kubectl --disableexcludes=kubernetes
# systemctl start docker kubelet && systemctl enable docker kubelet
通过以下方式部署集群kubeadm
:
kubeadm init --pod-network-cidr=10.244.0.0/16
我更喜欢安装Flannel
作为主要的CNI
在我的集群中,尽管有一些适当的先决条件吊舱网络安装,我已经通过了--pod-network-cidr=10.244.0.0/16
标记为kubeadm init
命令。
为您的用户和存储创建 Kubernetes 主目录config
file:
$ mkdir -p $HOME/.kube
$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
$ sudo chown $(id -u):$(id -g) $HOME/.kube/config
安装 Pod 网络,就我而言是Flannel
:
$ kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/bc79dd1505b0c8681ece4de4c0d86c5cd2643275/Documentation/kube-flannel.yml
最后检查 Kubernetes 核心 Pod 状态:
$ kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system coredns-576cbf47c7-4x7zq 1/1 Running 0 36m
kube-system coredns-576cbf47c7-666jm 1/1 Running 0 36m
kube-system etcd-centos-7-5 1/1 Running 0 35m
kube-system kube-apiserver-centos-7-5 1/1 Running 0 35m
kube-system kube-controller-manager-centos-7-5 1/1 Running 0 35m
kube-system kube-flannel-ds-amd64-2bmw9 1/1 Running 0 33m
kube-system kube-proxy-pcgw8 1/1 Running 0 36m
kube-system kube-scheduler-centos-7-5 1/1 Running 0 35m
如果您仍有任何疑问,请在此答案下方写下评论。