ラベル PhotonOS の投稿を表示しています。 すべての投稿を表示
ラベル PhotonOS の投稿を表示しています。 すべての投稿を表示

2021年8月25日水曜日

VMware Bitfusion on Home Lab

前回記事で紹介したDell Precisionですが、自宅でKubernetesなどなど試してみるためのリソース追加とKubernetest環境でのGPU利用、あとはBitfusion環境を作りたかったのが目的だったので、まずはBitfusionを構築してみることにしました。

VMware社のCompatibilityにはサポートするGPUとしてV100/S、A100、P40、T4の4種類が記載されています。
ただ、次のようにも記載がされています。

Bitfusion has general support for datacenter class, CUDA-supporting, NVIDIA GPUs, which qualify for DirectPath I/O on ESXi.

前回の記事にも記載しましたが購入したPrecisionにはGPUが搭載されていますが、GeforceのGTX1060なので、datacenter classではないのですが、Cudaは動くのでなんとかなるかもしれないという期待で構築を試してみました。

Bitfusionの大まかなインストールは次の手順なんですが、注意点としてはBitfusion ServerへGPUドライバを手動でインストールする必要があります。
1.Bitfusion Server Applianceの展開
2.Bitfusion ServerへGPUのパススルー設定
3.GPUドライバの手動インストール
4.Bitfusion Clientのインストール
5. vCenterへBitfusion Clientの登録

詳細な手順はVMware社の公式マニュアルを参照してもらえればいいのですが、BitfusionでGTX1060を利用するためには 1のBitfusion Server Applianceの展開時に次スクリーンショットのNvidia Packagesの項目でチェックボックスを未選択でBitfusion Applianceを展開します。



Appliance展開時にチェックボックスを未選択で展開しているので、手順4で必要なDriverなどをインストールします。 VMware社のドキュメントでは、Bitfusion Serverにログインして次のコマンドを実行するように記載されています。

$sudo install-nvidia-packages --defaults --yes

ですが、このコマンドではV100やA100などCompatibilityに記載してあったDatacente ClassのGPUであればドライバやFablic Managerがインストールされるのですが、GTXなどのGPU関連のドライバはインストールされないので、別途ダウンロードする必要があります。

私の環境ではNVIDIAのサイトから次のパッケージをダウンロードしました。
 ※Bitfusion Server ApplianceはPhotonOSが利用されているため、ダウンロードするパッケージはcentos版をダウンロードしました。

ドライバ:NVIDIA-Linux-x86_64-470.63.01.run
Fabric Manager:nvidia-fabricmanager-460.32.03-1.x86_64.rpm

インストール自体は特に難しいこともなく通常のインストール手順を実行すれば問題なくインストールが完了します。

$ chmod +x NVIDIA-Linux-x86_64-470.63.01.run
$ sudo ./NVIDIA-Linux-x86_64-470.63.01.run
$ wget http://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/nvidia-fabricmanager-460-460.32.03-1.x86_64.rpm
$ sudo rpm -ivh ./nvidia-fabricmanager-460-460.32.03-1.x86_64.rpm
$ reboot

インストール後にvCenterで確認すると次のようにAPIのミスマッチなど若干エラーが出ていますが、簡単な動作確認しても特に問題は無いので色々と試してみたいと思います。


※見た感じ特に問題はなさそう。
$ bitfusion smi
+----------------------------------------------------------------------------------------+
| 192.168.68.41:56001 Driver Version: 470.63.01 |
+--------------------------------------+-------------------------+-----------------------+
| GPU Name Persistence-M | Virt Mem Alloc / All | BusId Vol Uncorr ECC |
| Fan Temp Perf Pwr:Usage/Cap | Phy Mem Used / All | GPU-Util Compute M. |
|======================================+=========================+=======================|
| 0 NVIDIA GeForce GTX ... Disabled | 0 MB / 6078 MB | 00000000:13:00.0 N/A |
| 42% 36C P8 8W / 120W | 2 MB / 6078 MB | 0% Default |
+--------------------------------------+-------------------------+-----------------------+
$ bitfusion list_gpus
- server 0 (leader) [192.168.68.41:56001]: running 0 tasks
|- GPU [0]: free memory (6078 / 6078MiB) NVIDIA GeForce GTX 1060 6GB (6.1)

2019年11月25日月曜日

PhotonOS Disk expansion

PhotonOSでいくつかAI系のコンテナを試しているのですが、PhotonOSのディスクはデフォルトで15GBしかないので、必要なパッケージをダウンロードしているとすぐにディスクがいっぱいになってしまいます。。。

なので、PhotonOSのディスク拡張を行いました。


まずは、vSphere ClientでPhotonOSのディスクサイズを大きくします。
PhotonOSに設定されているディスクを15GBから必要なサイズに拡張します。
私の環境ではとりあえず40GBに変更しました。


変更後はPhotonOSにSSHして次の流れで操作します。

1. 再起動なしでDisk変更を認識できるように設定変更
2. partedコマンドのインストール
3. partedでディスク拡張
4. ファイルシステム拡張



まずは、1の再起動無しでディスクの境界(この場合は元々のSectorと拡張したSectorの境界)を認識できるようにします。

# echo 1 > /sys/class/block/sda/device/rescan



次に、PhotonOSにはデフォルトではディスク操作のコマンドがインストールされていないので、partedコマンドをインストールします。

tdnf install parted

Installing:
parted                   x86_64       3.2-7.ph3        photon         1.11M 1159755

Total installed size:   1.11M 1159755
Is this ok [y/N]:y

Downloading:
Testing transaction
Running transaction
Installing/Updating: parted-3.2-7.ph3.x86_64

Complete!


partedのインストールが完了したらディスクの拡張です。

# parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.

(parted) print  ※拡張対象のパーティション番号を確認
print
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 42.9GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  9437kB  8389kB                     bios_grub
 2      9437kB  17.2GB  17.2GB  ext4  ※データ領域の2を拡張します。

(parted) resizepart 2 100% ※パーティション2を100%使う


(parted)print ※拡張されたことを確認
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 42.9GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  9437kB  8389kB                     bios_grub

 2      9437kB  42.9GB  42.9GB  ext4


(parted) quit ※partedを終了



partedでディスク拡張後に、ファイルシステムを拡張します。


# resize2fs /dev/sda2 ※ファイルシステムを拡張
resize2fs 1.44.3 (10-July-2018)
Filesystem at /dev/sda2 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 3
The filesystem on /dev/sda2 is now 10483451 (4k) blocks long.


# df -h  ※ファイルシステムが拡張されたことを確認
Filesystem      Size  Used Avail Use% Mounted on
/dev/root        40G  438M   38G   2% /
devtmpfs        998M     0  998M   0% /dev
tmpfs          1000M     0 1000M   0% /dev/shm
tmpfs          1000M  524K  999M   1% /run
tmpfs          1000M     0 1000M   0% /sys/fs/cgroup
tmpfs          1000M     0 1000M   0% /tmp
tmpfs           200M     0  200M   0% /run/user/0



詳細はPhotonOSのマニュアルに記載があるのでそちらを参照してください。


2019年11月8日金曜日

PhotonOSへdocker-composeをインストール

PhotonOSでdocker-composeを使おうと思ったら、デフォルトではインストールされていないんですね。。。

こちらのDockerのマニュアルに沿ってインストール。



root@photon02 [ ~ ]# curl -L "https://github.com/docker/compose/reeases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100   617    0   617    0     0    815      0 --:--:-- --:--:-- --:--:--   813

100 15.4M  100 15.4M    0     0   950k      0  0:00:16  0:00:16 --:--:-- 2550k

root@photon02 [ ~ ]# chmod +x /usr/local/bin/docker-compose

root@photon02 [ ~ ]# ln -s /usr/local/bin/docker-compose /usr/bin/


エラーもなく完了! 元の作業に戻ります~

2019年6月10日月曜日

Managing Packages in PhotonOS

自宅でPhotonOS入れてから少し時間がたってしまいましたが、インストール後に行ったことを少しずつ書き溜めていきます。


PhotonOSは基本的には余計なものはインストールされていないのですが、自宅で色々試すには不足するものがあります。
私は自宅ではwgetを多用してインターネットからもろもろのパッケージをとってくるのですが、Photonにはデフォルトでインストールされていない。。。


ということでIPアドレスやホスト名など基本的な設定後に、#yum install...でと思ったらyumコマンドも無いっ!

調べてみるとphotonのパッケージ管理ソフトは tdnf というコマンドに置き換わっているようです。 ※詳細は こちら 。


ということで、tdnf コマンドでwgetをインストール



# tdnf install wget

Installing:
wget                     x86_64       1.19.1-4.ph2     photon-updates   2.56M 2681777

Total installed size:   2.56M 2681777
Is this ok [y/N]:y

Downloading:
wget                                       
0      0%
 ~省略~
1015669    100%
Testing transaction
Running transaction
Installing/Updating: wget-1.19.1-4.ph2.x86_64

Complete!
#


今回はwgetを参考に紹介しましたが、#tdnf install yum でyumを使えるようにしたりと、photonではtdnfは基本のコマンドです。




2019年4月10日水曜日

自宅LabにPhotonOS の Install

ちょっと試したいことがあったり、自宅のNUC環境も色々試してぐちゃぐちゃになってきたので、きれいにするのもかねてESXiの再インストールと限られたNUCのリソースを有効活用するためにPhotonOSを導入することにしました。

まず、Photonってなに?ってことを簡単に。。。
PhotonOSはVMware社から提供されているOSSのLinuxベースのコンテナホストです。

vSphereやVMware Workstation、Fusionで動かすこともできますが、AWSのEC2やAzure、GoogleのGCEなどにも導入することができます。

また、最近のvCenter aplianceもPhotonベースで動いています。


ドキュメントやダウンロードは公式サイトのこちらになります。


今回はインストール手順をご紹介します。

PhotonOSはISOイメージ、ova、AWSやAzure用のImageが提供されているので
適切なものをダウンロートしてください。私は自宅のESXiに導入なのでovaをダウンロードしています。

ESXiの場合はOVAから導入なので、Wizardに従うだけなので簡単に導入できます。



1.ダウンロードしたovaファイルを選択します。


2.仮想マシン名を入力します。



3.デプロイ先のESXiを選択します。



4.設定した内容を確認します。



5.使用許諾に同意します。



6.デプロイ先のデータストア選択とディスクフォーマットを選択します。


7.仮想ネットワークを選択します



8.設定情報の確認

 9.デプロイのタスクが完了となることを確認



 まず、実行するのは初期パスワードの変更になります。

IDは root で、初期パスワードは changeme でログインします。
初期ログイン後にパスワード変更が必要になります。


その後にネットワークの設定など環境に合わせて設定変更を行います。

色々ためしたら次回以降にご紹介します。