基于該方案,客戶可以将應用程式利用容器技術建構鏡像,結合Kubernetes+GPU運作機器學習,圖像處理等高運算密度等任務,無需安裝nvidia driver和CUDA,就能實作一鍵部署和彈性擴縮容等功能。
下面開始體驗如何在阿裡雲容器服務上建立Tesla P4和P100的Kubernetes GPU混部叢集,部署和測試Jupyter應用運作TensorFlow。
1.首先選擇區域

2. 選擇執行個體系列:GPU計算型gn5,通過下拉框可以選擇執行個體規格
3. 勾選開放公網SSH登入,這樣就可以通過ssh登入Kubernetes的Master節點
4.當叢集建立成功後,點選<code>管理</code>按鈕
5. 這樣就可以看到Master節點SSH連接配接位址
6. 通過ssh登入Master檢視包含GPU節點
7. 具體檢視GPU節點的狀态資訊
可以看到該節點的含有GPU資源數量為1, 這樣我們就可以開始運作使用GPU的TensorFlow應用
資料科學家通常習慣使用Jupyter作為TensorFlow實驗環境,我們這裡可以用一個例子向您展示如何快速部署一個Jupyter應用。
下面的deployment.yaml内容分為兩部分: Deployment和Service,
Deployment配置: nvidia.com/gpu 指定調用nvidia gpu的數量 環境變量 PASSWORD 指定了通路Jupyter服務的密碼,您可以按照您的需要修改
如果您編寫過老的GPU部署方案,會知道過去必須要定義如下的nvidia驅動所在的資料卷。
這需要您在編寫部署檔案時,強依賴于所在的叢集,導緻缺乏可移植性。但是在Kubernetes 1.9.3中,最終使用者無需指定這些hostPath,nvidia的插件會自發現驅動所需的庫連結和執行檔案。
1. 運作kubectl部署該應用:
2. 檢視deployment的配置
3. 檢視deployment日志
4. 通過service檢視通路端點,隻需要檢查EXTERNAL-IP
現在要驗證這個Jupyter執行個體可以使用GPU,可以在運作下面的程式。它将列出Tensorflow可用的所有裝置。
可以看到如下輸出
這樣,您就可以正式開始自己的TensorFlow on GPU之旅
利用阿裡雲容器服務的Kubernetes,您可以在部署時刻選擇GPU類型的工作節點,而無需操心複雜Nvidia驅動和Kubernetes叢集配置,一鍵部署,不出十分鐘就可以輕松獲得阿裡雲強大的異構計算能力和Kubernetes的GPU應用部署排程能力。這樣您就可以專心的建構和運作自己的深度學習應用了。歡迎您在香港區域嘗試和體驗,後續我們也會開放其他地區的Kubernetes 1.9.3。