您好,登錄后才能下訂單哦!
NFS+SSH的應用主要是解決Hadoop集群更換公鑰的麻煩。
一、NFS配置
1.安裝
[root@kry132 ~]# yum -y install rpcbind nfs-utils
rpcbind:用于通信
nfs-utils:nfs程序
2.創建共享目錄
[root@kry132 ~]# mkdir /data/nfsdata
[root@kry132 ~]# chown hadoop.hadoop /data/nfsdata/
3.配置nfs
[root@kry132 ~]# vim /etc/exports
添加以下內容:
/data/nfsdata 192.168.0.135(rw,sync) |
如果需要指定用戶,還需要加入all_squash,anonuid=502,anongid=502。
注意服務端跟客戶端用戶的UID跟GID必須一致。比如服務端一個用戶為abc,uid跟gid都為502,那么客戶端也應該存在一個abc的用戶,uid跟gid也為502.
4.啟動服務
[root@kry132 ~]# /etc/init.d/rpcbind start
[root@kry132 ~]# /etc/init.d/nfs start
5.設置開機啟動
[root@kry132 ~]# chkconfig --level 35 rpcbind on
[root@kry132 ~]# chkconfig --level 35 nfs on
6.查看共享目錄(客戶端)
[root@Kry135 ~]# showmount -e 192.168.0.132
Export list for 192.168.0.132:
/data/nfsdata 192.168.0.135
二、SSH配置
1.安裝ssh
[root@kry132 ~]# yum -y install openssh-server openssh-clients
2.配置
[root@kry132 ~]# vim /etc/ssh/sshd_config
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys |
3.生成密鑰
[root@kry132 ~]# ssh-keygen -t rsa
4.修改公鑰
[root@kry132 ~]# cd .ssh
[root@kry132 .ssh]# cat id_rsa.pub >> authorized_keys
[root@kry132 .ssh]# chown hadoop.hadoop authorized_keys
[root@kry132 .ssh]# chmod 600 authorized_keys
5.將公鑰放到NFS共享目錄
[root@kry132 .ssh]# cp -p authorized_keys /data/nfsdata/
三、客戶端配置
1.安裝ssh
[root@Kry135 ~]# yum -y install openssh-server openssh-clients
2.配置
[root@Kry135 ~]# vim /etc/ssh/sshd_config
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys |
3.創建nfs共享目錄
[root@Kry135 ~]# mkdir /data/nfsdata/
[root@Kry135 ~]#chown hadoop.hadoop /data/nfsdata/
4.掛載NFS共享目錄
[root@Kry135 ~]# mount -t nfs 192.168.0.132:/data/nfsdata /data/nfsdata
5.創建公鑰存放目錄
[root@Kry135 ~]# mkdir /home/hadoop/.ssh
[root@Kry135 ~]# chown hadoop.hadoop /home/hadoop/.ssh/
[root@Kry135 ~]# chmod 700 /home/hadoop/.ssh/
注意:如果切換到hadoop用戶操作就不需要更改用戶所屬主群主
6.創建軟連接
[root@Kry135 ~]# ln -s /data/nfsdata/authorized_keys /home/hadoop/.ssh/authorized_keys
四、測試
1.關閉selinux
[root@Kry135 ~]# setenfore 0
[root@Kry135 ~]# vim /etc/selinux/config
SELINUX=permissive 或 disabled |
注意:客戶端也需要關閉,執行以上相同操作
2.配置NFS固定端口
[root@Kry135 ~]#vim /etc/service(端口號必須在1024以下,且未被占用)
mountd 1011/tcp #rpc.mountd mountd 1011/udp #rpc.mountd rquotad 1012/tcp #rpc.rquotad rquotad 1012/udp #rpc.rquotad |
重啟nfs服務后,端口即固定了。
和nfs相關的端口有:
portmap 111
nfsd 2049
mountd 1011
rquotad 1012
注意:然后在服務端跟客戶端配置iptables放行端口,如果只是測試直接關閉iptabls即可。
3.測試免密登錄
[hadoop@kry132 ~]$ ssh hadoop@192.168.0.135
Last login: Thu Aug 4 18:08:31 2016 from slave.hadoop
4.測試免密傳輸文件
[root@kry132 ~]# su - hadoop
[hadoop@kry132 ~]$ scp test.txt hadoop@192.168.0.135:/home/hadoop/
test.txt 100% 13 0.0KB/s 00:00
測試登錄跟文件傳輸都沒有要求輸入密碼,說明NFS+SSH搭建成功!
擴展內容
1.nfs優化
[root@kry132 ~]# vim /etc/init.d/nfs
[ -z "$RPCNFSDCOUNT" ] && RPCNFSDCOUNT=8 修改為 [ -z "$RPCNFSDCOUNT" ] && RPCNFSDCOUNT=32 |
默認的內核參數為:
cat /proc/sys/net/core/rmem_default
229376
cat /proc/sys/net/core/rmem_max
229376
cat /proc/sys/net/core/wmem_default
229376
cat /proc/sys/net/core/wmem_max
229376
修改為:
echo 262144 > /proc/sys/net/core/rmem_default - 最大的TCP數據接收緩沖
echo 262144 > /proc/sys/net/core/rmem_max - 最大的TCP數據發送緩沖
echo 262144 > /proc/sys/net/core/wmem_default - 默認的發送窗口大小
echo 262144 > /proc/sys/net/core/wmem_max - 發送窗口的最大大小
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。