CloudStack 4.18をUbuntu 22.04 LTSにインストール: ストレージ&システムVMイメージ設定

CloudStack

ストレージはNFSを使うのでNFSサーバーの設定をおこない、CloudStackが自動的に起動するシステムVMのイメージをストレージに展開します。

ストレージ設定 (NFS)

まずはNFSサーバーのパッケージをインストール。

$ sudo apt install nfs-kernel-server

インストールできたらNFSとして公開するディレクトリを作成し、exportsファイルを編集します。

$ sudo mkdir -p /mnt/pool00/primary /mnt/pool01/primary /mnt/pool01/secondary
$ sudo vi /etc/exports

exportsに下記を追記します。

/mnt/pool00 *(rw,async,no_root_squash,no_subtree_check)
/mnt/pool01 *(rw,async,no_root_squash,no_subtree_check)

pool00はプライマリストレージ(SSD)として、pool01はプライマリ(HDD)とセカンダリストレージとして利用する予定です。
保存後できたらNFS設定読み込みなおします。

$ sudo exportfs -a

次に、NFSポート番号を固定化するためにnfs.confファイルを編集します。

$ sudo vi /etc/nfs.conf

nfsファイルのコメントアウトを解除してこんな感じに編集します。

[lockd]
port=32803
udp-port=32769

[mountd]
port=892

[statd]
port=662
outgoing-port=2020

保存したら、下のコマンドで各種ポート番号を設定します。

$ sudo sed -i -e 's/^RPCMOUNTDOPTS="--manage-gids"$/RPCMOUNTDOPTS="-p 892 --manage-gids"/g' /etc/default/nfs-kernel-server
$ sudo sed -i -e 's/^STATDOPTS=$/STATDOPTS="--port 662 --outgoing-port 2020"/g' /etc/default/nfs-common
$ sudo echo "NEED_STATD=yes" | sudo tee /etc/default/nfs-common

最後にidmapd.conを編集してドメインを設定します。

$ sudo vi /etc/idmapd.conf

下のようにドメインを設定します。

Domain = ntlscd.priv

NFSを再起動してストレージ設定は完了です。

$ sudo systemctl restart nfs-kernel-server
$ sudo reboot

システムVMイメージ(テンプレート)をインストール

インストール先はセカンダリストレージの /srv/pool01/secondary にします。
これはNFS経由でインストールするので、pool01のsecondaryディレクトリをマウントして作業を進めます。

$ sudo mkdir -p /mnt/secondary
$ sudo mount -t nfs 192.168.1.16:/mnt/pool01/secondary /mnt/secondary

マウントしたらイメージをインストール。

$ sudo /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloudstack.org/systemvm/4.18/systemvmtemplate-4.18.0-kvm.qcow2.bz2 -h kvm -F

しばらく時間がかかります。
終わったら、作業用にマウントしたNFSをアンマウントしてディレクトリも削除します。

$ sudo umount /mnt/secondary
$ sudo rmdir /mnt/secondary

ストレージとシステムVMイメージの設定はこんな感じ。
次はエージェント(KVMホスト)の設定ですな。