Xen環境domUにNFSサーバーの構築

作成日:2016/08/09
最終更新日:2020/07/05

Xen環境domUにNFSサーバーの構築

作成日:2016/08/09
最終更新日:2020/07/05

概要

先日作成したXen環境のdomUにNFSサーバーを構築します。 LinuxディストリビューションにはUbuntu 16.04を用いました。

下準備

本文章内では、LDAPサーバーを構築したdomUのホスト名をnfs-serverとし、FQDNをnfs-server.osarusystem.comであるとします。 このdomUにはLDAPクライアントを設定しPAM認証するようにしておきます。

/homeディレクトリをnfsで共有することにします。 そのため/homeディレクトリにはdom0の/dev/sda9をxvdbとして割り当てることにします。 domUのcfgファイルのdiskのエントリを次のように書き換えます。

ソース1. ディスクエントリの変更
disk = ['file:/usr/local/xen/small/sda1.img,xvda,w','phy:/dev/sda9,xvdb,rw']

その後、nfs-serverにログインしxvdbのUUIDを調べます。

コマンド1. UUIDの確認
$ blkid /dev/xvdb
/dev/xvdb: UUID="12396956-4e05-497d-931d-23c985c0080d" TYPE="ext4"
$ 

このUUIDを元にfstabに以下のエントリを追記します。

ソース2. /etc/fstabに追記
UUID=12396956-4e05-497d-931d-23c985c0080d /home           ext4    errors=remount-ro 2       2

再起動すると/homeに/dev/xvdbがmountされます。

コマンド2. mountされていることの確認
$ df
Filesystem     1K-blocks      Used Available Use% Mounted on
udev               70700         0     70700   0% /dev
tmpfs              24100      1592     22508   7% /run
/dev/xvda1       9748408   1398060   7832104  16% /
tmpfs             120492         0    120492   0% /dev/shm
tmpfs               5120         0      5120   0% /run/lock
tmpfs             120492         0    120492   0% /sys/fs/cgroup
/dev/xvdb      649596392 228217120 388358564  38% /home
tmpfs              24100         0     24100   0% /run/user/1000
$ 

NFSサーバーの構築

まず、NFSサーバーを構築します。

nfs-kernel-serverのインストール

aptでインストールします。

コマンド3. NFSサーバのインストール
sudo apt-get install nfs-kernel-server

途中でInstallを継続してよいか聞かれるので「y」を入力します。 また、管理用のパスワードの入力を求められるので入力します。

ディレクトリの公開

/homeディレクトリを192.168.100.0/24に公開するとします。

/etc/exportsに以下の行を追記します。 その際、管理者権限が必要です。

ソース3. 公開ディレクトリの設定
/home 192.168.100.0/24(rw,sync,no_subtree_check,no_root_squash)

nfs-kernel-serverの起動

nfs-serverを再起動するか以下のコマンドを発行します。

コマンド4. NFSサーバの起動設定
$ sudo systemctl enable nfs-kernel-server.service
$ sudo systemctl start nfs-kernel-server.service

NFSクライアントの設定

NFSサーバーと同様のアクセス権を実現するためにLDAPクライアントを 構築しておくと良いかと思います。

Ubuntu 16.04を用いる場合には、nfs-commonを導入します。

nfs-commonの設定

aptでインストールします。

コマンド5. NFSクライアントのインストール
sudo apt-get install nfs-common

途中でInstallを継続してよいか聞かれるので「y」を入力します。

NFSでのマウント

nfs-serverのIPアドレスが192.168.100.200であるとします。 以下のコマンドを発行してmountします。

コマンド6. NFSで共有されたディレクトリのmount
$ sudo mount -t nfs 192.168.100.200:/home /home

fstabで自動的にmountされるようにするには以下のように記載します。

ソース4. NFSで共有されたディレクトリを/etc/fstabへ記述する例
192.168.100.200:/home    /home   nfs    defaults 0 0