一、前言
终于搭建了四台虚拟机,正式开始搭建Hadoop集群,目前是四台虚拟分别为:
node01(192.168.122.11),node02(192.168.122.12),node03(192.168.122.13),node04(192.168.122.14)
二、集群规划
规划搭建HDFS2.X HA:
角色划分如下:
节点 | NN-1 | NN-2 | DN | ZK | ZKFC | JNN | RM | NM |
---|---|---|---|---|---|---|---|---|
node01 | √ | √ | √ | |||||
node02 | √ | √ | √ | √ | √ | √ | ||
node03 | √ | √ | √ | √ | √ | |||
node04 | √ | √ | √ | √ |
三、搭建Hadoop HA集群
1.环境准备
- 依赖软件 ssh ,jdk
- 环境配置:
- ip地址配置(静态ip)
- hostname配置:修改/etc/hostname
- hosts映射配置:修改/etc/hosts
- 防火墙关闭:
sudo ufw disable
- ssh免密登陆:
四台虚拟机运行命令ssh-keygen -t rsa -P ""
生成密钥后,将node02、node03、node04的生成的id_rsa.pub公钥文件拷贝到node01里 (sudo scp id_rsa.pub node02@node02:/root/.ssh/id_rsa.pub.node02
),再将这些公钥追加到node01的authorized_keys(没有该文件新建一个)文件里,最后将生成的包含四个节点的秘钥的authorized_keys 复制到node02、node03、node04的.ssh目录下(sudo scp authorized_keys node01:node02:/home/node02/.ssh/
) - JAVA_HOME环境变量
- 虚拟机时间同步:
ntpdate cn.pool.ntp.org
hwclock --systohc
1. 安装zookeeper集群
先安装zookeeper集群是因为hadoop集群中需要配置zookeeper节点。
-
下载安装包 zookeeper-3.4.6.tar.gz
-
解压:
tar -zxvf /opt/software/zookeeper-3.4.6.tar.gz -C home/hadoop/app/
-
配置:
cd /home/hadoop/app/zookeeper-3.4.6/conf/
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
修改:dataDir=/home/hadoop/app/zookeeper-3.4.6/tmp
在最后添加:
server.1=node02:2888:3888
server.2=node03:2888:3888
server.3=node04:2888:3888
保存退出
然后创建一个tmp文件夹
mkdir /home/hadoop/app/zookeeper-3.4.6/tm