1.修改机器名
集群的搭建最少需要三个节点,机器名分别修改为master,slave1,slave2。其中以master为主要操作系统。
修改hostname:
sudo gedit /etc/hostname
紧接着执行:
sudo gedit /etc/hosts
在hosts文件中更改原来的机器名为想要的,之后注销重新登陆,注销不成功就重启吧
现在验证是否更改成功,执行:
hostname
2.添加ip地址
查看本机ip,执行:
ifconfig
修改为静态ip后更方便记忆。每台机器在 etc/hosts 文件中添加所有机器(master、slave1和slave2)的ip地址。
再各个机器间测试能否ping通:ping <hostname或者ip地址>
3.通过ssh实现免密码登陆,连接各个机器
1.首先在master中生成公钥、密钥,导入公钥,见伪分布配置中相关内容(http://www.cnblogs.com/zhangduo/p/4592749.html)
2.在其它机器上生成公钥、密钥,并将公钥文件发送(scp命令)到master
3.将master上的公钥导入authorized_keys,并将其发送到其它机器
4.验证,执行:
ssh <hostname>
4.修改配置文件
每台机器所有配置文件和安装文件都要求一致。
其中yarn-site.xml文件:
<configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property> </configuration>
hdfs-site.xml文件:
<configuration> <property> <name>dfs.namenode.secondary.http-address</name> <value>Master:50090</value> </property> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/dfs/data</value> </property> </configuration>
其中hdfs-site.xml文件中dfs.replication的值不超过除master外机器的数量,故设为2。
slaves:
slave1 slave2
其他配置文件保持不变。
5.测试:
在master机器中进入hadoop目录,执行:
sbin/start-all.sh
分别在master、slave1和slave2中执行:jps
master中:
slave1中:
slave2中:
通过Mahout运行kmeans实例:http://www.cnblogs.com/zhangduo/p/4679907.html