本文記錄 Mac 上 VirtualBox 虛擬機 Ubuntu 在國內環境下利用 minikube 安裝單節點 Kubernetes 集羣。自行開發學習使用,並不用於生產環境的部署。
前提:
1)macOS 安裝好 VirtualBox
2)下載鏡像並創建好 VM,安裝操作系統並設置好網絡
這部分可以參考《Mac上使用VirtualBox安裝Ubuntu並流暢ssh連接使用》
個人搭建環境:
- Ubuntu:18.04 (2核 4G內存 30G磁盤)
- docker:18.09
- minikube:v1.2.0(阿里雲修改版)
- kubernetes:v1.15.0(包含:kubeadm、kubelet、master相關組件)
步驟:
Step1:安裝docker並更新鏡像倉庫
# (1) 安裝:
# ubuntu下:
sudo apt-get install docker.io
# centos下:
sudo yum install docker-ce
# (2) 鏡像加速:
# 創建 /etc/docker/daemon.json 文件,並添加如下內容:
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
# (3) 重啓 docker 服務
sudo /etc/init.d/docker restart
Step2:安裝kubectl
(參考官網文檔:https://kubernetes.io/docs/tasks/tools/install-kubectl/)
# (1) 下載最新版本
curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl
# (2) 設置
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
# (3) 驗證
kubectl version
Step3:安裝minikube
如果沒有國內網絡“牆”的限制,直接按照《minikube網站文檔》安裝就可以了,但是,這裏問題就是很多鏡像或網站在國內環境下沒法下,所以要感謝下阿里雲的工作了:
# (1) 下載
curl -Lo minikube http://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/v1.2.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
# 解釋:國內環境下利用阿里雲發佈的 minikube 來安裝,整個過程會變得十分流暢。至於版本 v1.2.0 這裏可以自行查看最新版
# (2) 啓動
minikube start --vm-driver=none --registry-mirror=https://registry.docker-cn.com
# 解釋:minikube實際是跑在虛擬機上的,但由於我這裏已經是在 VM 中運行的 minikube,所以採用 --vm-driver=none 方式,便不需要格外的創建虛擬機了
# 同時鏡像下載使用 docker 國內源
Step4:驗證
# 查看系統組件
kubectl get pods -n kube-system
kubectl get node
其他:
minikube是一個單節點集羣的部署工具,核心是依靠kubeadm這個工具來部署集羣的。想了解下原理可以看看 《kubeadm 部署 Kubernetes 原理》
參考:
參考1:https://my.oschina.net/u/228832/blog/3079150
參考2:https://kubernetes.io/docs/tasks/tools/install-kubectl/
參考3:https://minikube.sigs.k8s.io/docs/start/linux/