原本以为有大神已经总结的很清楚了,就不自己在写了, 但是在自己安装的过程中还是出现了一些问题, 所以打算以自己的方式重新总结一下。 参考https://blog.csdn.net/hliq5399/article/details/78193113
完全分布式安装
对于hadoop的本地模式,伪分布式的安装,由于在实际工作中用处不大, 这里就省略不写了。
服务器功能规划
之前在VirtualBox网络的Host-Only配置 中我已经配置了三台虚拟机, 具体的功能划分如下
master | slave1 | slave2 |
---|---|---|
NameNode | ResourceManage | |
DataNode | DataNode | DataNode |
NodeManager | NodeManager | NodeManager |
HistoryServer | SecondaryNameNode |
配置Hostname
这部分由于我在安装虚拟机的时候就输入了主机名,所以并不需要额外配置。
具体的修改方法(以master机器为例, 其他机器修改为对应的主机名slave1,slave2)
[root@master hadoop]# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=master
[root@master hadoop]# service network restart
配置hosts
[root@master hadoop]# vi /etc/hosts
192.168.102.3 master 192.168.102.4 slave1 192.168.102.5 slave2
此处还是以master为例, 另外两台slave机器也同样配置。
设置SSH无密码登录
Hadoop集群中的各个机器间会相互地通过SSH访问,每次访问都输入密码是不现实的,所以要配置各个机器间的SSH是无密码登录的。
1、 在master上生成公钥
[root@master hadoop]# ssh-keygen -t rsa
一路回车,都设置为默认值,然后再当前用户(我直接用了root用户,所以没有配置hadoop用户和用户组的过程)的Home目录下的.ssh
目录中会生成公钥文件(id_rsa.pub)
和私钥文件(id_rsa)
。
[root@master hadoop]# cd /root/.ssh/
authorized_keys id_rsa id_rsa.pub known_hosts
2、 分发公钥(本机也要分发)
[root@master hadoop]# ssh-copy-id master
[root@master hadoop]# ssh-copy-id slave1
[root@master hadoop]# ssh-copy-id slave2
3、以同样方式设置slave1、slave2到其他机器的无密钥登录。