节点分配
主机名 | IP | 安装的软件 | 运行的进程 |
---|---|---|---|
node1 | 192.168.2.171 | jdk、hadoop | namenode、DFSZKFailoverController(zkfc)、ResourceManager |
node2 | 192.168.2.172 | jdk、hadoop | namenode、DFSZKFailoverController(zkfc)、ResourceManager |
node3 | 192.168.2.173 | jdk、hadoop、zookeeper | DataNode、NodeManager、JournalNode、QuorumPeerMain |
node4 | 192.168.2.174 | jdk、hadoop、zookeeper | DataNode、NodeManager、JournalNode、QuorumPeerMain |
node5 | 192.168.2.175 | jdk、hadoop、zookeeper | DataNode、NodeManager、JournalNode、QuorumPeerMain |
一、zookeeper集群的安装与配置(在node3,node4,node5上配置)
1.上传安装包并解压
tar -zxvf zookeeper-3.4.9.tar.gz -C /home/hadoop
cd /home/hadoop/zookeeper-3.4.9/conf
cp zoo_sample.cfg zoo.cfg
编辑zoo.cfg:
vim zoo.cfg
按照下图所示编辑:
2.在zookeeper目录下新建两个目录:
cd /home/hadoop/zookeeper-3.4.9
mkdir data
mkdir log
cd data
touch myid
vim myid(在每台上面都不一样,参考zoo.cfg文件上server后面的3、4、5,如我写的server.3=node3:2288:3388,那么在node3上myid里就应该是3,以此类推)
3.启动ZK节点(分别在node3、node4、node5上启动)
cd /home/hadoop/zookeeper-3.4.9/bin
./zkServer.sh start
查看是否启动成功:
./zkServer.sh status
node5:
node4:
node3:
可以看到有一个leader,两个follower
输入jps查看:
至此zookeeper集群安装完成。
二、hdfs和yarn高可用性的搭建与配置
(每个节点都要配置,可以先在一台机子上配置好,然后再使用scp命令拷贝到其他节点上)
1.修改core-site.xml文件:
cd /usr/hadoop/etc/Hadoop
vim core-site.xml
<configuration>
<!--指定hdfs的nameservice为Master(和hdfs-site.xml一致)-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://Master</value>
</property>
<!--指定缓冲大小-->
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<!--指定hadoop的临时目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoopdir/tmp/</value>
<description>A base for other temporary directories.</description>
</property>
<!--指定zookeeper地址(就是安装了zookeeper的三个节点)-->
<property>
<name>ha.zookeeper.quorum</name>
<value>node3:2181,node4:2181,node5:2181</value>
</property>
</configuration>
2.修改hdfs-site.xml文件
vim hdfs-site.xml
<configuration>
<!--默认复制几份 --