Ccmmutty logo
Commutty IT
4 min read

vast.aiで貸し出すホストを設定する方法 日本語説明

https://cdn.magicode.io/media/notebox/a0441b8a-9238-4af3-b46e-ecc24ab1fd2a.jpeg

vast.aiへの機械学習マシンの貸し出しは設定が難しいぞ

 タイトル通り難しかったので皆さんに教えます。

用意するもの

  • 性能の良いCPU
  • 8GB以上のメモリ(32GB以上推奨)
  • NVIDIA製のGPU(1xxx以降、3xxx以降推奨)
  • 性能の良いSSD(nvme推奨 容量512GB以上推奨)

貸し出すマシンにUbuntuをインストール

デスクトップ版だとトラブルが起こりやすいので絶対サーバー版をインストールしましょう。できればインストール方法はUEFIでしましょう。 バージョンは20推奨と公式説明にはありますが、ぶっちゃけ20じゃないと安定しませんので20一択です。 via https://cloud.vast.ai/host/setup/

Ubuntuのインストールする際のディスクの構成は次の画像の通り

※絶対に自動構成にしないこと ルートディレクトリは16GBではなく32GBでも64GBでもOK
肝はディスクの空きをたくさん作っておくこと。後ほど、vast.aiのインストーラーでディスクの空きをXFSでフォーマットしDockerを入れるマウントポイントとなる。

NVIDIAのドライバをインストールする

nvidia-smi -q
とすると、nvidiaのドライバをaptでインストールするコマンドがでてくるのでどれか好きなものを入れる。バージョンが新しければ新しいほど、番号が大きくなる。
表示例:nvidia-driver-535-server

Install the Vast.ai Manager Software

via https://cloud.vast.ai/host/setup/ ※ログイン後、via先の最新コマンド実行してください。「ここにAPIキー?」という点にAPIキーをFillしたコードをコピペできます。
vast.ai Manager Software インストールコマンド例:
apt install -y nano wget curl git
wget https://console.vast.ai/install -O install; sudo python3 install 「ここにAPIキー?」history -d $((HISTCMD-1)); 
ここでうまくいかないことが多いので何かあったらコメントへ。 大体は、NVIDIAのドライバがうまくインストールされてないことによるエラーなのでNVIDIAのドライバをインストールしたらOSを再起動してみよう。 あとはnvme SSDの末尾のフリースペースが少なすぎるとかね。
上手く、vast.aiのinstallスクリプトが実行終了したら
df -Th
コマンドにてXFS領域がつくられているかどうか確認する。
正常出力例:
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs   16G     0   16G   0% /dev
tmpfs          tmpfs     3.2G  3.2M  3.2G   1% /run
/dev/nvme0n1p4 ext4       47G   13G   32G  29% /
tmpfs          tmpfs      16G     0   16G   0% /dev/shm
tmpfs          tmpfs     5.0M     0  5.0M   0% /run/lock
tmpfs          tmpfs      16G     0   16G   0% /sys/fs/cgroup
/dev/nvme0n1p2 ext4      739M  196M  490M  29% /boot
/dev/nvme0n1p1 vfat      1.1G  6.1M  1.1G   1% /boot/efi
/dev/nvme0n1p5 xfs       874G   24G  850G   3% /var/lib/docker
/dev/loop0     squashfs   64M   64M     0 100% /snap/core20/1828
/dev/loop1     squashfs   92M   92M     0 100% /snap/lxd/24061
/dev/loop2     squashfs   50M   50M     0 100% /snap/snapd/18357
/dev/loop3     squashfs   64M   64M     0 100% /snap/core20/2015
tmpfs          tmpfs     3.2G     0  3.2G   0% /run/user/1000

ポート開放とポートフォアワーディング

ルータ側の設定

ここでは例として40000から40019までポートを開けるとする。
ルータのポートを開放して、貸し出すマシンのIP宛てにポートフォアワーディングする。(ルータの設定は各々のルータに寄るので割愛)

貸し出すマシン側の設定

ポート設定を書き込む
sudo bash -c 'echo "40000-40019" > /var/lib/vastai_kaalia/host_port_range'
ローカルIPアドレス(例:192.168.0.2)を書きこむ
sudo bash -c 'echo "ローカルIPアドレス" > /var/lib/vastai_kaalia/host_ipaddr'

最後の貸し出し設定

ここまで来たらあとはvast.aiのログイン後の管理画面でMACHINEを選択すれば自身の貸し出すマシンが一覧に表示されていると思う。適当に価格設定してLISTボタンを押せば貸し出し可能状態になる。
なお、貸し出すマシンを止めるときはメンテナンスボタンを押して止めるなり、貸し出し状態を止めるなりした後でないと信頼性の数値が低くなり誰にも借りてもらえなくなるので圧倒的に注意。

Discussion

コメントにはログインが必要です。