共計 5515 個字符,預計需要花費 14 分鐘才能閱讀完成。
這篇文章主要講解了“Kubernetes 鏡像的離線保存和載入方法是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著丸趣 TV 小編的思路慢慢深入,一起來研究和學習“Kubernetes 鏡像的離線保存和載入方法是什么”吧!
把 Kubernetes 的鏡像離線保存到文件,然后從文件載入就可以實現離線安裝了(非常快)。
這里使用的 Kubernetes 1.12.1 版本的鏡像,其它版本修改對應的版本號即可。
1、保存到文件 -Save Images
使用 docker save 命令來保存 docker images 到文件,-o 參數指示文件名。
運行下面的腳本之前,建議為鏡像文件建立一個單獨的目錄。
如下:
echo ===================================================================
echo Save Kubernetes images to tar.
echo This tool created by https://my.oschina.net/u/2306127
echo Please visit https://github.com/openthings/kubernetes-tools
echo ###################################################################
echo Kubernetes core system images.
echo -------------------------------------------------------------------
echo A1. k8s.gcr.io/kube-apiserver:v1.12.1
sudo docker save k8s.gcr.io/kube-apiserver:v1.12.1 -o A1-k8s-kube-apiserver-v1.12.1.tar
echo
echo A2. k8s.gcr.io/kube-controller-manager:v1.12.1
sudo docker save k8s.gcr.io/kube-controller-manager:v1.12.1 -o A2-k8s-kube-controller-manager-v1.12.1.tar
echo
echo A3. k8s.gcr.io/kube-scheduler:v1.12.1
sudo docker save k8s.gcr.io/kube-scheduler:v1.12.1 -o A3-k8s-kube-scheduler-v1.12.1.tar
echo
echo A4. k8s.gcr.io/kube-proxy:v1.12.1
sudo docker save k8s.gcr.io/kube-proxy:v1.12.1 -o A4-k8s-kube-proxy-v1.12.1.tar
echo
echo A5. k8s.gcr.io/pause:3.1
sudo docker save k8s.gcr.io/pause:3.1 -o A5-k8s-pause-3.1.tar
echo
echo A6. k8s.gcr.io/etcd:3.2.24
sudo docker save k8s.gcr.io/etcd:3.2.24 -o A6-k8s-etcd-3.2.24.tar
echo
echo A7. k8s.gcr.io/coredns:1.2.2
sudo docker save k8s.gcr.io/coredns:1.2.2 -o A7-k8s-coredns-1.2.2.tar
echo
echo ===================================================================
echo B1. quay.io/coreos/flannel:v0.10.0-amd64
sudo docker save quay.io/coreos/flannel:v0.10.0-amd64 -o B1-flannel-v0.10.0.tar
echo
echo B2. k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.0
sudo docker save k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.0 -o B2-dashboard-v1.10.0.tar
echo
echo B3. gcr.io/kubernetes-helm/tiller:v2.11.0
sudo docker save gcr.io/kubernetes-helm/tiller:v2.11.0 -o B3-helm-tiller-v2.11.0.tar
echo
echo B4. quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.14.0
sudo docker save quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.14.0 -o B4-ingress-controller-0.14.0.tar
echo
echo B5. k8s.gcr.io/defaultbackend:1.3
sudo docker save k8s.gcr.io/defaultbackend:1.3 -o B5-k8s-defaultbackend-1.3.tar
echo
echo ===================================================================
echo Save kubernetes images Finished.
echo This tool created by https://my.oschina.net/u/2306127
echo Please visit https://github.com/openthings/kubernetes-tools
echo ===================================================================
echo
上面的 A * 為 Kubernetes 系統鏡像,B* 為幾個常用的擴展模塊的鏡像。如果還需要其它鏡像,仿照上面編寫腳本即可。
保存為文件 k8s-images-save.sh,然后執行。
2、復制 images
使用 U 盤或網絡或者其它網絡,傳送 images 到任何地方。
初始鏡像的建立請參考《Kubernetes 1.12.1 快速升級》,可以從我建的鏡像倉庫下載。
IPFS, https://ipfs.io /ipfs/QmUTm9wHwXcwHNzp7Yv9XtrRq5kr9iwGfdh2XdG25NEg5b k8s-images-1.12.1.zip
Test IPFS http://127.0.0.1:8080/ipfs/QmZP1Gk88qdijGLg8L2NiB6ZqhK4HsUN39DsEdH5rxn9C8
http://127.0.0.1:8080/ipfs/QmSDhnmQ3oJWpiC1V4DnU7714L6qYUC7JBB4oRLMLLGGYa/Oracle_VM_VirtualBox_Extension_Pack-5.2.18.vbox-extpack
http://127.0.0.1:8080/ipfs/QmSDhnmQ3oJWpiC1V4DnU7714L6qYUC7JBB4oRLMLLGGYa
網盤下載(帶解壓復原腳本), https://pan.baidu.com/s/1Eo0PAAGcIxOQqHn-QwhDeA
使用壓縮包里面的腳本 k8s-images-load.sh,可以快速復原鏡像到 docker images。
3、從文件載入 -Load Images
使用 docker load 命令來從文件載入 docker images,-i 參數指示源文件名。如下:
echo ===================================================================
echo Load Kubernetes images from tar.
echo This tool created by https://my.oschina.net/u/2306127
echo Please visit https://github.com/openthings/kubernetes-tools
echo ###################################################################
echo Kubernetes core system images.
echo -------------------------------------------------------------------
echo A1 k8s.gcr.io/kube-apiserver:v1.12.1
sudo docker load -i A1-k8s-kube-apiserver-v1.12.1.tar
echo
echo A2 k8s.gcr.io/kube-controller-manager:v1.12.1
sudo docker load -i A2-k8s-kube-controller-manager-v1.12.1.tar
echo
echo A3 k8s.gcr.io/kube-scheduler:v1.12.1
sudo docker load -i A3-k8s-kube-scheduler-v1.12.1.tar
echo
echo A4 k8s.gcr.io/kube-proxy:v1.12.1
sudo docker load -i A4-k8s-kube-proxy-v1.12.1.tar
echo
echo A5 k8s.gcr.io/pause:3.1
sudo docker load -i A5-k8s-pause-3.1.tar
echo
echo A6 k8s.gcr.io/etcd:3.2.24
sudo docker load -i A6-k8s-etcd-3.2.24.tar
echo
echo A7 k8s.gcr.io/coredns:1.2.2
sudo docker load -i A7-k8s-coredns-1.2.2.tar
echo
echo ===================================================================
echo B1 quay.io/coreos/flannel:v0.10.0-amd64
sudo docker load -i B1-flannel-v0.10.0.tar
echo
echo B2 k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.0
sudo docker load -i B2-dashboard-v1.10.0.tar
echo
echo B3 gcr.io/kubernetes-helm/tiller:v2.11.0
sudo docker load -i B3-helm-tiller-v2.11.0.tar
echo
echo B4 quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.14.0
sudo docker load -i B4-ingress-controller-0.14.0.tar
echo
echo B5 k8s.gcr.io/defaultbackend:1.3
sudo docker load -i B5-k8s-defaultbackend-1.3.tar
echo
echo ===================================================================
echo Load kubernetes images Finished.
echo This tool created by https://my.oschina.net/u/2306127
echo Please visit https://github.com/openthings/kubernetes-tools
echo ===================================================================
保存為文件 k8s-images-load.sh,然后執行。
感謝各位的閱讀,以上就是“Kubernetes 鏡像的離線保存和載入方法是什么”的內容了,經過本文的學習后,相信大家對 Kubernetes 鏡像的離線保存和載入方法是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關知識點的文章,歡迎關注!