Hadoop(四)-ssh免密登陆配置
一、配置免密码登陆
1. ssh-****** -t rsa (四个回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)2.将自己的公钥拷贝到.ssh/下面
3.注意在启动时会出现如下错误
有些进程没有启动起来
18/05/14 15:57:08 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
解决方法:首先进到hadoop安装目录下,查看lib依赖问题,cd /master/hadoop/lib/native下
[[email protected] native]# ldd libhadoop.so.1.0.0
我们看到不是64位或者32位的问题,但是有一个GLIBC_2.14找不到,我们继续查找
ldd --version
原来系统预装的glibc库是2.12版本,而hadoop期望是2.14版本,所以打印警告信息。
现在有两个办法,重新编译glibc.2.14版本,安装后专门给hadoop使用,这个有点危险。
第二个办法直接在log4j日志中去除告警信息。在//usr/local/hadoop-2.6.2/etc/hadoop/log4j.properties文件中添加
1. log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR
4.cd ~/.ssh #进入到.ssh目录下
cat id_rsa.pub >> authorized_keys #将公钥写到文件中chmod 600 ~/.ssh/authorized_keys #权限设置为600
这样自己就可以免登陆到自己了
vi /etc/ssh/sshd_config
RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥私钥配对认证方式
AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径
如果要另一台电脑也可以登陆到主机,则使用同样的方法,生成秘钥,然后将公钥发送给要登陆的主机
注意:这个有个简单的方法拷贝公钥