以前mac上k8s一直起不来,最近升级了一下docker for mac 的版本为3.2.2,对应k8s 版本为1.19.7 发现k8s 可用了
查了下官方文档
https://docs.docker.com/docker-for-mac/apple-m1/
https://www.docker.com/blog/new-docker-desktop-preview-for-apple-m1-released/
意外发现 mac m1 也支持了,测试了一把,果然成功了,如图
下面记录一下安装过程希望对大家有所帮助,卸载更新版本以后
1,先要清理旧数据
rm -rf ~/.kuberm -rf ~/.minikuberm -rf usr/local/bin/minikube
rm -rf ~/Library/Group\ Containers/group.com.docker/pki
rm -rf ~/.kube
2,将配置恢复到默认
3,注意恢复以后不要默认启动k8s,可以修改配置,只启动docker
vi ~/Library/Group\ Containers/group.com.docker/settings.json
"kubernetesEnabled": false,
"showKubernetesSystemContainers": false,
"kubernetesInitialInstallPerformed": false,
4,启动dockerdesktop
5,由于国内网络原因,需要设置镜像仓库
git clone https://github.com/AliyunContainerService/k8s-for-docker-desktop
cd k8s-for-docker-desktop
git checkout v1.19.7
6,从阿里源拉取镜像
sh load_images.sh
可以看到拉取了k8s最小系统依赖的镜像,tag对应的版本v1.19.7
% docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker/desktop-kubernetes kubernetes-v1.19.7-cni-v0.8.5-critools-v1.17.0-debian 93b3398dbfde 6 weeks ago 285MB
k8s.gcr.io/kube-proxy v1.19.7 9d368f4517bb 2 months ago 118MB
k8s.gcr.io/kube-apiserver v1.19.7 c15e4f843f01 2 months ago 119MB
k8s.gcr.io/kube-scheduler v1.19.7 4fa642720eea 2 months ago 45.6MB
k8s.gcr.io/kube-controller-manager v1.19.7 67b3bca112d1 2 months ago 111MB
k8s.gcr.io/etcd 3.4.13-0 0369cf4303ff 6 months ago 253MB
k8s.gcr.io/coredns 1.7.0 bfe3a36ebd25 9 months ago 45.2MB
docker/desktop-storage-provisioner v1.1 e704287ce753 12 months ago 41.8MB
docker/desktop-vpnkit-controller v1.0 79da37e5a3aa 12 months ago 36.6MB
k8s.gcr.io/pause 3.2 80d28bedfe5d 13 months ago 683kB
quay.io/kubernetes-ingress-controller/nginx-ingress-controller 0.26.1 29024c9c6e70 17 months ago 483MB
7,等拉取镜像完毕后,启动k8s,注意需要把内存设置到4G,等一会儿,就可以看到上面成功的页面。
测试下我们发现master 节点已经起来了,名字叫docker-desktop
% kubectl get node
NAME STATUS ROLES AGE VERSION
docker-desktop Ready master 61m v1.19.7
看一下运行了哪些pod
% kubectl get pod -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-f9fd979d6-cg26k 1/1 Running 0 65m
coredns-f9fd979d6-dqffw 1/1 Running 0 65m
etcd-docker-desktop 1/1 Running 0 64m
kube-apiserver-docker-desktop 1/1 Running 0 64m
kube-controller-manager-docker-desktop 1/1 Running 0 63m
kube-proxy-fw6rz 1/1 Running 0 65m
kube-scheduler-docker-desktop 1/1 Running 0 63m
storage-provisioner 1/1 Running 0 63m
vpnkit-controller 1/1 Running 0 63m
具体一点,我们可以看到都运行在我们的master node上
% kubectl get pod -n kube-system -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
coredns-f9fd979d6-cg26k 1/1 Running 0 125m 10.1.0.2 docker-desktop <none> <none>
coredns-f9fd979d6-dqffw 1/1 Running 0 125m 10.1.0.3 docker-desktop <none> <none>
etcd-docker-desktop 1/1 Running 0 124m 192.168.65.4 docker-desktop <none> <none>
kube-apiserver-docker-desktop 1/1 Running 0 124m 192.168.65.4 docker-desktop <none> <none>
kube-controller-manager-docker-desktop 1/1 Running 0 124m 192.168.65.4 docker-desktop <none> <none>
kube-proxy-fw6rz 1/1 Running 0 125m 192.168.65.4 docker-desktop <none> <none>
kube-scheduler-docker-desktop 1/1 Running 0 124m 192.168.65.4 docker-desktop <none> <none>
storage-provisioner 1/1 Running 0 124m 10.1.0.4 docker-desktop <none> <none>
vpnkit-controller 1/1 Running 0 124m 10.1.0.5 docker-desktop <none> <none>
文章转载自golang算法架构leetcode技术php,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。