Hadoop集群免密登录配置

一、引言

当我们启动Hadoop的时候,每启动一个节点就需要我们输入一次密码,但如果有很多台机器一起在跑,可能会多达几百几千个节点,很明显如果在生产环境中,这种操作绝对是不可取的。这个时候就需要我们对Hadoop进行SSH免密登录配置。

二、原理

Hadoop在启动节点的时候,其实都是系统内部在进行SSH登录,而每次进行SSH登录,就会需要我们用密码进行授权。这样解决办法就很简单了,我们只需要把SSH的公钥复制到授权列表即可,这样以后每次需要密码进行登录的时候,系统内部会自动到授权列表里面找公钥,自动将公钥解密之后进行登录。

三、配置步骤

我使用的操作系统是Centos,Ubuntu下的配置跟Centos几乎大同小异,而我这里采用的是伪分布式,暂时只用一台机器进行演示,多台机器跟一台机器的配置方法完全相同。一台机器其实就是自己登陆自己,把自己的公钥配置到自己的授权列表。

1.进入到 .ssh目录

cd .ssh

 还没生成公钥和私钥前只有一个known_hosts文件。

2.生成公钥和私钥

ssh-keygen -t rsa

指定特定的加密算法进行生成,其实默认就是 -t rsa

 

 这时可以看到多出了两个文件 id_rsa(密钥),id_rsa.pub(公钥)

3.新建授权列表文件

touch authorized_keys

 

4.更改授权列表文件的权限

 chmod 600 authorized_keys

 

5.将公钥中的值加入到授权列表

cat id_rsa.pub >> authorized_keys 

6.重新启动Hadoop查看是否配置成功

 当Linux不再提示输入密码,则说明我们已经配置成功。

发布了125 篇原创文章 · 获赞 68 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/qq_42109746/article/details/99701687