web-dev-qa-db-ja.com

ec2 systemdが起動時にnfsをマウントできず、タイムアウトします

最新バージョンのRed Hat Enterprise Linux Server release 7.0 (Maipo)を実行しています:

[root@ip-10-184-161-46 ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 7.0 (Maipo)
[root@ip-10-184-161-46 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.el7.x86_64
[root@ip-10-184-161-46 ~]# 

/etc/fstab内に次のエントリがあります。

[root@ip-10-184-161-46 ~]# grep -v ^# /etc/fstab | tail -2
UUID=0f89adb9-ac88-4be5-b6cc-52a05bbdb825 /                       xfs     defaults        1 1
ip-10-164-175-246.ec2.internal:/var/www/html    /var/www/html/  nfs4    defaults    0   2
[root@ip-10-184-161-46 ~]# 

インスタンスの再起動後、systemdrsyslog.service内で次のように表示されました。

Jul 19 22:10:03 ip-10-184-161-46 systemd: Job ip\x2d10\x2d164\x2d175\x2d246.ec2.internal:-var-www-html.device/start timed out.
Jul 19 22:10:03 ip-10-184-161-46 systemd: Timed out waiting for device ip\x2d10\x2d164\x2d175\x2d246.ec2.internal:-var-www-html.device.
Jul 19 22:10:03 ip-10-184-161-46 systemd: Dependency failed for File System Check on /ip-10-164-175-246.ec2.internal:/var/www/html.
Jul 19 22:10:03 ip-10-184-161-46 systemd: Dependency failed for /var/www/html.
Jul 19 22:10:03 ip-10-184-161-46 systemd: Dependency failed for Remote File Systems.
Jul 19 22:10:03 ip-10-184-161-46 systemd: 
Jul 19 22:10:03 ip-10-184-161-46 systemd: 
Jul 19 22:10:03 ip-10-184-161-46 systemd: 
Jul 19 22:10:03 ip-10-184-161-46 systemd: 

手動による方法:

[root@ip-10-184-161-46 ~]# mount -a
[root@ip-10-184-161-46 ~]# echo $?
0
[root@ip-10-184-161-46 ~]# mount | grep '/var/www/html'
ip-10-164-175-246.ec2.internal:/var/www/html on /var/www/html type nfs4 (rw,relatime,vers=4.0,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=10.184.161.46,local_lock=none,addr=10.164.175.246)
[root@ip-10-184-161-46 ~]# 

nfs.serviceは別のインスタンスで実行されており、稼働時間はそれがダウンしなかったことを示しているので、systemdが起動時にマウントできなかった理由を理解しようとしています(Timed out)それでも手動でマウントしようとしたのは[〜#〜] not [〜#〜]問題でした。

systemdが起動時にマウントできなかった理由はありますか?

4
alexus

... redhatごと 8.3。NFSクライアント構成

行の変更:

ip-10-146-180-60.ec2.internal:/var/www/html /var/www/html/  nfs4     defaults,_netdev   0   2

に:

ip-10-146-180-60.ec2.internal:/var/www/html /var/www/html/  nfs defaults    0   0

私の問題を解決しました。

0
alexus

Eth0が起動する前にデバイスをマウントしようとしている可能性があります(したがって、ネットワーク接続がありません)。これを修正するには、fstabのオプション部分に_netdevを追加するだけです(つまり、defaults,_netdev)。

_netdevは、これがネットワークベースのデバイスであることをカーネルに指示する特別なフラグであるため、ネットワーク接続がないとマウントされません。したがって、起動時に、このフラグがないすべてのデバイスをマウントし、ネットワーク接続を起動し(ほとんどの場合、事後に発生します)、次に_netdevデバイスを起動します。

4
dannosaur