私のラボシステムでnfsバージョン3を使用してテストしましたが、正常に動作します。
[root@server2 ~]# tail -1 /etc/mtab
server1:/nfs /nfs nfs rw,relatime,vers=3,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.150.134,mountvers=3,mountport=20048,mountproto=udp,local_lock=none,addr=192.168.150.134 0 0
[root@server2 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.4 (Maipo)
[root@server2 ~]#
しかしながら。 Azureで同じことをすると失敗します。私はこのガイドに従った
しかし、バージョン3を使用してマウントすると、以下のエラーが発生します
mount -vv -t nfs -o vers=3 server1:/appl /wbr
mount.nfs: timeout set for Thu Aug 1 02:38:02 2019
mount.nfs: trying text-based options 'vers=3,addr=10.200.254.8'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 10.200.254.8 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=17
mount.nfs: trying 10.200.254.8 prog 100005 vers 3 prot UDP port 20048
mount.nfs: portmap query retrying: RPC: Timed out
バージョン4は問題なく機能しますが、バージョン3は機能しません。
何か案は?
うまくいきました!
これを/ etc/sysconfig/nfsファイルに入れます
RQUOTAD_PORT = 875
LOCKD_TCPPORT = 32803
LOCKD_UDPPORT = 32769
MOUNTD_PORT = 892
STATD_PORT = 662
その後
systemctl restart nfs-config
次に、Azureで上記のポートtcp/udpを開き、マウントできました!
皆さまのご支援ありがとうございます!
ベンダーはRHEL7でNFSv3サポートを提供しています( NFSの概要 を参照)。
次のチェックを行ってください:
1)/etc/sysconfig/nfs
ファイルでNFSv3サポートが有効になっていることを確認します。
NFS3_SERVER_SUPPORT="yes"
クライアントがNFSv4を使用しないようにするには、設定を追加します
RPCNFSDARGS= -N 4
2)NFSデーモンがNFSサーバーで実行されているかどうかを確認します。
# service nfs status
# service portmap status
3)AzureのNFSサーバーがクライアントシステムからNFSネットワークポート経由で利用可能かどうかを確認します。
あなたが好むどんなツールでも、例えば:
# telnet nfs_server_ip_addr 2049
# nmap -sU -p 111,2049 nfs_server_ip_addr
# nmap -sT -p 111,2049 nfs_server_ip_addr
4)クライアントシステムから既存のマウントが表示されるかどうかを確認します。
# showmount -e nfs_server_name