前言
最近在阿里云上面购买了k8s集群,想在本地kubectl连接,期间遇到好多问题,记录下来分享给大家。
问题一:本地没有~/.kube目录?
我的电脑环境是mac,按照阿里云ACK提供的配置信息如下:
通过 kubectl 连接 Kubernetes 集群[通过 CloudShell 管理集群](javascript:;)
2. 安装和设置 kubectl 客户端。有关详细信息请参见 [安装和设置 kubectl](https://kubernetes.io/docs/tasks/kubectl/install/)。
3. 配置集群凭据:
将以下内容复制到计算机 $HOME/.kube/config 目录下。
......
配置完成后,即可使用 kubectl 从计算机访问 Kubernetes 集群。
但是,我发现我本机并没有发现目录~/.kube,到网上找了好多文章都没有很好的解释,关键是我已经安装了docker,偶然间发现了docker的kubernetes配置,如图:
我点击之后立马就出现了~/.kube目录,这样就解决了问题一!
问题二:Docker Kubernetes一直处于Starting?
问题一的时候我点击Enable Kubernetes之后就一直出现Starting,如下:
于是到网上找各种资料,最终解决方式如下,
1、卸载docker(看具体情况)
卸载之后别忘了配置阿里源
{
"experimental": true,
"debug": true,
"registry-mirrors": [
"https://xxx.mirror.aliyuncs.com"
]
}
2、查看hosts
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
#Added by Docker Desktop
#To allow the same kube context to work on the host and the container:
127.0.0.1 kubernetes.docker.internal
#End of section
3、删除相关文件
rm -rf ~/.docker
rm -rf ~/.kube
rm -rf ~/Library/Group\ Containers/group.com.docker/pki/
4、安装相关images文件
到k8s-for-docker-desktop上面clone项目,在 Mac 上执行如下脚本,
./load_images.sh
5、安装完成后,重启Docker和Kubernetes等待时间完成即可
总结
1、kubernetes一直处于Starting是因为相关Images没有下载完全,我们之所以用别人的k8s-for-docker-desktop来安装就是这个原因,安装好重启等待几分钟就好
2、如果你有两个及以上的k8s集群,那么只需要把连接信息直接追加到~/.kube/config
里面即可使用
3、如果你是在Linux安装了kubeadm,那么可以使用如下命令列举出相关的依赖镜像:
kubeadm config images list
然后你再逐个到docker hub上面pull下来
引用
【已解决】docker desktop 2.3.7 kubernetes(k8s)v1.18.8一直处于starting状态解决方法
macos docker 一直处于 kubernetes starting状态解决办法(当试过各种方法无用时,此方法有效)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。