這是我參與8月更文挑戰的第2天,活動詳情查看:8月更文挑戰node
接上一篇最小化K8s環境部署之Minikube,除了minikube/kind外,還不很多其餘優秀的K8s環境部署工具,MicroK8s是目前最小、最快與Kubernetes全面兼容的集羣系統,主要用於工做站和小型團隊,可是目前鏡像並無與snap打包在一塊兒,還在gcr.io上,國內下載上仍是有問題。MicroK8s適合離線開發、原型開發和測試,尤爲是運行VM做爲小、便宜、可靠的k8s用於CI/CD。支持arm架構,也適合開發 IoT 應用,經過 MicroK8s 部署應用到小型Linux設備上。linux
snapd
的操做系統- see the snapd documentation)。$ snap install microk8s --classic
2021-08-06T16:56:05+08:00 INFO Waiting for automatic snapd restart...
microk8s (1.21/stable) v1.21.3 from Canonical✓ installed
複製代碼
$ microk8s kubectl get nodes
NAME STATUS ROLES AGE VERSION
vm-0-17-ubuntu NotReady <none> 2m7s v1.21.3-3+90fd5f3d2aea0a
$ microk8s kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.152.183.1 <none> 443/TCP 2m27s
# 檢測服務狀態
$ microk8s status --wait-ready
# 啓用相關組建
$ microk8s enable dashboard dns registry istio
# 查看k8s
$ microk8s kubectl get all --all-namespaces
# 訪問dashboard
$ microk8s dashboard-proxy
# 使用以有kubectl管理
$ sudo microk8s kubectl config view --raw > $HOME/.kube/config
# 查看插件
$ microk8s.status
複製代碼
使用宿主機kubectl管理集羣git
$ curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl &&\ chmod +x ./kubectl &&\ $ mv ./kubectl /usr/bin/kubectl
$ microk8s kubectl config view --raw > $HOME/.kube/config
$ kubectl get po -A
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system calico-kube-controllers-f7868dd95-s4c5m 0/1 Pending 0 5m33s
kube-system calico-node-8mxlc 0/1 Init:0/3 0 5m27s
複製代碼
與Minikube不一樣,IT管理員或開發人員可使用MicroK8s建立多節點集羣。若是MicroK8s在Linux上運行,甚至不須要VM。在Windows和macOS上,MicroK8s使用名爲Multipass的VM框架爲Kubernetes集羣建立VM。github
microk8s.io/ubuntu