Hadoop--2.NFS结合SSH免密登录

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 - 发送窗口的最大大小


分享文章:Hadoop--2.NFS结合SSH免密登录
本文路径:http://hbruida.cn/article/jdhsei.html