背景
前回記事
で、NFSサーバ構築の要素を検証したので、今回は最小要件実装を試す。とはいっても、デバイスの追加せず、ルートボリュームをマウントポイントとするだけの違い。
ログ
Webコンソールから、インスタンスの立ち上げ。この際、追加のEBSをアタッチしない。
% ssh -i ~/Documents/otiai10.tokyo.pem ec2-user@13.231.255.177 [ec2-user@ip-172-31-23-148 ~]$ sudo -s [root@ip-172-31-23-148 ec2-user]# cd [root@ip-172-31-23-148 ~]# pwd /root [root@ip-172-31-23-148 ~]# mkdir export # マウントされるディレクトリを/root/exportとした
# 外部への公開 [root@ip-172-31-23-148 ~]# echo '/root/export *(rw,async,no_root_squash)' >> /etc/exports [root@ip-172-31-23-148 ~]# systemctl status nfs [root@ip-172-31-23-148 ~]# systemctl start nfs [root@ip-172-31-23-148 ~]# exportfs -a -r [root@ip-172-31-23-148 ~]# exportfs -v /root/export <world>(rw,async,wdelay,hide,no_subtree_check,sec=sys,secure,no_root_squash,no_all_squash) [root@ip-172-31-23-148 ~]# systemctl status nfs [root@ip-172-31-23-148 ~]# netstat -lntp | grep 2049 tcp 0 0 0.0.0.0:2049 0.0.0.0:* LISTEN - tcp6 0 0 :::2049 :::* LISTEN - [root@ip-172-31-23-148 ~]#
クライアント側から疎通確認。適当に、同SecurityGroup内に作る。このSecurityGroupは同SecurityGroup内同士の2049ポートが開いている。
% ssh -i ~/Documents/otiai10.tokyo.pem ec2-user@52.197.124.165 [ec2-user@ip-172-31-22-126 ~]$ mkdir mountpoint [ec2-user@ip-172-31-22-126 ~]$ [ec2-user@ip-172-31-22-126 ~]$ sudo mount 172.31.23.148:/root/export ./mountpoint [ec2-user@ip-172-31-22-126 ~]$ df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 488M 60K 488M 1% /dev tmpfs 497M 0 497M 0% /dev/shm /dev/xvda1 7.8G 1.1G 6.7G 14% / 172.31.23.148:/root/export 8.0G 1016M 7.0G 13% /home/ec2-user/mountpoint
サーバ上でなんか書いたのち、再度クライアントで、
[ec2-user@ip-172-31-22-126 ~]$ ll mountpoint/ total 0 [ec2-user@ip-172-31-22-126 ~]$ ll mountpoint/ total 4 -rw-r--r-- 1 root root 16 Mar 12 05:49 foobar.txt [ec2-user@ip-172-31-22-126 ~]$ cat mountpoint/foobar.txt おっぱい! [ec2-user@ip-172-31-22-126 ~]$
NFSマウントポイントの同期が確認された。
DRYな備忘録として