Mac 安裝 Kubernetes 曲折的經歷
正常情況下,一般是這樣安裝,進入Docker Desktop 配置界面,勾選 "Enable Kubernetes" 然後單擊“Apply & Restart”
但是你會發現 kubernetes 一直處於 starting 狀態,這是因爲谷歌的 https://gcr.io/ 域名無法訪問。
網上很多解決方案是從鏡像下載,操作有點複雜。我的做法是科學上網,但是最近手上沒有資源可用,無法科學上網。
於是卸載了 Docker Desktop,抱着試試的心態安裝了 minikube
iMac:~ neo$ brew install minikube
然後啓動 minikube 提示需要 virtualbox 我是iMac 2011的系統是 High Sierra,下載安裝virtualbox 發線最新 6.1 提示出錯,卸載了6.1 安裝 5.x
啓動 minikube 後 virtualbox 可以彈出,但是運行鏡像出錯。
查看 --driver 參數後,發現可以支持 docker
iMac:~ neo$ minikube start --help | grep driver=''
--cache-images=true: If true, cache docker images for the current bootstrapper and load them into the machine. Always false with --driver=none.
--driver='': Driver is one of: virtualbox, parallels, vmwarefusion, hyperkit, vmware, docker, podman (experimental) (defaults to auto-detect)
--vm-driver='': DEPRECATED, use `driver` instead.
卸載 virtualbox 後,再重新安裝回 Docker Desktop,你懂 minikube 竟然安裝成功了
iMac:~ neo$ minikube start
查看運行狀態
iMac:~ neo$ minikube status
minikube
type: Control Plane
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured
查看配置
iMac:~ neo$ kubectl config view
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: DATA+OMITTED
server: https://kubernetes.docker.internal:6443
name: docker-desktop
- cluster:
certificate-authority: /Users/neo/.minikube/ca.crt
server: https://192.168.64.2:8443
name: minikube
contexts:
- context:
cluster: docker-desktop
user: docker-desktop
name: docker-desktop
- context:
cluster: minikube
user: minikube
name: minikube
current-context: minikube
kind: Config
preferences: {}
users:
- name: docker-desktop
user:
client-certificate-data: REDACTED
client-key-data: REDACTED
- name: minikube
user:
client-certificate: /Users/neo/.minikube/profiles/minikube/client.crt
client-key: /Users/neo/.minikube/profiles/minikube/client.key
啓動儀表板
iMac:Management neo$ minikube dashboard
🔌 正在開啓 dashboard ...
🤔 正在驗證 dashboard 運行情況 ...
🚀 Launching proxy ...
🤔 正在驗證 proxy 運行狀況 ...
🎉 Opening http://127.0.0.1:52944/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ in your default browser...
在 Docker Desktop 中查看 Kubernetes
上面的電腦是 iMac,下面我們在MacBook Pro 上再試一次,操作系統已經升級到最新的 macOS Big Sur
Docker 是 Stable 穩定版,上面試 Edge 版本。
安裝 minikube
neo@MacBook-Pro-Neo ~ % brew install minikube
調整一下資源,分配內存4G
啓動 minikube
neo@MacBook-Pro-Neo ~ % minikube start
😄 minikube v1.13.0 on Darwin 11.0
✨ Automatically selected the docker driver
👍 Starting control plane node minikube in cluster minikube
🚜 Pulling base image ...
🔥 Deleting "minikube" in docker ...
🔥 Removing /Users/neo/.minikube/machines/minikube ...
💀 Removed all traces of the "minikube" cluster.
👍 Starting control plane node minikube in cluster minikube
🔥 Creating hyperkit VM (CPUs=2, Memory=2200MB, Disk=20000MB) ...
❗ This VM is having trouble accessing https://k8s.gcr.io
💡 To pull new external images, you may need to configure a proxy: https://minikube.sigs.k8s.io/docs/reference/networking/proxy/
🐳 Preparing Kubernetes v1.19.0 on Docker 19.03.12 ...
🔎 Verifying Kubernetes components...
🌟 Enabled addons: default-storageclass, storage-provisioner
🏄 Done! kubectl is now configured to use "minikube" by default
neo@MacBook-Pro-Neo ~ %
查看啓動狀態
neo@MacBook-Pro-Neo ~ % minikube status
minikube
type: Control Plane
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured