k8s 单机 部署
香港服务器 centos7.6 2核4G 30M
搞个k8s单机部署搞了好几天 就是一直出错 遇到了好多次镜像的错误 真的是日了🐕了
索性 搞个香港服务器,不折腾镜像源了
Deploy Kubernetes On-Premises Using CentOS 7 — Part 1
https://medium.com/@sartak812/deploy-kubernetes-on-premises-using-centos-7-part1-4c61691b5520
Deploy Kubernetes On-Premises Using CentOS 7 — Part 2
https://medium.com/@sartak812/deploy-kubernetes-on-premises-using-centos-7-part-2-9f6a8f46826b
kubernetes.repo
kubernetes.repo 这个文件,需要去官网下载最新的
https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
# This overwrites any existing configuration in /etc/yum.repos.d/kubernetes.repo
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/repodata/repomd.xml.key
exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni
EOF
couldn’t get current server API group list
couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s":
dial tcp 127.0.0.1:8080: connect: connection refused
[root@kube-master ~]# kubectl get nodes
E0813 00:09:15.710990 6600 memcache.go:265] couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s": dial tcp 127.0.0.1:8080: connect: connection refused
原因 KUBECONFIG这个变量没了
解决方法:
export KUBECONFIG=/etc/kubernetes/admin.conf
长期解决方法:
This error primarily happens due to Kubeconfig file not present in the users $HOME/.kube/config location.
把admin.conf 复制到这个目录下
参考:
https://discuss.kubernetes.io/t/couldnt-get-current-server-api-group-list-get-http-localhost-8080-api-timeout-32s-dial-tcp-127-0-0-1-connect-connection-refused/25471/4
$ echo $KUBECONFIG
empty
$ kubectl get pods
E1002 10:16:21.854341 105845 memcache.go:265] couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s": dial tcp [::1]:8080: connect: connection refused
$ KUBECONFIG=$HOME/.kube/config/admin.conf
$ kubectl get pods
No resources found in default namespace.
最终的解决方法:
mkdir -p /root/.kube/config/
cd /root/.kube/config/
cp /etc/kubernetes/admin.conf ./
chmod 777 admin.conf
假设你的 kubeconfig 文件位于/root/.kube/config/admin.conf ,那么你可以按照以下步骤设置:
编辑 /etc/profile:
sudo vim /etc/profile
添加环境变量: 在文件末尾添加以下行:
export KUBECONFIG=/root/.kube/config/admin.conf
保存并退出: 保存文件并退出编辑器。
使更改生效: 重新加载 /etc/profile 文件:
source /etc/profile
验证设置: 检查 KUBECONFIG 是否设置正确:
echo $KUBECONFIG
现在,你已经永久设置了 KUBECONFIG 环境变量,可以在任何时候使用 kubectl 命令来管理 Kubernetes 集群。