您好,登錄后才能下訂單哦!
NFS+SSH的應(yīng)用主要是解決Hadoop集群更換公鑰的麻煩。
一、NFS配置
1.安裝
[root@kry132 ~]# yum -y install rpcbind nfs-utils
rpcbind:用于通信
nfs-utils:nfs程序
2.創(chuàng)建共享目錄
[root@kry132 ~]# mkdir /data/nfsdata
[root@kry132 ~]# chown hadoop.hadoop /data/nfsdata/
3.配置nfs
[root@kry132 ~]# vim /etc/exports
添加以下內(nèi)容:
/data/nfsdata 192.168.0.135(rw,sync) |
如果需要指定用戶,還需要加入all_squash,anonuid=502,anongid=502。
注意服務(wù)端跟客戶端用戶的UID跟GID必須一致。比如服務(wù)端一個(gè)用戶為abc,uid跟gid都為502,那么客戶端也應(yīng)該存在一個(gè)abc的用戶,uid跟gid也為502.
4.啟動服務(wù)
[root@kry132 ~]# /etc/init.d/rpcbind start
[root@kry132 ~]# /etc/init.d/nfs start
5.設(shè)置開機(jī)啟動
[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.創(chuàng)建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.創(chuàng)建公鑰存放目錄
[root@Kry135 ~]# mkdir /home/hadoop/.ssh
[root@Kry135 ~]# chown hadoop.hadoop /home/hadoop/.ssh/
[root@Kry135 ~]# chmod 700 /home/hadoop/.ssh/
注意:如果切換到hadoop用戶操作就不需要更改用戶所屬主群主
6.創(chuàng)建軟連接
[root@Kry135 ~]# ln -s /data/nfsdata/authorized_keys /home/hadoop/.ssh/authorized_keys
四、測試
1.關(guān)閉selinux
[root@Kry135 ~]# setenfore 0
[root@Kry135 ~]# vim /etc/selinux/config
SELINUX=permissive 或 disabled |
注意:客戶端也需要關(guān)閉,執(zhí)行以上相同操作
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服務(wù)后,端口即固定了。
和nfs相關(guān)的端口有:
portmap 111
nfsd 2049
mountd 1011
rquotad 1012
注意:然后在服務(wù)端跟客戶端配置iptables放行端口,如果只是測試直接關(guān)閉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搭建成功!
擴(kuò)展內(nèi)容
1.nfs優(yōu)化
[root@kry132 ~]# vim /etc/init.d/nfs
[ -z "$RPCNFSDCOUNT" ] && RPCNFSDCOUNT=8 修改為 [ -z "$RPCNFSDCOUNT" ] && RPCNFSDCOUNT=32 |
默認(rèn)的內(nèi)核參數(shù)為:
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數(shù)據(jù)接收緩沖
echo 262144 > /proc/sys/net/core/rmem_max - 最大的TCP數(shù)據(jù)發(fā)送緩沖
echo 262144 > /proc/sys/net/core/wmem_default - 默認(rèn)的發(fā)送窗口大小
echo 262144 > /proc/sys/net/core/wmem_max - 發(fā)送窗口的最大大小
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。