KubeFlow 1.2.0鏡像比較多,存在多個docker倉庫中,其中部分訪問不可達。這裏介紹其緩存方法,可以加速KubeFlow部署的過程。本文實現了一個鏡像名稱的自動提取腳本。
1、準備配置文件
wget https://raw.githubusercontent.com/kubeflow/manifests/v1.2-branch/kfdef/kfctl_k8s_istio.v1.2.0.yaml
修改其中的 manifest source爲本地文件(先下載到本地):
repos:
- name: manifests
uri: file:/home/supermap/openthings/kubeflow/v1.2.0.tar.gz
version: v1.2-branch
改完後的kfctl_k8s_istio.v1.2.0.yaml長這樣:
apiVersion: kfdef.apps.kubeflow.org/v1
kind: KfDef
metadata:
clusterName: kubernetes
creationTimestamp: null
name: kubeflow
namespace: kubeflow
spec:
applications:
- kustomizeConfig:
repoRef:
name: manifests
path: namespaces/base
name: namespaces
- kustomizeConfig:
repoRef:
name: manifests
path: application/v3
name: application
- kustomizeConfig:
repoRef:
name: manifests
path: stacks/kubernetes/application/istio-1-3-1-stack
name: istio-stack
- kustomizeConfig:
repoRef:
name: manifests
path: stacks/kubernetes/application/cluster-local-gateway-1-3-1
name: cluster-local-gateway
- kustomizeConfig:
repoRef:
name: manifests
path: istio/istio/base
name: istio
- kustomizeConfig:
repoRef:
name: manifests
path: stacks/kubernetes/application/cert-manager-crds
name: cert-manager-crds
- kustomizeConfig:
repoRef:
name: manifests
path: stacks/kubernetes/application/cert-manager-kube-system-resources
name: cert-manager-kube-system-resources
- kustomizeConfig:
repoRef:
name: manifests
path: stacks/kubernetes/application/cert-manager
name: cert-manager
- kustomizeConfig:
repoRef:
name: manifests
path: stacks/kubernetes/application/add-anonymous-user-filter
name: add-anonymous-user-filter
- kustomizeConfig:
repoRef:
name: manifests
path: metacontroller/base
name: metacontroller
- kustomizeConfig:
repoRef:
name: manifests
path: admission-webhook/bootstrap/overlays/application
name: bootstrap
- kustomizeConfig:
repoRef:
name: manifests
path: stacks/kubernetes/application/spark-operator
name: spark-operator
- kustomizeConfig:
repoRef:
name: manifests
path: stacks/kubernetes
name: kubeflow-apps
- kustomizeConfig:
repoRef:
name: manifests
path: knative/installs/generic
name: knative
- kustomizeConfig:
repoRef:
name: manifests
path: kfserving/installs/generic
name: kfserving
- kustomizeConfig:
repoRef:
name: manifests
path: stacks/kubernetes/application/spartakus
name: spartakus
repos:
- name: manifests
uri: file:/home/supermap/openthings/kubeflow/v1.2.0.tar.gz
version: v1.2-branch
status:
reposCache:
- localPath: '".cache/manifests/manifests-1.2.0"'
name: manifests
把其中的 manifest下載下來:
wget https://github.com/kubeflow/manifests/archive/v1.2.0.tar.gz
然後,執行安裝到Kubernetes集羣:
kubectl apply -f kfctl_k8s_istio.v1.2.0.yaml
安裝完後,會發現kubectl get pod -n kubeflow得到的pod沒有正常啓動,主要是因爲鏡像下載失敗。
2、創建鏡像緩存腳本
下一步我們創建腳本,把鏡像緩存到本地。下面是使用Jupyter Lab來完成的腳本。
- 提取deployment的鏡像:
%%bash
#提取deployment的鏡像
depl=$(kubectl get deployment -n kubeflow -oname)
echo "#deployment " > imgs_list.txt
for d in ${depl}
do
dimgs=$(kubectl describe $d -n kubeflow | grep "Image")
dimg=(${dimgs//: / }) #(${dimgs//:/})
#echo $dimg
image_name=${dimg[1]}
echo "docker pull "$image_name >> imgs_list.txt
echo "docker tag "$image_name >> imgs_list.txt
done
- 提取replicaset的鏡像:
%%bash
#提取replicaset的鏡像
depl=$(kubectl get replicaset -n kubeflow -oname)
echo "#replicaset " >> imgs_list.txt
for d in ${depl}
do
dimgs=$(kubectl describe $d -n kubeflow | grep "Image")
dimg=(${dimgs//: / }) #(${dimgs//:/})
#echo $dimg
image_name=${dimg[1]}
echo "docker pull "$image_name >> imgs_list.txt
echo "docker tag "$image_name >> imgs_list.txt
done
- 提取statefulset的鏡像:
%%bash
#提取statefulset的鏡像
depl=$(kubectl get statefulset -n kubeflow -oname)
echo "#statefulset " >> imgs_list.txt
for d in ${depl}
do
dimgs=$(kubectl describe $d -n kubeflow | grep "Image")
dimg=(${dimgs//: / }) #(${dimgs//:/})
#echo $dimg
image_name=${dimg[1]}
echo "docker pull "$image_name >> imgs_list.txt
echo "docker tag "$image_name >> imgs_list.txt
done
通過上面的操作,所有kubeflow需要的鏡像名稱被提取到了imgs_list.txt文件中。
3、pull images list 以及 push 到 aliyun
修改腳本,把鏡像pull下來,然後push到aliyun的鏡像倉庫,其它節點就可以從aliyun直接拉取了。
注意:以下腳本需要修改成自己的鏡像倉庫名稱,有的倉庫需要提前登錄。
#deployment
docker pull gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker tag gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f xxx
docker pull argoproj/argoui:v2.3.0
docker tag argoproj/argoui:v2.3.0
docker pull gcr.io/ml-pipeline/cache-deployer:1.0.4
docker tag gcr.io/ml-pipeline/cache-deployer:1.0.4
docker pull gcr.io/ml-pipeline/cache-server:1.0.4
docker tag gcr.io/ml-pipeline/cache-server:1.0.4
docker pull gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker tag gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker pull gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker tag gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker pull docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker pull docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker pull mysql:8
docker tag mysql:8
docker pull docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker pull python:3.7
docker tag python:3.7
docker pull mysql:8.0.3
docker tag mysql:8.0.3
docker pull gcr.io/ml-pipeline/envoy:metadata-grpc
docker tag gcr.io/ml-pipeline/envoy:metadata-grpc
docker pull gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker tag gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker pull gcr.io/ml-pipeline/metadata-writer:1.0.4
docker tag gcr.io/ml-pipeline/metadata-writer:1.0.4
docker pull gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker tag gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker pull gcr.io/ml-pipeline/api-server:1.0.4
docker tag gcr.io/ml-pipeline/api-server:1.0.4
docker pull gcr.io/ml-pipeline/persistenceagent:1.0.4
docker tag gcr.io/ml-pipeline/persistenceagent:1.0.4
docker pull gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker tag gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker pull gcr.io/ml-pipeline/frontend:1.0.4
docker tag gcr.io/ml-pipeline/frontend:1.0.4
docker pull gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker tag gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker pull gcr.io/ml-pipeline/visualization-server:1.0.4
docker tag gcr.io/ml-pipeline/visualization-server:1.0.4
docker pull mpioperator/mpi-operator:latest
docker tag mpioperator/mpi-operator:latest
docker pull kubeflow/mxnet-operator:v1.0.0-20200625
docker tag kubeflow/mxnet-operator:v1.0.0-20200625
docker pull gcr.io/ml-pipeline/mysql:5.6
docker tag gcr.io/ml-pipeline/mysql:5.6
docker pull gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker tag gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker pull gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker tag gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker pull gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker tag gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker pull docker.io/seldonio/seldon-core-operator:1.4.0
docker tag docker.io/seldonio/seldon-core-operator:1.4.0
docker pull gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker tag gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker pull gcr.io/google_containers/spartakus-amd64:v1.1.0
docker tag gcr.io/google_containers/spartakus-amd64:v1.1.0
docker pull gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker tag gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker pull argoproj/workflow-controller:v2.3.0
docker tag argoproj/workflow-controller:v2.3.0
#replicaset
docker pull gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker tag gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker pull argoproj/argoui:v2.3.0
docker tag argoproj/argoui:v2.3.0
docker pull gcr.io/ml-pipeline/cache-deployer:1.0.4
docker tag gcr.io/ml-pipeline/cache-deployer:1.0.4
docker pull gcr.io/ml-pipeline/cache-server:1.0.4
docker tag gcr.io/ml-pipeline/cache-server:1.0.4
docker pull gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker tag gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker pull gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker tag gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker pull docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker pull docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker pull mysql:8
docker tag mysql:8
docker pull docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker pull python:3.7
docker tag python:3.7
docker pull mysql:8.0.3
docker tag mysql:8.0.3
docker pull gcr.io/ml-pipeline/envoy:metadata-grpc
docker tag gcr.io/ml-pipeline/envoy:metadata-grpc
docker pull gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker tag gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker pull gcr.io/ml-pipeline/metadata-writer:1.0.4
docker tag gcr.io/ml-pipeline/metadata-writer:1.0.4
docker pull gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker tag gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker pull gcr.io/ml-pipeline/api-server:1.0.4
docker tag gcr.io/ml-pipeline/api-server:1.0.4
docker pull gcr.io/ml-pipeline/persistenceagent:1.0.4
docker tag gcr.io/ml-pipeline/persistenceagent:1.0.4
docker pull gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker tag gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker pull gcr.io/ml-pipeline/frontend:1.0.4
docker tag gcr.io/ml-pipeline/frontend:1.0.4
docker pull gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker tag gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker pull gcr.io/ml-pipeline/visualization-server:1.0.4
docker tag gcr.io/ml-pipeline/visualization-server:1.0.4
docker pull mpioperator/mpi-operator:latest
docker tag mpioperator/mpi-operator:latest
docker pull kubeflow/mxnet-operator:v1.0.0-20200625
docker tag kubeflow/mxnet-operator:v1.0.0-20200625
docker pull gcr.io/ml-pipeline/mysql:5.6
docker tag gcr.io/ml-pipeline/mysql:5.6
docker pull gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker tag gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker pull gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker tag gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker pull gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker tag gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker pull docker.io/seldonio/seldon-core-operator:1.4.0
docker tag docker.io/seldonio/seldon-core-operator:1.4.0
docker pull gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker tag gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker pull gcr.io/google_containers/spartakus-amd64:v1.1.0
docker tag gcr.io/google_containers/spartakus-amd64:v1.1.0
docker pull gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker tag gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker pull argoproj/workflow-controller:v2.3.0
docker tag argoproj/workflow-controller:v2.3.0
#statefulset
docker pull gcr.io/kubeflow-images-public/ingress-setup:latest
docker tag gcr.io/kubeflow-images-public/ingress-setup:latest
docker pull gcr.io/kubeflow-images-public/kubernetes-sigs/application:1.0-beta
docker tag gcr.io/kubeflow-images-public/kubernetes-sigs/application:1.0-beta
docker pull gcr.io/kubebuilder/kube-rbac-proxy:v0.4.0
docker tag gcr.io/kubebuilder/kube-rbac-proxy:v0.4.0
docker pull metacontroller/metacontroller:v0.3.0
docker tag metacontroller/metacontroller:v0.3.0
4、從aliyun拉取到本地
從aliyun拉取到本地,然後tag爲原來的名稱。
注意:改爲自己的鏡像倉庫名稱。
#deployment
docker pull gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker tag xxx gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker pull argoproj/argoui:v2.3.0
docker tag argoproj/argoui:v2.3.0
docker pull gcr.io/ml-pipeline/cache-deployer:1.0.4
docker tag gcr.io/ml-pipeline/cache-deployer:1.0.4
docker pull gcr.io/ml-pipeline/cache-server:1.0.4
docker tag gcr.io/ml-pipeline/cache-server:1.0.4
docker pull gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker tag gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker pull gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker tag gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker pull docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker pull docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker pull mysql:8
docker tag mysql:8
docker pull docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker pull python:3.7
docker tag python:3.7
docker pull mysql:8.0.3
docker tag mysql:8.0.3
docker pull gcr.io/ml-pipeline/envoy:metadata-grpc
docker tag gcr.io/ml-pipeline/envoy:metadata-grpc
docker pull gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker tag gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker pull gcr.io/ml-pipeline/metadata-writer:1.0.4
docker tag gcr.io/ml-pipeline/metadata-writer:1.0.4
docker pull gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker tag gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker pull gcr.io/ml-pipeline/api-server:1.0.4
docker tag gcr.io/ml-pipeline/api-server:1.0.4
docker pull gcr.io/ml-pipeline/persistenceagent:1.0.4
docker tag gcr.io/ml-pipeline/persistenceagent:1.0.4
docker pull gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker tag gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker pull gcr.io/ml-pipeline/frontend:1.0.4
docker tag gcr.io/ml-pipeline/frontend:1.0.4
docker pull gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker tag gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker pull gcr.io/ml-pipeline/visualization-server:1.0.4
docker tag gcr.io/ml-pipeline/visualization-server:1.0.4
docker pull mpioperator/mpi-operator:latest
docker tag mpioperator/mpi-operator:latest
docker pull kubeflow/mxnet-operator:v1.0.0-20200625
docker tag kubeflow/mxnet-operator:v1.0.0-20200625
docker pull gcr.io/ml-pipeline/mysql:5.6
docker tag gcr.io/ml-pipeline/mysql:5.6
docker pull gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker tag gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker pull gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker tag gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker pull gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker tag gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker pull docker.io/seldonio/seldon-core-operator:1.4.0
docker tag docker.io/seldonio/seldon-core-operator:1.4.0
docker pull gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker tag gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker pull gcr.io/google_containers/spartakus-amd64:v1.1.0
docker tag gcr.io/google_containers/spartakus-amd64:v1.1.0
docker pull gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker tag gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker pull argoproj/workflow-controller:v2.3.0
docker tag argoproj/workflow-controller:v2.3.0
#replicaset
docker pull gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker tag gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker pull argoproj/argoui:v2.3.0
docker tag argoproj/argoui:v2.3.0
docker pull gcr.io/ml-pipeline/cache-deployer:1.0.4
docker tag gcr.io/ml-pipeline/cache-deployer:1.0.4
docker pull gcr.io/ml-pipeline/cache-server:1.0.4
docker tag gcr.io/ml-pipeline/cache-server:1.0.4
docker pull gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker tag gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker pull gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker tag gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker pull docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker pull docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker pull mysql:8
docker tag mysql:8
docker pull docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker pull python:3.7
docker tag python:3.7
docker pull mysql:8.0.3
docker tag mysql:8.0.3
docker pull gcr.io/ml-pipeline/envoy:metadata-grpc
docker tag gcr.io/ml-pipeline/envoy:metadata-grpc
docker pull gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker tag gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker pull gcr.io/ml-pipeline/metadata-writer:1.0.4
docker tag gcr.io/ml-pipeline/metadata-writer:1.0.4
docker pull gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker tag gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker pull gcr.io/ml-pipeline/api-server:1.0.4
docker tag gcr.io/ml-pipeline/api-server:1.0.4
docker pull gcr.io/ml-pipeline/persistenceagent:1.0.4
docker tag gcr.io/ml-pipeline/persistenceagent:1.0.4
docker pull gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker tag gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker pull gcr.io/ml-pipeline/frontend:1.0.4
docker tag gcr.io/ml-pipeline/frontend:1.0.4
docker pull gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker tag gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker pull gcr.io/ml-pipeline/visualization-server:1.0.4
docker tag gcr.io/ml-pipeline/visualization-server:1.0.4
docker pull mpioperator/mpi-operator:latest
docker tag mpioperator/mpi-operator:latest
docker pull kubeflow/mxnet-operator:v1.0.0-20200625
docker tag kubeflow/mxnet-operator:v1.0.0-20200625
docker pull gcr.io/ml-pipeline/mysql:5.6
docker tag gcr.io/ml-pipeline/mysql:5.6
docker pull gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker tag gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker pull gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker tag gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker pull gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker tag gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker pull docker.io/seldonio/seldon-core-operator:1.4.0
docker tag docker.io/seldonio/seldon-core-operator:1.4.0
docker pull gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker tag gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker pull gcr.io/google_containers/spartakus-amd64:v1.1.0
docker tag gcr.io/google_containers/spartakus-amd64:v1.1.0
docker pull gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker tag gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker pull argoproj/workflow-controller:v2.3.0
docker tag argoproj/workflow-controller:v2.3.0
#statefulset
docker pull gcr.io/kubeflow-images-public/ingress-setup:latest
docker tag gcr.io/kubeflow-images-public/ingress-setup:latest
docker pull gcr.io/kubeflow-images-public/kubernetes-sigs/application:1.0-beta
docker tag gcr.io/kubeflow-images-public/kubernetes-sigs/application:1.0-beta
docker pull gcr.io/kubebuilder/kube-rbac-proxy:v0.4.0
docker tag gcr.io/kubebuilder/kube-rbac-proxy:v0.4.0
docker pull metacontroller/metacontroller:v0.3.0
docker tag metacontroller/metacontroller:v0.3.0
5、save 到tar文件
將所有的鏡像保存爲tar文件,就可以在各個kubernetes節點下載然後load進去。如下:
docker save xxxx -o xxx.tar
6、load到docker images
從*.tar載入到docker系統中,在microk8s上使用microk8s.ctr(使用containerd)。
docker load xxxx -i xxx.tar
查看一下鏡像是否已經進來:
#使用docker
docker images
#或者使用microk8s
microk8s.ctr images list
過一定時間後, kubernetes的pod將會自動重新創建,逐步進入正常運行。
- 更多參考:
- 基於國內阿里雲鏡像解決kubeflow一鍵安裝,https://my.oschina.net/Kanonpy/blog/3147705
-
kubeflow系列(一):基於國內阿里雲鏡像解決kubeflow一鍵安裝,
-
kubeflow 1.0 安裝教程,https://blog.flyfox.top/2020/04/04/kubeflow%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B/