文档章节

hadoop-2.7.2-HA安装笔记

Julyme
 Julyme
发布于 2017/02/23 14:56
字数 860
阅读 13
收藏 0

配置方案如图

 

NN

DN

ZK

ZKFC

JN

RM

NM(任务管理器)

 HMaster

 Region Server

Node1

1

 

1

1

 

1

 

 

 1

Node2

1

1

1

1

1

 

1

 

 1

Node3

 

1

1

 

1

 

1

 1

 1

Node4

 

1

 

 

1

 

1

 1

 1

一、进入hadoop2.7/etc/hadoop/文件夹,修改hadoop-env.sh的JAVA_HOME路径。

二、 修改hdfs-site.xml配置文件

  1、配置命名服务

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

2、配置所有namenode名字
<property>
  <name>dfs.ha.namenodes.mycluster</name>
  <value>nn1,nn2</value>
</property>

3、配置RPC协议端口

<property> <name>dfs.namenode.rpc-address.mycluster.nn1</name> <value>node1:8020</value> </property> <property> <name>dfs.namenode.rpc-address.mycluster.nn2</name> <value>node2:8020</value> </property>

4、配置http端口

<property> <name>dfs.namenode.http-address.mycluster.nn1</name> <value>node1:50070</value> </property> <property> <name>dfs.namenode.http-address.mycluster.nn2</name> <value>node2:50070</value> </property>

5、配置journalname的uri

<property>
  <name>dfs.namenode.shared.edits.dir</name>
  <value>qjournal://node2:8485;node3:8485;node4:8485/mycluster</value>
</property>

6、配置客户端使用的类
<property>
  <name>dfs.client.failover.proxy.provider.mycluster</name>
  <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>

7、配置sshfence

<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_dsa</value>
</property>

8、配置journalname的工作目录

<property>
  <name>dfs.journalnode.edits.dir</name>
  <value>/opt/journalname/data</value>
</property>

9、开启自动切换
<property>
   <name>dfs.ha.automatic-failover.enabled</name>
   <value>true</value>
 </property>

三、配置core-site.xml配置文件

1、配置namenode入口

<property> <name>fs.defaultFS</name> <value>hdfs://mycluster</value> </property>

2、配置zookeeper集群的位置

<property>
   <name>ha.zookeeper.quorum</name>
   <value>node1:2181,node2:2181,node3:2181</value>
 </property>

3、配置hadoop的工作目录

<property>
   <name>hadoop.tmp.dir</name>
   <value>/opt/hadoop2</value>
 </property>

四、配置slaves
node2
node3
node4

五、进入zookeeper的conf/zoo.cfg 配置zookeeper集群

1、
dataDir=/opt/zookeeper
2、
server.1=node1:2888:3888 server.2=node2:2888:3888 server.3=node3:2888:3888
3、创建mkdir /opt/zookeeper,创建一个文件myid
里面写上机器编号(node1里写1,Node2里写2)每台zookeeper机器都要创建
4、在etc/profile配置zookeeper的环境变量
export PATH=$PATH:/home/zookeeper-3.4.6/bin

六、启动集群

1、启动zookeeper集群,装有zookeeper都要启动,在zookeeper/bin/zkServer.sh start

2、启动JournalNode daemons(仅在所在的机器启动)
hadoop/sbin/
./hadoop-daemon.sh start journalnode

3、格式化namenode(任意一个)
hadoop/bin/
./hdfs namenode -format
然后启动这个节点,复制到另一个节点
 ./hadoop-daemon.sh start namenode
在另一台没有格式化的机器执行
hadoop/bin下
 ./hdfs namenode -bootstrapStandby

4、停止hdfs的所有服务
./stop-dfs.sh

5、初始化zkfc
./hdfs zkfc -formatZK

6、启动hdfs
 ./start-dfs.sh
七、配置mapreduce

1、 mapred-site.xml
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
2、yarn-site.xml
<property>
     <name>yarn.resourcemanager.hostname</name>
     <value>node1</value>
</property>
<property>
     <name>yarn.nodemanager.aux-services</name>
     <value>mapreduce_shuffle</value>
</property>
<property>
     <name>yarn.nodemanager.aux-services.shuffle.class</name>
     <value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>

八、配置hbase

1、修改
hbase-env.sh的Javahome
和export HBASE_MANAGES_ZK=false



2.修改hbase-site.xml
<property>
   
<name>hbase.rootdir</name>
 
<value>hdfs://node1:8020/hbase</value>
 
</property>

<property>

 <name>hbase.cluster.distributed</name>
  
  <value>true</value>

</property>
<property>
    
  <name>hbase.zookeeper.quorum</name>
   
   <value>node1,node2,node3</value>
  
  </property>
 
   <property>
    
  <name>hbase.zookeeper.property.dataDir</name>
  
    <value>/opt/zookeeper</value>
  
  </property>


3、修改regionservers
node1
node2
node3
node4

4、复制hdfss-site.xml到hbase/conf下

5、启动hbase
随意一台机器都可以启动,启动的那台机器为hmaster
./start-hbase.sh
也可以在其他机器增加hmaster
./hbase-daemon.sh start master



其他:
一些/etc/profile变量
export HADOOP_HOME=/home/hadoop-2.7.2
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOOME/sbin:$HADOOP_HOME/lib
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

遇到的问题:
1、安装过程有些步骤需要关闭防火墙
2、虽然我在64位的linux上重新编译了hadoop,并跟踪编译后端hadoop2.7.2进行部署。部署后启动,但出现了警告:
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
该警告通过如下方法消除了:
在hadoop-env.sh中 修改HADOOP_OPTS:
export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native"


博文地址:http://julyme.com/c/hadoop_2_7_2_HA安装笔记
个人博客地址:http://julyme.com








  

© 著作权归作者所有

上一篇: Spark的HA部署
下一篇: Storm的部署
Julyme
粉丝 1
博文 3
码字总数 2513
作品 0
广州
程序员
私信 提问
最新Hadoop-2.7.2+hbase-1.2.0+zookeeper-3.4.8 HA高可用集群

Ip 主机名 程序 进程 192.168.128.11 h1 Jdk Hadoop hbase Namenode DFSZKFailoverController Hamster 192.168.128.12 h2 Jdk Hadoop hbase Namenode DFSZKFailoverController Hamster 192.......

weir2008
2016/02/26
1K
0
hadoop-005-YARN HA 配置

yarn-site.xml 并使用zookeeper 来 管理resourcemanager的状态 <?xml version="1.0"?> <configuration> <property> <name>yarn.resourcemanager.ha.enabled</name> <value>true</value> </pr......

jxlgzwh
2016/11/27
36
0
hadoop 2.7.2 安装

文中安装hadoop环境为Linux centos6.5 64位,一共4个节点,资源分布如下: NameNode(NN): node1,node2 DataNode(DN): node2,node3,node4 ZooKeeper(ZK): node1,node2,node3 ZooKeeperFailover......

驛路梨花醉美
2016/08/15
100
0
hadoop-004-启动HA HDFS hadoop 2.7.2 遇到的datanode启动失败

近日,参考文档 http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html 在搭建Hadoop HA QJM集群的时候,出现一个问题 。 一、观察到的现......

jxlgzwh
2016/11/26
261
0
好程序员大数据笔记之:Hadoop集群搭建

在学习大数据的过程中,我们接触了很多关于Hadoop的理论和操作性的知识点,尤其在近期学习的Hadoop集群的搭建问题上,小细节,小难点拼频频出现,所以,今天集中总结以下笔记,希望对各位同学...

好程序员IT
05/21
17
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 早上儿子问我他是怎么来的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @凉小生 :#今日歌曲推荐# 少点戾气,愿你和这个世界温柔以待。中岛美嘉的单曲《僕が死のうと思ったのは (曾经我也想过一了百了)》 《僕が死の...

小小编辑
今天
788
11
Excption与Error包结构,OOM 你遇到过哪些情况,SOF 你遇到过哪些情况

Throwable 是 Java 中所有错误与异常的超类,Throwable 包含两个子类,Error 与 Exception 。用于指示发生了异常情况。 Java 抛出的 Throwable 可以分成三种类型。 被检查异常(checked Exc...

Garphy
今天
15
0
计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
昨天
6
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
昨天
7
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部