基于Docker搭建大数据集群(三)Hadoop部署

主要内容

  • Hadoop安装

前提

  • zookeeper正常使用
  • JAVA_HOME环境变量

安装包

微云下载 | tar包目录下

  • Hadoop 2.7.7

角色划分

角色分配 NN DN SNN
cluster-master
cluster-slave1
cluster-slave1
cluster-slave1

一、环境准备

上传到docker镜像

docker cp hadoop-2.7.7.tar.gz cluster-master:/root/tar

解压

tar xivf hadoop-2.7.7.tar.gz -C /opt/hadoop

二、配置文件

core-site.xml


        
                fs.defaultFS
                hdfs://jinbill
        
        
                ha.zookeeper.quorum
                cluster-master:2181
        
        
                hadoop.tmp.dir
                /opt/hadoop
        

yarn-site.xml


        
                 yarn.nodemanager.aux-services
                 mapreduce_shuffle
        
        
                 yarn.resourcemanager.ha.enabled
                 true
        
        
                 yarn.resourcemanager.cluster-id
                 mr_jinbill
        
        
                 yarn.resourcemanager.ha.rm-ids
                 rm1,rm2
        
        
                 yarn.resourcemanager.hostname.rm1
                 cluster-slave2
        
        
                 yarn.resourcemanager.hostname.rm2
                 cluster-slave3
        
        
                 yarn.resourcemanager.zk-address
                 192.168.11.46:12181
        
        
                yarn.nodemanager.pmem-check-enabled
                false
        

        
                yarn.nodemanager.vmem-check-enabled
                false
        

hadoop-env.sh

export JAVA_HOME=/opt/jdk/jdk1.8.0_221

hdfs-site.xml


        
                dfs.nameservices
                jinbill
        
        
                dfs.ha.namenodes.jinbill
                nn1,nn2
        
        
                dfs.namenode.rpc-address.jinbill.nn1
                cluster-master:8020
        
        
                dfs.namenode.rpc-address.jinbill.nn2
                cluster-slave1:8020
        
        
                dfs.namenode.http-address.shsxt.nn1
                cluster-master:50070
        
        
                dfs.namenode.http-address.shsxt.nn2
                cluster-slave1:50070
        
        
                dfs.namenode.shared.edits.dir
                qjournal://cluster-slave1:8485;cluster-slave2:8485;cluster-slave3:8485/jinbill
        
        
                dfs.client.failover.proxy.provider.jinbill
                org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider
        
        
        
                dfs.ha.fencing.methods
                sshfence
        
        
                dfs.ha.fencing.ssh.private-key-files
                /root/.ssh/id_rsa
        
        
                dfs.journalnode.edits.dir
                /opt/hadoop/data
        
                  
                dfs.ha.automatic-failover.enabled
                true
        

新建slaves文件,若有则直接编辑

cluster-slave1
cluster-slave2
cluster-slave3

三、初始化

启动所有节点JournalNode

hadoop-daemon.sh start journalnode

在NN上初始化元数据

hdfs namenode -forma

将格式化后的元数据拷贝到SNN上

scp /opt/zookeeper/dfs cluster-slave1:/opt/hadoop

启动master节点的NN

hadoop-daemon.sh start namenode

在SNN上执行

hdfs namenode -bootstrapStandby

启动SNN

hadoop-daemon.sh start namenode

在NN或SNN上初始化ZKFC

hdfs zkfc -formatZK

停止上面节点

stop-dfs.sh

四、 启动

start-dfs.shstart-yarn.sh

五、测试是否成功

因为网段不同,所以得加路由才能访问

  1. 打开cmd,需要管理员权限
  2. route add 172.15.0.0 mask 255.255.0.0 192.168.11.38 -p

访问UI界面

Hadoop 集群 访问地址Hadoop 作业 地址基于Docker搭建大数据集群(三)Hadoop部署_第1张图片

你可能感兴趣的:(Docker搭建大数据平台)