频道栏目
首页 > 网络 > 云计算 > 正文

Hadoop2.6..0HA高可靠性集群搭建(Hadoop+Zookeeper)

2017-01-13 10:28:00         来源:liuweilong09的博客  
收藏   我要投稿

1.关闭防火墙

vi/etc/selinux/config

在 SELINUX=enforcing 前面加个#号注释掉它

#SELINUX=enforcing

然后新加一行SELINUX=disabled

保存,退出,重启系统,就可以彻底关闭firewall了。

2.修改IP

vi/etc/sysconfig/network-scripts/ifcfg-eth0

#编辑配置文件,添加修改以下内容

BOOTPROTO=static #启用静态IP地址

ONBOOT=yes#开启自动启用网络连接

IPADDR=192.168.1.100 #设置IP地址

NETMASK=255.255.255.0 #设置子网掩码

GATEWAY=192.168.1.1 #设置网关

==重启网络连接

service network restart

3.设置机器hostname别名

# 当前ssh窗口即可生效

hostname master

# 每次重启以后均生效

vi /etc/sysconfig/network

HOSTNAME=master

4.Hosts映射关系

三台机器上面分别都执行操作 vi /etc/hosts 添加如下内容

192.168.1.100 master

192.168.1.101 slave01

192.168.1.102 slave02

5.SSH免密登录设置

生成公钥和私钥

ssh-keygen -t rsa

导入公钥到认证文件

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

scp ~/.ssh/id_rsa.pub xxx@host:/home/xxx/id_rsa.pub

cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

更改权限

chmod 700 ~/.ssh

chmod 600 ~/.ssh/authorized_keys

6.安装jdk

1、解压rpm -ivh jdk-8u111-linux-x64.rpm

7.安装Hadoop

这是下载后的hadoop-2.6.0.tar.gz压缩包,

7.1、解压tar -xzvfhadoop-2.6.0.tar.gz

7.2、配置hadoop

主要涉及的配置文件有7个

hadoop-env.sh

yarn-env.sh

slaves

core-site.xml

hdfs-site.xml

mapred-site.xml

yarn-site.xml

7.3、配置hadoop-env.sh文件-->修改JAVA_HOME

export JAVA_HOME=/usr/java/jdk1.8.0_111

7.4、配置yarn-env.sh 文件-->>修改JAVA_HOME

export JAVA_HOME=/usr/java/jdk1.8.0_111

7.5、配置slaves文件-->>增加slave节点

master

salve1

salve2

7.6、配置core-site.xml文件-->>增加hadoop核心配置

fs.defaultFS

hdfs://ns

hadoop.tmp.dir

file:/tmp

ha.zookeeper.quorum

master:2181,salve1:2181,salve2:2181

7.7、配置hdfs-site.xml文件-->>增加hdfs配置信息(namenode、datanode端口和目录位置)

dfs.nameservices

ns

dfs.ha.namenodes.ns

nn1,nn2

dfs.namenode.rpc-address.ns.nn1

master:9000

dfs.namenode.http-address.ns.nn1

master:50070

dfs.namenode.rpc-address.ns.nn2

salve1:9000

dfs.namenode.http-address.ns.nn2

salve1:50070

dfs.namenode.shared.edits.dir

qjournal://master:8485;salve1:8485/ns

dfs.journalnode.edits.dir

/opt/hadoop/journal

dfs.ha.automatic-failover.enabled

true

dfs.client.failover.proxy.provider.ns

org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider

dfs.ha.fencing.methods

sshfence

dfs.ha.fencing.ssh.private-key-files

/home/centos/.ssh/id_rsa

dfs.namenode.name.dir

file:/opt/hadoop/dfs/name

dfs.datanode.data.dir

file:/opt/hadoop/dfs/data

dfs.replication

2

dfs.webhdfs.enabled

true

7.8、配置 mapred-site.xml文件-->>增加mapreduce配置

mapreduce.framework.name

yarn

7.9、配置 yarn-site.xml文件-->>增加yarn功能

yarn.resourcemanager.hostname

master

yarn.nodemanager.aux-services

mapreduce_shuffle

7.10、将配置好的hadoop文件copy到另一台slave机器上

scp -r hadoop-2.6.0/ root@salve1-hadoop:~/opt/

scp -r hadoop-2.6.0/ root@salve2-hadoop:~/opt/

8.Zookeeper安装过程:

8.1、下载解压zookeeper

下载地址:http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.6/

解压到指定目录:这里目录:/opt

在hadoop目录中创建app目录。把文件解压到hadoop的app目录中,是为了以后整个项目可以整体移植。包括后面,我们会安装HBase、Hive等软件,都是解压到app的目录中。

8.2、修改配置文件

8.2.1进入zookeeper中conf目录:

拷贝命名zoo_sample.cfg 为zoo.cfg。我们一般不修改配置文件默认的示例文件,修改赋值其子文件。

编辑zoo.cfg

拷贝命名zoo_sample.cfg为zoo.cfg。我们一般不修改配置文件默认的示例文件,修改赋值其子文件。

编辑zoo.cfg

tickTime=2000initLimit=10syncLimit=5dataDir=/home/tom/yarn/hadoop-2.5.0/app/zookeeper-3.4.6/zkdatadataLogDir=/home/tom/yarn/hadoop-2.5.0/app/zookeeper-3.4.6/zkdatalogclientPort=2181server.1=hadoop1:2888:3888server.2=hadoop2:2888:3888server.3=hadoop3:2888:3888server.4=hadoop4:2888:3888server.5=hadoop5:2888:3888

8.2.2创建zkdata和zkdatalog两个文件夹

8.2.3添加到环境变量

9集群的启动

9.1 启动zookeeper集群

分别在master、salve1、salve2上执行如下命令启动zookeeper集群;

shzkServer.shstart

验证集群zookeeper集群是否启动,分别在master、salve1、salve2上执行如下命令验证 zookeeper集群是否启动,集群启动成功,有两个follower节点跟一个leader节点;

shzkServer.shstatus

JMXenabledbydefault

Usingconfig:/home/hadoop/zookeeper/zookeeper-3.3.6/bin/../conf/zoo.cfg

Mode:follower

9.2 启动journalnode集群

在master上执行如下命令完成JournalNode集群的启动

sbin/hadoop-daemons.shstartjournalnode

执行jps命令,可以查看到JournalNode的java进程pid

9.3 格式化zkfc,让在zookeeper中生成ha节点

在mast1上执行如下命令,完成格式化

hdfszkfc–formatZK

(注意,这条命令最好手动输入,直接copy执行有可能会有问题,当时部署时我是蛋疼了许久)

格式成功后,查看zookeeper中可以看到

[zk:localhost:2181(CONNECTED)1]ls/hadoop-ha

[ns]

9.4 格式化hdfs

hadoopnamenode–format

(注意,这条命令最好手动输入,直接copy执行有可能会有问题)

9.5 启动NameNode

首先在master上启动active节点,在master上执行如下命令

sbin/hadoop-daemon.shstartnamenode

在salve1上同步namenode的数据,同时启动standby的namenod,命令如下

#把NameNode的数据同步到mast2上

hdfsnamenode–bootstrapStandby

#启动mast2上的namenode作为standby

sbin/hadoop-daemon.shstartnamenode

9.6 启动启动datanode

在master上执行如下命令

sbin/hadoop-daemons.shstartdatanode

9.7 启动year

在作为资源管理器上的机器上启动,我这里是mast3,执行如下命令完成year的启动

sbin/start-yarn.sh

9.8 启动ZKFC

在master上执行如下命令,完成ZKFC的启动

sbin/hadoop-daemons.shstartzkfc

全部启动完后分别在master,salve1,salve2上执行jps是可以看到下面这些进程的

10.测试HA的高可用性

启动后master的namenode和salve1的namenode如下所示:


相关TAG标签 Hadoop Zookeeper
上一篇:Openstack学习之安装(一)----网络服务
下一篇:Zabbix分布式集群监控
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站