13.6. NFS ベースのストレージプール
13.6.1. virt-manager を使用した NFS ベースのストレージプールの作成
ホスト物理マシンの「ストレージ」タブを開きます
接続の詳細 ウィンドウ内の ストレージ タブを開きます。virt-managerを開きます。virt-managerのメインウィンドウからホスト物理マシンを選択します。編集 メニューをクリックして、接続の詳細 を選択します。- ストレージ タブをクリックします。

図13.20 「ストレージ」タブ
新規プールの作成 (パート 1)
+ ボタン (プールの追加ボタン) を押します。新規ストレージプールを追加 ウィザードが表示されます。
図13.21 NFS の名前と種類を追加
ストレージプールの名前を選択し、 を押して次に進みます。新規プールの作成 (パート 2)
デバイスのターゲットパス、ホスト名、および NFS 共有パスを入力します。フォーマット オプションを NFS または auto (タイプを検出する) に設定します。ターゲットパスは移行のためにすべてのホスト物理マシン上で同一でなければなりません。NFS サーバーのホスト名または IP アドレスを入力します。この例では、server1.example.comを使用しています。NFS パスを入力します。この例では、/nfstrialを使用しています。
図13.22 NFS ストレージプールの作成
を押すと、新規のストレージプールが作成されます。
13.6.2. virt-manager を使用したストレージプールの削除
- 同じプールを使用する他のゲストに関連した問題を避けるには、ストレージプールを停止し、そのストレージプールで使用中のリソースをすべて解放するのが最良の方法です。これを実行するには、停止するストレージプールを選択して、
をクリックします。

図13.23 停止アイコン
- ゴミ箱アイコンをクリックしてストレージプールを削除します。ストレージプールを停止しておかないとこのアイコンは使用できません。
13.6.3. virsh を使用した NFS ベースのストレージプールの作成
手順13.8 NFS ベースのストレージプールの作成
ストレージプールの定義を作成します。
新規の永続ストレージプールを定義するには、virsh pool-define-asコマンドを使用します。新規の非永続ストレージプールを定義するには、virsh pool-create-asコマンドを使用します。永続ストレージプールは、ゲスト仮想マシンが実行されていない場合でもアクセスが可能で、ホストの再起動後にも存在し続けます。非永続ストレージプールは、ゲスト仮想マシンが実行されている場合に限り利用可能で、ホストの再起動後には存在しません。この例では、永続ストレージプールが使われています。#
virsh pool-define-as nfspool netfs --sourcehost localhost --source-path /home/path/to/mountpoint/directory --target /tmp/nfspool-clientPool nfspool definedNFS ベースのストレージプールを作成するには、以下のオプションが必要です。- ストレージプールの
名前。この例では、名前に nfspool が使われています。この例で使用されているこれ以降の全てのvirshコマンドはこの名前を使用します。 - ストレージプールの
タイプ。NFS ベースのストレージプールの場合、タイプはnetfsです。 - ステップ 1 で作成したマウントポイントが存在する NFS サーバーの
ホスト名。ホスト名または IP アドレスを指定することができます。この例では、ホスト名にlocalhostが使われています。 ソースパスは、配信されるファイルの NFS サーバー上の場所です。この例では、/home/path/to/mountpoint/directory ディレクトリーが使われています。- NFS クライアントがファイルの参照コピーを保管する
ターゲット。この例では、ターゲットに/tmp/nfspool-clientが使われています。
プールを定義せずに XML ファイルの設定結果を表示するには、コマンドに--print-xmlオプションを追加します。上記のコマンドに--print-xmlオプションを追加した例を以下に示します。# virsh pool-define-as nfspool netfs --sourcehost localhost --source-path /home/path/to/mountpoint/directory --target /tmp/nfspool-client --print-xml <pool type='netfs'> <name>nfspool</name> <source> <host name='localhost'/> <dir path='/home/path/to/mountpoint/directory'/> </source> <target> <path>/tmp/nfspool-client</path> </target> </pool>ストレージプールが一覧に表示されることを確認します。
ストレージプールオブジェクトが正しく作成されていること、および状態がinactiveとして表示されていることを確認します。#
virsh pool-list --allName State Autostart ----------------------------------------- default active yes nfspool inactive novirsh pool-dumpxmlコマンドを実行して、出力を表示することもできます。# virsh pool-dumpxml nfspool <pool type='netfs'> <name>nfspool</name> <uuid>ad9bca0f-977f-4fe1-90c6-cb44f676f1ce</uuid> <capacity unit='bytes'>0</capacity> <allocation unit='bytes'>0</allocation> <available unit='bytes'>0</available> <source> <host name='localhost'/> <dir path='/home/vm-storage/nfspool'/> <format type='auto'/> </source> <target> <path>/tmp/nfspool-client</path> </target> </pool>
ローカルのディレクトリーを作成します。
virsh pool-buildコマンドを使用し、指定したディレクトリー (この例では nfspool) にディレクトリーベースのストレージプールをビルドします。#
virsh pool-build guest_imagesPool guest_images built #ls -la /nfspooltotal 8 drwx------. 2 root root 4096 May 30 02:44 . dr-xr-xr-x. 26 root root 4096 May 30 02:44 .. #virsh pool-list --allName State Autostart ----------------------------------------- default active yes nfspool inactive noストレージプールを起動します。
virsh pool-startコマンドを使ってディレクトリーストレージプールを有効にします。これにより、プールのボリュームがゲストのディスクイメージとして使用されます。#
virsh pool-start nfspoolPool nfspool started #virsh pool-list --allName State Autostart ----------------------------------------- default active yes nfspool active no注記
1 つの手順で、ストレージプールをビルドして起動することができます。#
virsh-pool start nfspool --buildautostart をオンにします。
ストレージプールのautostartをオンにします。注記
このステップは必須ではありません。autostart が設定されていると、libvirtdサービスの起動時に、libvirtdサービスによりストレージプールが起動します。#
virsh pool-autostart nfspoolPool nfspool marked as autostarted #virsh pool-list --allName State Autostart ----------------------------------------- default active yes nfspool active yesストレージプールの設定を確認します。
ストレージプールが正しく作成されたこと、サイズが正しく表示されていること、状態がrunningと表示されていることなどを確認します。プールを永続化させたい場合には、Persistentにyesが表示されているか確認します。サービスの起動時にプールを自動的に起動させたい場合は、Autostartにyesが表示されているか確認します。#
virsh pool-info nfspoolName: nfspool UUID: ad9bca0f-977f-4fe1-90c6-cb44f676f1ce State: running Persistent: yes Autostart: yes Capacity: 123.63 GiB Allocation: 10.87 GiB Available: 112.76 GiB #ls -la /tmp/nfspool-clienttotal 8 total 4 drwxr-xr-x. 2 root root 4096 Aug 28 15:59 . drwxrwxrwt. 26 root root 640 Aug 28 16:07 .. #
13.6.4. virsh を使用したストレージプールの削除
- 同じプールを使用する他のゲスト仮想マシンとの問題を避けるには、ストレージプールを停止してから使用中のリソースをすべて解放するのが最良の方法です。
#
virsh pool-destroy nfspool - 必要に応じて、ストレージプールが存在するディレクトリーを削除します (この操作は必須ではありません)。
#
virsh pool-delete nfspool - ストレージプールの定義を削除します。
#
virsh pool-undefine nfspoolPool nfspool has been undefined

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.