您好,登錄后才能下訂單哦!
本篇內容介紹了“KubeFlow 1.2.0部署時碰到的問題怎么解決”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
KubeFlow是一個基于Kubernetes的大數據和機器學習平臺。部署參考:
KubeFlow 1.2.0鏡像緩存(持續更新)
KubeFlow 1.2.0部署(Ubuntu20.04 + k8s 1.21.0)
參考 https://istio.io/latest/docs/setup/getting-started/#download
curl -L https://istio.io/downloadIstio | sh - cd istio-1.9.4 #設置路徑,可加入~/.profile #export PATH=$PWD/bin:$PATH istioctl install --set profile=demo -y #Add a namespace label to instruct Istio to automatically inject Envoy sidecar proxies when you deploy your application later: $ kubectl label namespace default istio-injection=enabled namespace/default labeled
參考 https://my.oschina.net/u/2306127?q=metallb
參考 https://github.com/rancher/local-path-provisioner#deployment
快速安裝:
kubectl apply -f https://raw.githubusercontent.com/rancher/local-path-provisioner/master/deploy/local-path-storage.yaml
部署 hostPath
的 Persistent Volume 和使用 pod樣例:
kubectl create -f https://raw.githubusercontent.com/rancher/local-path-provisioner/master/examples/pvc/pvc.yaml kubectl create -f https://raw.githubusercontent.com/rancher/local-path-provisioner/master/examples/pod/pod.yaml
部署完了有一些問題,部分服務無法啟動。經檢查發現幾個主要問題:
pvc未正常創建,導致相關的服務pod運行失敗。
部分鏡像的下載策略被設置為了always,但是其位于gcr.io上,導致下載失敗。
缺失鏡像kfam/kfserving。
下面針對這幾個問題逐一解決。
因為沒有網絡存儲服務,使用local path。
將namespace為kubeflow下的pvc全部刪除,主要包括:
katib-mysql
metadata-mysql
minio-pvc
mysql-pv-claim
然后添加StorageClass配置參數(這里使用local-path),重新創建pvc。
然后到pod列表中刪除相關的pod,讓系統自動重新創建,過一段時間就恢復正常了。
部分鏡像的下載策略被設置為了always,但是其位于gcr.io上,導致下載失敗。
先手工修改,驗證是否可行。
查看pod中狀態為“ImagePullBackOff”的。
然后找到對應的deployment或stateful set。
在k8s dashboard選擇“編輯”或者使用命令kubectl edit進行參數修改。
刪除對應的pod,系統會自動按照新的策略進行pod重建。
等待一段時間,相應pod的狀態恢復正常運行狀態。
??注意:要修改deployment和stateful set里面的參數。如果只修改pod和replica set/control set的參數,重建后會被覆蓋而失效。
回頭通過配置參數來進行修改,在部署時就可以完成。
經過上面處理后,發現還有兩個pod無法啟動:
kfserving-controller-manager,鏡像為:
gcr.io/kfserving/kfserving-controller:v0.4.1
profiles-deployment,鏡像為:
gcr.io/kubeflow-images-public/kfam:vmaster-g9f3bfd00
經查是之前的自動產生腳本遺漏了(在一個pod中有兩個鏡像,只提取了一個)。單獨下載,docker save為tar文件,然后下載回來docker load到每一個節點上就可以了。
已經在aliyun的鏡像庫和腳本中補正:
直接使用《KubeFlow 1.2.0鏡像緩存(持續更新)》的方法和腳本就可以了。
“KubeFlow 1.2.0部署時碰到的問題怎么解決”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。