Kubernetes的本地集羣搭建是一件頗費苦心的活,網上有各類參考資源,因爲版本和容器的不斷髮展,搭建的方式也是各不相同,這裏基於Docker CE的18.09.0版本,在Mac OS、Win10下分別搭建了一次。html
從Docker官方站點下載並安裝Docker for Mac或Docker for Windowsnode
截止目前用的是18.09.0版本,這一步驟比較簡單,略過。git
在 Docker -> Preferences ... 中,配置Deamon的mirrors爲:https://registry.docker-cn.comgithub
從阿里雲鏡像服務下載Kubernetes安裝所需Docker鏡像docker
git clone https://github.com/AliyunContainerService/k8s-for-docker-desktop cd k8s-for-docker-desktop
加載鏡像(注:在Bash下執行)api
./load_images.sh
在Docker for Mac中開啓 Kubernetes,等待以下消息 Kubernetes is running
安全
這時候 Kubernetes 已經能夠用了,咱們能夠看到docker 版本信息中,編排器已經成爲了kubernetesapp
1)驗證 Kubernetes 集羣狀態ui
kubectl cluster-info kubectl get nodes
2)部署 Kubernetes dashboard阿里雲
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml
3)開啓 API Server 訪問代理
kubectl proxy
4)這個時候須要驗證才能進入,這裏使用令牌來訪問,那麼令牌從哪兒獲取呢?
在kubernetes-dashboard.yaml父級文件夾下建立account.yaml文件用於訪問kubernetes-dashboard,添加以下配置
# Create Service AccountapiVersion: v1 kind: ServiceAccount metadata: name: admin-user namespace: kube-system ---# Create ClusterRoleBindingapiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRoleBinding metadata: name: admin-user roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: admin-user namespace: kube-system
獲取輸出的token粘貼複製到kubernetes-dashboard登錄頁面獲取受權
固然你也能夠不用令牌登陸,使用kubeconfig進行驗證和登陸。
http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/overview?namespace=default
如上,一切正常,請在界面上盡情的亂點吧。另外,若是有興趣,你還能夠安裝Dashboard的Heapster插件,這裏就再也不介紹了。
Win10下的搭建和Mac OS差異不大,只是使用PowerShell管理員身份下載鏡像的時候須要注意執行命令爲:.\load_images.ps1
這裏版本建議是
從阿里雲鏡像服務下載Kubernetes安裝所需Docker鏡像
git clone https://github.com/AliyunContainerService/k8s-for-docker-desktop cd k8s-for-docker-desktop
加載鏡像(注:若是在Windows中請在PowerShell下執行)
.\load_images.ps1
說明: 若是由於安全策略沒法執行 PowerShell 腳本,請在 「以管理員身份運行」 的 PowerShell 中執行 ```Set-ExecutionPolicy RemoteSigned``` 命令。
Settings裏啓動Kubernetes
該步驟同上面的Mac OS的一致,請移步上面查看,最後進入Dashboard,以下圖所示。