[关闭]
@zhangyy 2019-12-11T12:00:12.000000Z 字数 4931 阅读 203

Zookeeper 部署HDFS HA 配置

hadoop的部分


  • 一:系统环境配置
  • 二:软件需求
  • 三:安装zookeeper处理
  • 四:编辑hadoop 配置文件
  • 五:启动服务
  • 六:配置zookeeper自动故障转移

一:系统环境配置:

  1. 承接 在上文档hadoop 分布式的文档进行部署

二: 软件需求:

  1. 在前环境 状态下增加zookeeper-3.4.6.tar.gz
  2. 上传zookeeper 包到/home/hadoop/yangyang/目录下面

三: 安装zookeeper 环境

  1. master.hadoop.com 上面
  2. tar zxvf zookeeper-3.4.6.tar.gz
  3. rm rf zookeeper-3.5.6.tar.gz
  4. mv zookeeper-3.4.6 zookeeper
  5. cd zookeeper/conf
  6. cp -p zoo_sample.cfg zoo.cfg
  7. vim zoo.cfg

1.png-22.9kB

  1. #mkdir zookeeper/data
  2. #echo “1” > zookeeper/data/myid
  3. 同步其它节点处理:
  4. scp r zoo* hadoop@192.168.3.2:/home/hadoop/yangyang/
  5. scp r zoo* hadoop@192.168.3.3:/home/hadoop/yangyang/
  6. slave1.hadoop.com
  7. echo 2 > zookeeper/data/myid
  8. slave2.hadoop.com
  9. echo 3 > zookeeper/data/myid

3.1 zookeeper 相关命令

  1. 3.1.1. 显示根目录下、文件: ls / 使用 ls 命令来查看当前 ZooKeeper 中所包含的内容
  2. 3.1.2. 显示根目录下、文件: ls2 / 查看当前节点数据并能看到更新次数等数据
  3. 3.1.3 创建文件,并设置初始内容: create /zk "test" 创建一个新的 znode节点“ zk ”以及与它关联的字符串
  4. 3.1.4 获取文件内容: get /zk 确认 znode 是否包含我们所创建的字符串
  5. 3.1.5 修改文件内容: set /zk "zkbak" zk 所关联的字符串进行设置
  6. 3.1.6 删除文件: delete /zk 将刚才创建的 znode 删除
  7. 3.1.7 退出客户端: quit
  8. 3.1.8 帮助命令: help

  1. master.hadoop.com
  2. cd /home/hadoop/yangyang/zookeeper/bin
  3. ./zkServer.sh status

2.png-23.6kB

  1. slave1.hadoop.com
  2. cd /home/hadoop/yangyang/zookeeper/bin
  3. ./zkServer.sh status

3.png-30.4kB

slave2.hadoop.com
4.png-29.9kB
Zookeeper 的进入命令窗口:
./zkCli.sh
5.png-10.9kB
ls /
6.png-4.6kB
create /zk “yangyang”
7.png-53.5kB
8.png-9.6kB
9.png-11.1kB

10.png-4.9kB

四: 编辑改变hadoop 的配置文件

编辑core-site.xml 文件:
vim core-site.xml

  1. <property>
  2. <name>fs.defaultFS</name>
  3. <value>hdfs://mycluster</value>
  4. </property>
  5. <property>
  6. <name>hadoop.tmp.dir</name>
  7. <value>/home/hadoop/yangyang/hadoop/data</value>
  8. </property>

编辑hdfs-site.xml 文件:

  1. <configuration>
  2. <property>
  3. <name>dfs.replication</name>
  4. <value>3</value>
  5. </property>
  6. <property>
  7. <name>dfs.nameservices</name>
  8. <value>mycluster</value>
  9. </property>
  10. <property>
  11. <name>dfs.ha.namenodes.mycluster</name>
  12. <value>nn1,nn2</value>
  13. </property>
  14. #######################nn1###############################
  15. <property>
  16. <name>dfs.namenode.rpc-address.mycluster.nn1</name>
  17. <value>master.hadoop.com:8020</value>
  18. </property>
  19. <property>
  20. <name>dfs.namenode.http-address.mycluster.nn1</name>
  21. <value>master.hadoop.com:50070</value>
  22. </property>
  23. #######################nn2###############################
  24. <property>
  25. <name>dfs.namenode.rpc-address.mycluster.nn2</name>
  26. <value>slave1.hadoop.com:8020</value>
  27. </property>
  28. <property>
  29. <name>dfs.namenode.http-address.mycluster.nn2</name>
  30. <value>slave1.hadoop.com:50070</value>
  31. </property>
  32. #######################journal node#######################
  33. <property>
  34. <name>dfs.namenode.shared.edits.dir</name>
  35. <value>qjournal://master.hadoop.com:8485;slave1.hadoop.com:8485;slave2.hadoop.com:8485/mycluster</value>
  36. </property>
  37. <property>
  38. <name>dfs.journalnode.edits.dir</name>
  39. <value>/home/hadoop/yangyang/hadoop/data/jn</value>
  40. </property>
  41. ##########################proxy###########################
  42. <property>
  43. <name>dfs.client.failover.proxy.provider.mycluster</name>
  44. <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
  45. </property>
  46. ##########################fence###########################
  47. <property>
  48. <name>dfs.ha.fencing.methods</name>
  49. <value>sshfence</value>
  50. </property>
  51. <property>
  52. <name>dfs.ha.fencing.ssh.private-key-files</name>
  53. <value>/home/hadoop/.ssh/id_rsa</value>
  54. </property>
  55. </configuration>

  1. 同步所有hadoop 的配置文件:
  2. tar zcvf hadoop.tar.gz hadoop
  3. scp hadoop.tar.gz hadoop@192.168.3.2:/home/hadoop/yangyang/
  4. scp hadoop.tar.gz hadoop@192.168.3.3:/home/hadoop/yangyang/

五:启动服务

  1. 启动所有节点journalnode 节点:
  2. master.hadoop.com
  3. cd /home/hadoop/yangyang/hadoop/
  4. sbin/hadoop-daemon.sh start journalnode

11.png-16.2kB

  1. 启动master.hadoop.comnamenode datanode
  2. sbin/hadoop-daemon.sh start namenode
  3. sbin/hadoop-daemon.sh start datanode

12.png-5.5kB
打开浏览器访问:
13.png-43.5kB
slave1.hadoop.com 进行节点同步master.hadoop.com
bin/hdfs namenode –bootstrapStandby
14.png-89.8kB
启动slave1.hadoop.com 节点的namenode 与datanode
sbin/hadoop-daemon.sh start namenode
15.png-11.5kB
sbin/hadoop-daemon.sh start datanode
16.png-14.6kB
17.png-5.3kB
打开浏览器处理
18.png-32.9kB
手动切换master.hadoop.com 为active 状态:
bin/hdfs haadmin -transitionToActive nn1
19.png-33.5kB
创建目录与上传测试:
20.png-3.2kB
21.png-7.4kB
浏览器查看master.hadoop.com 的hdfs active 节点
22.png-9.3kB
浏览器查看slave1.hadoop.com 的hdfs standby 节点:
23.png-13.6kB
手动切换 将master.haoop.com 切换为standby 将slave1.hadoop.com 切换为active
master.hadoop.com:
bin/hdfs haadmin -transitionToStandby nn1
24.png-3.6kB
将slave1.hadoop.com 变为active 节点:
bin/hdfs haadmin -transitionToActive nn2
25.png-11.6kB
浏览器查看:
master.hadoop.com
26.png-37.3kB
27.png-10.5kB
slave1.hadoop.com浏览器查看:
28.png-38.5kB
29.png-12.6kB

六:配置zookeeper自动故障转移

  1. master.hadoop .com
  2. 编辑core-site.xml
  3. configuration 中增加
  4. <property>
  5. <name>ha.zookeeper.quorum</name>
  6. <value>master.hadoop.com:2181,slave1.hadoop.com:2181,slave2.hadoop.com:2181</value>
  7. </property>
  8. 编辑hdfs-site.xml 文件
  9. configuration 增加:
  10. <property>
  11. <name>dfs.ha.automatic-failover.enabled</name>
  12. <value>true</value>
  13. </property>
  1. cd /home/hadoop/yangyang/hadoop/etc/hadoop/
  2. scp core-site.xml hadoop@192.168.3.2:/home/hadoop/yangyang/
  3. hadoop/etc/hadoop/
  4. scp hdfs-site.xml hadoop@192.168.3.3:/home/hadoop/yangyang/
  5. hadoop/etc/hadoop/
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注