次のリンクをたどって、nfsを使用してローカルマシン(ubuntu)にhdfsをマウントしようとしています:-
https://www.cloudera.com/documentation/enterprise/5-2-x/topics/cdh_ig_nfsv3_gateway_configure.html#xd_583c10bfdbd326ba--6eed2fb8-14349d04bee--7ef4
だから、私のマシンで私はnfs-commonをインストールしました:-
Sudo apt-get install nfs-common
次に、マウントする前に、次のコマンドを実行しました:
rpcinfo -p 192.168.170.52
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 48435 status
100024 1 tcp 54261 status
100005 1 udp 4242 mountd
100005 2 udp 4242 mountd
100005 3 udp 4242 mountd
100005 1 tcp 4242 mountd
100005 2 tcp 4242 mountd
100005 3 tcp 4242 mountd
100003 3 tcp 2049 nfs
showmount -e 192.168.170.52
Export list for 192.168.170.52:
/ *
その後、私はhdfsをマウントしてみました:-
Sudo mount -t nfs -o vers=3,proto=tcp,nolock 192.168.170.52:/ /mnt/hdfs_mount/
しかし、私はこのエラーを受け取りました:---
mount.nfs: mount system call failed
次に、問題をググって、nfs-kernel-server、portmapを使用してインストールしました
Sudo apt-get install nfs-kernel-server portmap
上記のコマンドを実行した後の出力:---
rpcinfo -p 192.168.170.52
です:-
192.168.170.52: RPC: Port mapper failure - Unable to receive: errno 113 (No route to Host)
そしてのために
showmount -e 192.168.170.52
です:---
clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to Host)
また、出力:-
Sudo service nfs start
となる:-
Failed to start nfs.service: Unit nfs.service not found.
これで私を助けてください。
私はこの問題をCentOS 7でテストしました。このような問題が発生した場合は、深く掘り下げる必要があります。
問題:
clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to Host)
ファイアウォールに関連しています。コマンドshowmount -e IP_server
は、サーバーで使用可能なすべてのマウントを表示します。このコマンドは正常に機能しますが、開くポートを注意する必要があります。ポート2049
のみが開かれている場合、ファイアウォールを通過しません。 NFSサーバーのファイアウォールがNFSトラフィックを許可するように構成されている場合でも、showmount
コマンドはブロックされます。サーバーでファイアウォールを無効にするかどうかをテストするには、この問題を取り除く必要があります。
したがって、これらのポートはサーバー上で開いている必要があります。
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-port=2049/tcp
firewall-cmd --permanent --add-port=2049/udp
firewall-cmd --reload
可用性のための追加のテスト2049/NFSポート。
semanage port -l | grep 2049
-SELinuxコンテキストとサービス名を返しますnetstat -tulpen | grep 2049
ポート2049を有効にしてsemanage
を設定する代わりに、nfs
サービスを追加するだけです
firewall-cmd --add-service=nfs --permanent &&
firewall-cmd --reload