`

Hadoop2.0 HA 集群搭建步骤

阅读更多
Hadoop2.0 HA 集群搭建步骤

一、准备

1.新建六台虚拟机

1.1 采用 clone 的方式快速新增六台虚拟机

安装方式

采用 clone 方式的优势,可以免去在原主机中软件的安装问题
clone 后主机中的这些软件依然可以使用

选择完全克隆
若安装错误,则删除系统重新安装
删除VM上安装的系统

1.2 网络配置

VM -- 选择克隆后的虚拟机 -- 右键 -- 设置 -- 网络 -- 高级 -- MAC 地址
此时的地址时VM 分配给 克隆机的MAC地址

但克隆后会拷贝原机器的MAC地址信息在网络配置文件中

克隆后的虚拟机如何配置网络连接
vi /etc/sysconfig/network-scripts/ifcfg-eth0
删除UUID 、 MAC地址配置
配置 IP地址

rm -rf /etc/udev/rules.d/70-persistent-net.rules
删除已有映射,重启机器后,重新读取当前机器的映射

vi /etc/sysconfig/network
配置hostname

shutdown -r now
重启机器

2.关闭防火墙

service iptables stop
chkconfig iptables off

3.修改host

vim /etc/hosts
编辑hosts文件,需要重启后生效
若不想重启,则 hostname xxxx 临时生效

4.免密设置

生成秘钥
ssh-keygen
回车,其他无需输入,默认即可



生成的文件:/root/.ssh/id_rsa

配置免密登录
ssh-copy-id -i /root/.ssh/id_rsa.put root@linux05
配置每台机器之间相互免密登录

5.文件传输
scp -r /etc/hosts

192.168.76.151 linux04
192.168.76.152 linux05
192.168.76.153 linux06
192.168.76.154 linux07
192.168.76.155 linux08
192.168.76.156 linux09

保持每台虚拟机上的host配置文件相同


二、集群节点分配
Park01
Zookeeper 
NameNode(active)
Resourcemanager (active)

Park02
Zookeeper
NameNode (standby)

Park03
Zookeeper
ResourceManager(standby)

Park04
DataNode
NodeManager
JournalNode

Park05
DataNode
NodeManager
JournalNode

Park06
DataNode
NodeManager
JournalNode

三、安装 zookeeper

配置机器:前三台机器
linux04/linux05/linux06

上传安装包至 linux04
解压缩
tar -zxvf zookeeper.tar.gz
进入安装目录
cd /zookeeper/conf
重命名
cp zoo_example.cfg zoo.cfg
编辑配置文件
vim zoo.cfg



建立文件夹
cd ..
mkdir tmp
cd tmp
vim myid
1
表示第一台机器,即zookeeper的选举ID

scp -r /zookeeper root@linux05
scp -r /zookeeper root@linux06
将配置好的zookeeper发送到其他两台机器上

传输结束后,vim myid 分别改为 2 、 3

四、安装hadoop

安装机器:linux04
上传安装包并解压

cd ./hadoop/etc/hadoop

vim hadoop-env.sh
JDK配置路径
export JAVA_HOME=/usr/java/jdk1.8.0_121
配置文件路径
export HADOOP_CONF_DIR=/usr/local/software/hadoop-2.7.1/etc/hadoop

立即生效
source hadoop-env.sh


vim core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://ns</value>
</property>

<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/software/hadoop/usr/local/software/hadoop-2.7.1/tmp</value>
</property>

<property>
<name>ha.zookeeper.quorum</name>
<value>linux04:2181,linux05:2181,linux06:2181</value>
</property>
</configuration>

vim hdfs-site.xml
<configuration>

<property>
<name>dfs.nameservices</name>
<value>ns</value>
</property>

<property>
<name>dfs.ha.namenodes.ns</name>
<value>nn1,nn2</value>
</property>


<property>
<name>dfs.namenode.rpc-address.ns.nn1</name>
<value>linux04:9000</value>
</property>


<property>
<name>dfs.namenode.http-address.ns.nn1</name>
<value>linux04:50070</value>
</property>

<property>
<name>dfs.namenode.rpc-address.ns.nn2</name>
<value>linux05:9000</value>
</property>

<property>
<name>dfs.namenode.http-address.ns.nn2</name>
<value>linux05:50070</value>
</property>

<property>
<name>dfs.namenode.shared.edits.dir</name>
<value> qjournal://linux07:8485;linux08:8485;linux09:8485/ns</value>
</property>

<property>
<name>dfs.journalnode.edits.dir</name>
<value>/usr/local/software/hadoop-2.7.1/journal</value>
</property>

<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<property>
</property>

<property>
<name>dfs.client.failover.proxy.provider.ns</name>
<value> org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>

<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence</value>
</property>

<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/root/.ssh/id_rsa</value>
</property>

<property>
<name>dfs.namenode.name.dir</name>
<value>file:///usr/local/software/hadoop-2.7.1/tmp/namenode</value>
</property>

<property>
<name>dfs.datanode.data.dir</name>
<value>file:///usr/local/software/hadoop-2.7.1/tmp/datanode</value>
</property>

<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<value>file:///usr/local/software/hadoop-2.7.1/tmp/namenode</value>
</property>

<property>
<name>dfs.datanode.data.dir</name>
<value>file:///usr/local/software/hadoop-2.7.1/tmp/datanode</value>
</property>

<property>
<name>dfs.replication</name>
<value>3</value>
</property>

<property>
<name>dfs.permissions</name>
<value>false</value>
</property>




</configuration>


cp mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>


vim yarn-site.xml
<configuration>

<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>

<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>

<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>linux04</value>
</property>


<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>linux06</value>
</property>

<property>
<name>yarn.resourcemanager.recovery.enabled</name>
<value>true</value>
</property>

<property>
<name>yarn.resourcemanager.store.class</name>
<value> org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore </value>
</property>

<property>
<name>yarn.resourcemanager.zk-address</name>
<value>linux04:2181,linux05:2181,linux06:2181</value>
<description>For multiple zk services, separate them with comma</description>
</property>

<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yarn-ha</value>
</property>

<property>
<name>yarn.resourcemanager.hostname</name>
<value>linux04</value>
</property>

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>


</configuration>


配置slave文件
linux07
linux08
linux09


配置环境变量
vim /etc/profile

创建目录
mkdir journal
mkdir tmp
cd tmp
mkdir datanode
mkdir namenode


将配置好的hadoop发往其他5台机器
scp -r hadoop root@linux05 ...

scp -r /etc/profile root@linux05 ...
source /etc/profile

五、启动集群

1.启动三台zookeeper

cd zookeeper
cd bin
sh zkServer.sh start

检验启动是否成功
sh zkServer.sh status

2.在 zookeeper 中 leader 的节点上 执行
hdfs zkfc -formatZK

3.在 linux07 linux08 linux09 上启动 journalnode

cd /hadoop/sbin
sh hadoop-daemons.sh start journalnode

jps
查看 journalnode 已启动

4.linux 04
namenode 格式化

hadoop namenode -format

启动
hadoop-daemon.sh start namenode

5.linux 05
hdfs namenode-bootstrapStandby

hadoop-daemon.sh start namenode

6.linux 07 08 09
启动 dataNode
hadoop-daemon.sh start datanode

7.linux 04 05

hadoop-daemon.sh start zkfc

8.linux 04
start-yarn.sh

9.linux 06
yarn-daemon.sh start resourcemanager

六、

linux01:50070
linux01:8088
  • 大小: 11.6 KB
  • 大小: 22.2 KB
分享到:
评论

相关推荐

    Hadoop2.0 HA集群搭建步骤

    所谓HA,即高可用,实现高可用最关键的是消除单点故障,hadoop-ha严格来说应该分成各个组件的HA机制——HDFS的HA、YARN的HA;通过双namenode消除单点故障;通过双namenode协调工作

    Hadoop2.0分布式HA环境部署

    在搭建Hadoop2.0 HA环境之前,需要对虚拟机进行相应的配置: - **安装JDK 1.8**:Hadoop2.0需要Java 1.8环境支持。 - **创建用户**:推荐使用非root用户(例如work用户)进行安装和管理,避免权限问题。 - **SSH...

    hadoop2.6.4-ha集群搭建

    在搭建Hadoop 2.6.4 HA集群之前,我们需要进行以下准备工作: 1. **配置Linux环境**:首先确保所有节点的操作系统版本一致,并且已安装必要的软件包。此外,还需要设置正确的主机名和IP地址映射。 2. **网络配置**...

    云计算第三版精品课程配套PPT课件含习题(26页)第5章 Hadoop 2.0 主流开源云架构(二).rar

    10. **学习与实践**:掌握Hadoop不仅需要理解理论,还需要通过实际操作来熟悉Hadoop集群的搭建、数据导入导出、作业提交等步骤。这26页的PPT课件可能包含丰富的示例和习题,帮助学习者加深理解。 通过深入学习这个...

    hadoop2.2.0集群搭建

    ### Hadoop 2.2.0 集群搭建详细指南 #### 一、环境配置与准备工作 在开始搭建 Hadoop 2.2.0 的集群之前,我们需要确保所有节点都处于良好的工作状态,并完成一系列的基础环境配置。具体步骤如下: 1. **更新 ...

    Hadoop2.x HA环境搭建

    #### 一、HA2.0集群搭建与测试 **准备工作:** 1. **停掉之前的服务:** - 在搭建Hadoop2.x HA集群之前,需要确保所有相关的服务都已经停止运行,避免与新搭建的集群产生冲突。 2. **操作系统上的免密钥登录设置...

    大数据工作者--Hadoop进阶版hadoop创建

    本文将详细探讨Hadoop2.0的新特性,特别是高可用架构的搭建,以及相关的组件和配置过程。 Hadoop1.0的主要局限在于NameNode和JobTracker这两个关键组件的单点故障问题。NameNode负责管理文件系统的元数据,而...

    hadoop搭建.docx

    本教程将详细介绍如何在Linux环境下搭建一个高可用(HA)的Hadoop完全分布式集群,主要涉及到HDFS(Hadoop Distributed File System)的HA以及YARN(Yet Another Resource Negotiator)的高可用设置。 1. **HDFS HA**: ...

    Centos7.2安装Ambari2.4.2+HDP2.5.3搭建Hadoop集群

    本文将依次介绍搭建过程中的关键步骤,包括环境准备、数据库搭建、Ambari安装及Hadoop集群的配置等。 #### 二、环境准备 1. **操作系统**:确保所有节点均安装了Centos7.2版本。 2. **硬件配置**:推荐配置至少...

    大数据学习总结文档.doc

    为解决单点故障问题,Hadoop2.0引入了HA和YARN。 4.2 High Availability(HA) HA通过设置多个NameNode实现,确保即使主NameNode故障,系统仍能继续运行。 4.3 Yet Another Resource Negotiator(YARN) YARN作为...

    CDH-5.XX 离线安装及升级步骤及安装过程常见错误.txt

    ### CDH-5.XX离线安装与升级详解 ...遵循上述步骤,可以较为顺利地完成CDH集群的搭建,并实现高效的数据处理能力。此外,熟悉安装过程中的常见错误及解决方法,有助于快速定位和解决问题,确保集群稳定运行。

Global site tag (gtag.js) - Google Analytics