【干货】快速部署微软开源GPU管理利器: OpenPAI
介紹
不管是機器學習的老手,還是入門的新人,都應該裝備上盡可能強大的算力。除此之外,還要壓榨出硬件的所有潛力來加快模型訓練。OpenPAI作為GPU管理的利器,不管是一塊GPU,還是上千塊GPU,都能夠做好調(diào)度,幫助加速機器學習的模型訓練過程。
關(guān)于什么是OpenPAI,請參考介紹視頻:微軟開源GPU集群管理利器。
本文提供了簡化的OpenPAI安裝步驟。如果有更復雜的安裝要求或部署環(huán)境,請參考官網(wǎng)。
準備工作
環(huán)境要求如下:
安裝過程
1. 安裝用于配置的docker
即管理、安裝整個OpenPAI的docker(在官方文檔中稱為dev-box)。以后的管理、配置工作都會在這個docker中進行。
登錄進某臺計算機(可選用集群中的機器),確保有sudo權(quán)限。然后按順序執(zhí)行下列命令。
安裝docker,如果安裝有更新的版本可跳過。
sudo apt-get -y install docker.io # 拉取,并啟動dev-box sudo docker run -itd -e COLUMNS=$COLUMNS -e LINES=$LINES -e TERM=$TERM -v /var/lib/docker:/var/lib/docker -v /var/run/docker.sock:/var/run/docker.sock -v /pathHadoop:/pathHadoop -v /pathConfiguration:/cluster-configuration --pid=host --privileged=true --net=host --name=dev-box docker.io/openpai/dev-box# 登錄dev-box sudo docker exec -it dev-box /bin/bash2. 配置安裝環(huán)境
以下腳本需要修改一下安裝環(huán)境相關(guān)的信息。machines表示GPU集群的服務器IP,ssh-username和ssh-password分別代表登錄這些服務器要用到的用戶名、密碼。
注意:第一臺會作為master節(jié)點,其余節(jié)點作為worker。關(guān)于master/worker可參考視頻介紹。暫時推薦不要用GPU服務器做master角色,或?qū)orker角色部署到master上,因為這樣可能會造成資源緊張,從而造成master進程的內(nèi)存不夠用。所以,master節(jié)點可以用沒有GPU的服務器,推薦8核16G或以上配置。
cd /pai/pai-managementcat << EOF > quick-start.yaml machines:- 192.168.1.2- 192.168.1.3ssh-username: <用戶名> ssh-password: <密碼> EOFCONFIG_PATH=/cluster-configuration rm $CONFIG_PATH/*3. 安裝節(jié)點
根據(jù)quick-start的基本信息,在/cluster-configuration目錄中生成配置文件。配置文件的具體內(nèi)容可參考github,這里就不詳細介紹了。
python paictl.py cluster generate-configuration -i quick-start.yaml -o $CONFIG_PATH安裝kubenetes
python paictl.py cluster k8s-bootup -p $CONFIG_PATH安裝并啟動OpenPAI相關(guān)服務
python paictl.py service start -p $CONFIG_PATH運行最后一步時,如果網(wǎng)速很慢或服務器很多,有可能會花一天。完成后,即可在瀏覽器中試著訪問第一臺服務器的web地址。因為服務器還需要啟動一會兒,可能并不能馬上看到結(jié)果。等一會兒,或者多試幾次即可。
默認的用戶名、密碼如下,可點擊右上方的login連接登錄。建議第一時間改掉。
admin admin-password好了!大功告成!
可以參考github中的任務模板來配置自己的任務模板。也可以看看Github中的文檔來探索更多高級功能。接下來就可以看看前面的介紹視頻來學習如何從Tools for AI來提交任務了。
如果集群比較小,可以給集群去掉end-to-end測試用例,從而節(jié)省資源。(參考常見問答)
常見問題
遇到問題,可在官網(wǎng)提交Issue。
如何刪除end-to-end測試任務?
如果沒有足夠的服務器資源,建議在部署過程中刪除掉end-to-end測試。否則,它會定期進入隊列,以測試系統(tǒng)是否可用。在dev-box中運行:
python paictl.py service delete -p $CONFIG_PATH -n end-to-end-test安裝過程中出現(xiàn) ... is not ready yet. Please wait for a moment!,該怎么辦?
這種一般是網(wǎng)絡(luò)問題造成的,可以進入以下網(wǎng)址(注意替換master IP),將出現(xiàn)pull image錯誤的pods刪掉,加快Kubernetes重新pull的速度。
http://<替換成master的IP>:9090/#!/pod?namespace=default
總結(jié)
以上是生活随笔為你收集整理的【干货】快速部署微软开源GPU管理利器: OpenPAI的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 管理系统登陆完毕后关闭窗口_【
- 下一篇: AI应用开发实战系列之三:手写识别应用入