1 概述
上一篇文章介绍了如何使用虚拟机搭建集群,到了这篇文章就是实战了,使用真实的三台不同服务器进行Hadoop
集群的搭建。具体步骤其实与虚拟机的差不多,但是由于安全组以及端口等等一些列的问题,会与虚拟机有所不同,废话不多说,下面正式开始。
2 约定
Master
节点的ip
用MasterIP
表示,主机名用master
表示- 两个
Worker
节点的ip
用Worker1IP
/Worker2IP
表示,主机名用worker1
/worker2
表示 - 这里为了演示方便统一使用
root
用户登录,当然生产环境不会这样
3 (可选)本地Host
修改本地Host
,方便使用主机名来进行操作:
sudo vim /etc/hosts
# 添加
MaterIP master
Worker1IP worker1
Worker2IP worker2
4 ssh
本机生成密钥对后复制公钥到三台服务器上:
ssh-keygen -t ed25519 -a 100 # 使用更快更安全的ed25519算法而不是传统的RSA-3072/4096
ssh-copy-id root@master
ssh-copy-id root@worker1
ssh-copy-id root@worker2
这时可以直接使用root@host
进行连接了:
ssh root@master
ssh root@worker1
ssh root@worker2
不需要输入密码,如果不能连接或者需要输入密码请检查/etc/ssh/sshd_config
或系统日志。
5 主机名
修改Master
节点的主机名为master
,两个Worker
节点的主机名为worker1
、worker2
:
# Master节点
vim /etc/hostname
master
# Worker1节点
# worker1
# Worker2节点
# worker2
同时修改Host
:
# Master节点
vim /etc/hosts
Worker1IP worker1
Worker2IP worker2
# Worker1节点
vim /etc/hosts
MasterIP master
Worker2IP worker2
# Worker1节点
vim /etc/hosts
MasterIP master
Worker1IP worker1
修改完成之后需要互ping
测试:
ping master
ping worker1
ping worker2
ping
不通的话应该是安全组的问题,开放ICMP
协议即可:
6 配置基本环境
6.1 JDK
scp
上传OpenJDK 11
,解压并放置于/usr/local/java
下,同时修改PATH
: