天天看點

為Kubernetes叢集部署本地鏡像倉庫

  經過之前兩篇文章:Centos7部署Kubernetes叢集、基于kubernetes叢集部署DashBoard,我們基本上已經能夠在k8s的叢集上部署一個應用了,但有一個問題就是:生産環境下,我們勢必不能夠每個機器都導入一遍從海外下載下傳回來的鏡像,也不能真的搭建一個長期使用的梯子,這兩個方法都不是可以長期使用的。以下,我們通過搭建本地的私有鏡像倉庫(docker registry,這個鏡像可以在國内直接下載下傳)來解決這個問題。

  在master上搭建registry。

其中,/home/data/registrydata是一個比較大的系統分區,今後鏡像倉庫中的全部資料都會儲存在這個外挂目錄下。

  Dashboard是在yaml中定義的,要更改dashboard.yaml中對應的“image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.1”為“image: registry:5000/kubernetes-dashboard-amd64:v1.5.1”

  pod-infrastructure是在node的kubelet配置檔案中定義的,要更改每個node中/etc/kubernetes/kubelet中對應的“KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=registry.access.redhat.com/rhel7/pod-infrastructure:latest"為“KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image= registry:5000/pod-infrastructure:latest "”。更改之後需要重新開機kubelet服務。

  執行完基于kubernetes叢集部署DashBoard中的“銷毀應用”之後,再次執行“啟動”,即可完成dashboard的重建。