Hadoop高可用集群搭建
搭建高可用集群,需要涉及到 8 个配置文件
1.zookepper 节点的 zkdata文件目录下的 myid
2.zookepper 节点的zkdata文件目录下的zoo.cfg
3.hadoop安装目录下的etc/hadoop/ 目录下的 hadoop-env.sh
4.hadoop安装目录下的etc/hadoop/ 目录下的 core-site.xml
5.hadoop安装目录下的etc/hadoop/ 目录下的 hdfs-site.xml
6.hadoop安装目录下的etc/hadoop/ 目录下的 slaves
7.hadoop安装目录下的etc/hadoop/ 目录下的 yarn-site.xml
8.hadoop安装目录下的etc/hadoop/ 目录下的 mapred-site.xml
`集群策略:
zk 1 、2 、3为 zookapper
hadoop4、5为 namenode
hadoop6、7为``resourcemanager
hadoop 8、9 、10为 namdnode 、journalnode 以及 nodemanager
集群搭建思路与配置文件详细内容
1.搭建zookepper集群
目的:为了保证集群环境下故障的自动转移(至少3台、奇数)
①myid
1
在系统上创建一个 zkdata 的文件目录,向其中touch 一个名为myid 的文件
为了保证每台zk都有自己的唯一标识。
②zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/root/zkdata
clientPort=3001
server.1=主机名:3002:3003
server.2=主机名:4002:4003
server.3=主机名:5002:5003
在zkdata文件目录下创建zoo,cfg文件,内容如上所示。
dataDir 为文件目录
clientPort 3001 为zk服务器的端口(客户端处理端口)
3002:内部作数据的原子广播端口
3003:内部作选举容错的端口
原子广播:即任一fellow服务器将客户端的写的请求,在所有服务器间同步。
至此,zookepper集群准备工作已完成的。
zk集群的命令:
在 zk安装目录下的bin目录中执行
./zkServer.sh start /root/zkdata/zoo.cfg (启动)
./zkServer.sh status /root/zkdata1/zoo.cfg (查看状态)
2.搭建hdfs集群
前置工作:
修改静态ip地址: vim /etc/sysconfig/network-script/ifcfg-ens37
主机名: vim /etc/hostname
ip映射: vim /etc/hosts
配置ssh免密登录: ssh-keygen -t rsa
(生成秘钥 ) 、 ssh-copy-id 主机名
(分发秘钥)
③hadoop-env.sh
修改其中的jdk的环境变量,目的:远程访问时,环境变量是失效的,保证远程访问时能够正常运行。
export JAVA_HOME=/自己的安装目录
④core-site.xml
hadoop核心的配置文件
<!-- 高可用集群的配置 -->
<!-- 文件系统的入口 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://ns</value>
</property>
<!-- 文件系统的目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/root/hadoop-2.9.2/data</value>
</property>
<!-- ZK系统的IP及Port -->
<property>
<name>ha.zookeeper.quorum</name>
<value>zk1:3001,zk2:4001