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

来源:互联网 发布:黑马程序员 招聘信息 编辑:程序博客网 时间:2024/05/22 04:50
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 -xzvf hadoop-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核心配置
 <property>
<name>fs.defaultFS</name>
<value>hdfs://ns</value>
 </property>

 <property>
<name>hadoop.tmp.dir</name>
<value>file:/tmp</value>
 </property>

 <property>    
<name>ha.zookeeper.quorum</name>    
<value>master:2181,salve1:2181,salve2:2181</value>   
 </property>

7.7、配置  hdfs-site.xml 文件-->>增加hdfs配置信息(namenode、datanode端口和目录位置)
<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>master:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.ns.nn1</name>
<value>master:50070</value>
</property>
<property>
<name>dfs.namenode.rpc-address.ns.nn2</name>
<value>salve1:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.ns.nn2</name>
<value>salve1:50070</value>
</property>

<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://master:8485;salve1:8485/ns</value>
</property>

<property>
<name>dfs.journalnode.edits.dir</name>
<value>/opt/hadoop/journal</value>
</property>

<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</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>/home/centos/.ssh/id_rsa</value>
</property>

    <property>   
        <name>dfs.namenode.name.dir</name>   
        <value>file:/opt/hadoop/dfs/name</value>  
    </property> 

<property>   
<name>dfs.datanode.data.dir</name>   
<value>file:/opt/hadoop/dfs/data</value>  
</property> 
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
7.8、配置  mapred-site.xml 文件-->>增加mapreduce配置
<property>
   <name>mapreduce.framework.name</name>
   <value>yarn</value>
 </property>
7.9、配置   yarn-site.xml  文件-->>增加yarn功能
<configuration>
<property>    
 <name>yarn.resourcemanager.hostname</name>    
 <value>master</value>    
</property>
<!--【自定义ResourceManager的地址,还是单点】-->
  <property>
   <name>yarn.nodemanager.aux-services</name>
   <value>mapreduce_shuffle</value>
  </property>
</configuration>
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=2000       initLimit=10       syncLimit=5       dataDir=/home/tom/yarn/hadoop-2.5.0/app/zookeeper-3.4.6/zkdata       dataLogDir=/home/tom/yarn/hadoop-2.5.0/app/zookeeper-3.4.6/zkdatalog       clientPort=2181       server.1=hadoop1:2888:3888       server.2=hadoop2:2888:3888        server.3=hadoop3:2888:3888       server.4=hadoop4:2888:3888       server.5=hadoop5:2888:3888

8.2.2创建zkdata和zkdatalog两个文件夹
8.2.3添加到环境变量

9集群的启动

9.1 启动zookeeper集群
分别在master、salve1、salve2上执行如下命令启动zookeeper集群; 
sh zkServer.sh start  
  验证集群zookeeper集群是否启动,分别在master、salve1、salve2上执行如下命令验证 zookeeper集群是否启动,集群启动成功,有两个follower节点跟一个leader节点; 
  sh zkServer.sh status  
JMX enabled by default  
Using config: /home/hadoop/zookeeper/zookeeper-3.3.6/bin/../conf/zoo.cfg  
Mode: follower  
 9.2 启动journalnode集群
在master上执行如下命令完成JournalNode集群的启动 
sbin/hadoop-daemons.sh start journalnode  
 执行jps命令,可以查看到JournalNode的java进程pid
9.3 格式化zkfc,让在zookeeper中生成ha节点
在mast1上执行如下命令,完成格式化
hdfs zkfc –formatZK  
  (注意,这条命令最好手动输入,直接copy执行有可能会有问题,当时部署时我是蛋疼了许久)
  格式成功后,查看zookeeper中可以看到
[zk: localhost:2181(CONNECTED) 1] ls /hadoop-ha  
[ns]  
 
9.4 格式化hdfs
hadoop namenode –format  
  (注意,这条命令最好手动输入,直接copy执行有可能会有问题)
9.5 启动NameNode
首先在master上启动active节点,在master上执行如下命令
sbin/hadoop-daemon.sh start namenode  
 在salve1上同步namenode的数据,同时启动standby的namenod,命令如下
#把NameNode的数据同步到mast2上  
hdfs namenode –bootstrapStandby  
#启动mast2上的namenode作为standby  
sbin/hadoop-daemon.sh start namenode  
 
9.6 启动启动datanode
在master上执行如下命令
sbin/hadoop-daemons.sh start datanode   
9.7 启动year  
在作为资源管理器上的机器上启动,我这里是mast3,执行如下命令完成year的启动
sbin/start-yarn.sh
 
9.8 启动ZKFC
在master上执行如下命令,完成ZKFC的启动
sbin/hadoop-daemons.sh start zkfc  
全部启动完后分别在master,salve1,salve2上执行jps是可以看到下面这些进程的 
10.测试HA的高可用性
启动后master的namenode和salve1的namenode如下所示:


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 混沌与秩序2脸书怎么办 ios炉石传说卡门怎么办 狗狗对主人低吼怎么办 吹雪之松锦徒长怎么办 武装突袭被禁了怎么办 眼球小血管破了怎么办 眼睛白眼球破了怎么办 打拳击手腕伤了怎么办 上眼皮进东西了怎么办 眼睛进了异物怎么办妙招 眼睛毛血管破了怎么办 怪物猎人x钱不够怎么办 小米2开不了机怎么办 3ds更新系统不动怎么办 u盘中病毒了怎么办 aj5白银前面皱了怎么办 狗吃了巧克力该怎么办 孩子零食吃多了怎么办 上学时月经侧漏怎么办 漏电被电的脚肿怎么办 走路有尿溢出来怎么办 篮球气嘴漏气了怎么办 暗线插座盒坏了怎么办 焊过电焊眼睛疼怎么办 烧电焊后眼睛痛怎么办? 焊完电焊眼睛疼怎么办 烧电焊后眼睛痛怎么办 用电焊后眼睛痛怎么办 看电焊后眼睛痛怎么办 眼睛焊电焊很痛怎么办 电焊没带眼睛痛怎么办 有东西进眼睛了怎么办 眼睛有东西磨眼怎么办 怀孕了眼睛肿疼怎么办 眼睛疼又红血丝怎么办 用眼过度眼睛疼怎么办 眼睛玩手机视力下降怎么办 看手机眼睛疼该怎么办 眼睛眨一下就痛怎么办 着火了怎么办教案详案 汽车尾灯磕破了怎么办