问题导读:
1.实现无密码登录的关键是什么?
2.生成key的命令有几种?
3.如何实现远程复制文件?
1、这里我们搭建一个由三台机器组成的集群:
172.16.77.15 aboutyun/123456 master
172.16.77.16 aboutyun/123456 slave1
172.16.77.17 aboutyun/123456 slave1
1.1 上面各列分别为IP、user/passwd、hostname
对于三台机器都需要修改:
下面是master的修改:通过命令
下面修改hostname
上面hosts基本都一样,只不过hostname有所差别。
2、打通master到slave节点的SSH无密码登陆
这里面打通无密码登录,很多新手遇到了问题,这里安装的时候,具体的操作,可以查阅其他资料:
Hadoop伪分布安装过程:Hadoop单机环境搭建指南(ubuntu)
http://www.aboutyun.com/thread-6487-1-1.html
CentOS6.4之图解SSH无验证双向登陆配置
http://www.aboutyun.com/blog-3779-85.html
这是个人总结的哦命令,相信对你有所帮助
个人常用知识总结
http://www.aboutyun.com/blog-61-127.html
然后这里在展示一下,authorized_keys是什么样子的:
上面的原理,就是我把工钥放到里面,然后本台机器就可以ssh无密码登录了。如果想彼此无密码登录,那么就需要把彼此的工钥(*.pub)放到authorized_keys里面
然后我们进行下面步骤:
3.1 安装ssh
一般系统是默认安装了ssh命令的。如果没有,或者版本比较老,则可以重新安 装:
sudo apt-get install ssh
3.2设置local无密码登陆
具体步骤如下:
第一步:产生密钥
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
第二部:导入authorized_keys
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
第二部导入的目的是为了无密码等,这样输入如下命令:
下面展示一下hosts的配置,及无密码登录的效果
locahost的配置
无密码登录效果:
3.3设置远程无密码登陆
进入master的.ssh目录
scp authorized_keys aboutyun@slave1:~/.ssh/authorized_keys_from_master
进入slave1的.ssh目录
cat authorized_keys_from_master >> authorized_keys
至此,可以在master上面ssh slave1进行无密码登陆了。
【注意】:以上操作在每台机器上面都要进行。
这里在强调一下原理:
就是把工钥放到里面,然后本台机器就可以ssh无密码登录了。如果想彼此无密码登录,那么就需要把彼此的工钥(*.pub)放到authorized_keys里面
------------------------------------------------------------------------
根据上面的资料相信你能得到互通,这里展现一下效果:
上面是slave1无密码登录master
这里是master无密码登录slave1
------------------------------------------------------------------------