DRYな備忘録

Don't Repeat Yourself.

【AWS】EC2上にNFSサーバを構築する(最小要件)

背景

前回記事

otiai10.hatenablog.com

で、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な備忘録として