欢迎投稿

今日深度:

Hadoop集群配置,

Hadoop集群配置,


1.在进行Hadoop集群配置中,需要在/etc/hosts文件中添加集群中所有机器的IP与主机名,这样Master与所有的Slave机器之间不仅可以通过IP进行通信,还可以通过主机名进行通信。


2.配置SSH无密码认证。

  Hadoop运行过程中需要管理远端Hadoop守护进程,在Hadoop启动以后,NameNode通过SSH来启动和停止各个DataNode上的各种守护进程的。这就必须在节点之间执行指令的时候是不需要输入密码的形式,我们需要配置SSH运行无密码公钥认证的形式。这样NameNode和DataNode之间可以SSH无密码登陆。

SSH无密码认证需要两个服务:ssh和rsync。


SSH无密码原理

Master(NameNode | JobTracker)作为客户端,要实现无密码公钥认证,连接到服务器Salve(DataNode | Tasktracker)上时,需要在Master上生成一个密钥对,包括一个公钥和一个私钥,而后将公钥复制到所有的Slave上。当Master通过SSH连接Salve时,Salve就会生成一个随机数并用Master的公钥对随机数进行加密,并发送给Master。Master收到加密数之后再用私钥解密,并将解密数回传给Slave,Slave确认解密数无误之后就允许Master进行连接了。这就是一个公钥认证过程,其间不需要用户手工输入密码。重要过程是将客户端Master复制到Slave上。


过程:

1.在master节点上执行:

ssh-keygen  -t  rsa  -P  ' '              #生成无密码密钥对

2.在master节点上把id_rsa.pub追加到授权的key里去

cat  ~/.ssh/id_rsa.pub  >>  ~/.ssh/authorized_keys

3.验证前,(1)修改文件authorized_keys的权限。

chmod  600 ~/.ssh/authorized_keys

 备注:如果不进行设置,在验证时,扔提示你输入密码。

(2)用root用户设置/etc/ssh/sshd_config的内容,使其无密码登录有效。

RSAAuthentication yes # 启用 RSA 认证

PubkeyAuthentication yes # 启用公钥私钥配对认证方式

AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)


设置完后重启SSH服务,service sshd  restart 。

查看SSH版本,ssh -V


3.Hadoop配置

(1)hadoop2.x没有mapred-site.xml,只有mapred-site.xml.template,用户需要复制一份模板。

(2)masters,尽量使用IP。hadoop2.x没有masters文件。

(3)slaves ,配置datanode机器,只有namenode特有。

(4)tmp文件夹权限必须是当前用户。

(5)hadoop2.6.0默认为64位环境,运行在32位机器上会出现一些警告。不影响结果。

    hdfs文件系统格式化  hdfs namenode -format

    hadoop2.x之后使用ResourceManager和NodeManager代替了JobTracker和TaskTracker。

    查看ResourceManager,http://master:8088

    查看NameNode,http://master:50070   


Yarn配置

1.yarn-env.sh

export    JAVA_HOME=

   




常见问题:

1.Namenode没有正常启动。

50070等端口被占。关闭浏览器等。

2.Datanode 没有正常启动。

清空hadoop.tmp.dir目录。

3.


www.htsjk.Com true http://www.htsjk.com/Hadoop/41497.html NewsArticle Hadoop集群配置, 1.在进行Hadoop集群配置中,需要在/etc/hosts文件中添加集群中所有机器的IP与主机名,这样Master与所有的Slave机器之间不仅可以通过IP进行通信,还可以通过主机名进行通信...
相关文章
    暂无相关文章
评论暂时关闭