基于Docker搭建大数据集群(三)Hadoop部署
主要内容
- Hadoop安装
前提
- zookeeper正常使用
- JAVA_HOME环境变量
安装包
- 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
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://jinbill</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>cluster-master:2181</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>mr_jinbill</value>
</property>
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>cluster-slave2</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>cluster-slave3</value>
</property>
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>192.168.11.46:12181</value>
</property>
<property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
</configuration>
hadoop-env.sh
export JAVA_HOME=/opt/jdk/jdk1.8.0_221
hdfs-site.xml
<configuration>
<property>
<name>dfs.nameservices</name>
<value>jinbill</value>
</property>
<property>
<name>dfs.ha.namenodes.jinbill</name>
<value>nn1,nn2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.jinbill.nn1</name>
<value>cluster-master:8020</value>
</property>
<property>
<name>dfs.namenode.rpc-address.jinbill.nn2</name>
<value>cluster-slave1:8020</value>
</property>
<property>
<name>dfs.namenode.http-address.shsxt.nn1</name>
<value>cluster-master:50070</value>
</property>
<property>
<name>dfs.namenode.http-address.shsxt.nn2</name>
<value>cluster-slave1:50070</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://cluster-slave1:8485;cluster-slave2:8485;cluster-slave3:8485/jinbill</value>
</property>
<property>
<name>dfs.client.failover.proxy.provider.jinbill</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>/root/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/opt/hadoop/data</value>
</property>
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
</configuration>
新建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.sh
start-yarn.sh
五、测试是否成功
因为网段不同,所以得加路由才能访问
- 打开cmd,需要管理员权限
- route add 172.15.0.0 mask 255.255.0.0 192.168.11.38 -p
访问UI界面
基于Docker搭建大数据集群(三)Hadoop部署的更多相关文章
- 基于Docker搭建大数据集群(六)Hive搭建
基于Docker搭建大数据集群(六)Hive搭建 前言 之前搭建的都是1.x版本,这次搭建的是hive3.1.2版本的..还是有一点细节不一样的 Hive现在解析引擎可以选择spark,我是用spar ...
- 基于Docker搭建大数据集群(七)Hbase部署
基于Docker搭建大数据集群(七)Hbase搭建 一.安装包准备 Hbase官网下载 微云下载 | 在 tar 目录下 二.版本兼容 三.角色分配 节点 Master Regionserver cl ...
- 基于Docker搭建大数据集群(一)Docker环境部署
本篇文章是基于Docker搭建大数据集群系列的开篇之作 主要内容 docker搭建 docker部署CentOS 容器免密钥通信 容器保存成镜像 docker镜像发布 环境 Linux 7.6 一.D ...
- 基于Docker搭建大数据集群(五)Mlsql部署
主要内容 mlsql部署 前提 zookeeper正常使用 spark正常使用 hadoop正常使用 安装包 微云下载 | tar包目录下 mlsql-cluster-2.4_2.11-1.4.0.t ...
- 基于Docker搭建大数据集群(二)基础组件配置
主要内容 jdk环境搭建 scala环境搭建 zookeeper部署 mysql部署 前提 docker容器之间能免密钥登录 yum源更换为阿里源 安装包 微云分享 | tar包目录下 JDK 1.8 ...
- 基于Docker搭建大数据集群(四)Spark部署
主要内容 spark部署 前提 zookeeper正常使用 JAVA_HOME环境变量 HADOOP_HOME环境变量 安装包 微云下载 | tar包目录下 Spark2.4.4 一.环境准备 上传到 ...
- Docker搭建大数据集群 Hadoop Spark HBase Hive Zookeeper Scala
Docker搭建大数据集群 给出一个完全分布式hadoop+spark集群搭建完整文档,从环境准备(包括机器名,ip映射步骤,ssh免密,Java等)开始,包括zookeeper,hadoop,hiv ...
- 关于在真实物理机器上用cloudermanger或ambari搭建大数据集群注意事项总结、经验和感悟心得(图文详解)
写在前面的话 (1) 最近一段时间,因担任我团队实验室的大数据环境集群真实物理机器工作,至此,本人秉持负责.认真和细心的态度,先分别在虚拟机上模拟搭建ambari(基于CentOS6.5版本)和clo ...
- 庐山真面目之十二微服务架构基于Docker搭建Consul集群、Ocelot网关集群和IdentityServer版本实现
庐山真面目之十二微服务架构基于Docker搭建Consul集群.Ocelot网关集群和IdentityServer版本实现 一.简介 在第七篇文章<庐山真面目之七微服务架构Consul ...
随机推荐
- The used SELECT statements have a different number of columns???
今天我们组就我一个人留守在这里修复bug了,有点小悲伤啊,他们都问我能不能hold得住啊,我当然能hold得住啊: 在看一个入库的存储过程中,在数据库运行的时候是没问题的,项目已启动,进行入库操作就是 ...
- 点击任意位置关闭(CocosCreator)
推荐阅读: 我的CSDN 我的博客园 QQ群:704621321 我的个人博客 今天,接触到一个新功能,当弹出某个弹框时,需要点击除弹框的剩余任意位置,来关闭该弹框,例如:当红框内 ...
- volatile底层实现原理
前言 当共享变量被声明为volatile后,对这个变量的读/写操作都会很特别,下面我们就揭开volatile的神秘面纱. 1.volatile的内存语义 1.1 volatile的特性 一个volat ...
- Python连载35-死锁问题以及解决方式
一.死锁问题 例子 import threading import time lock_1 = threading.Lock() lock_2 = threading.Lock() def f ...
- 2019nc#5
题号 标题 已通过代码 题解/讨论 通过率 团队的状态 A digits 2 点击查看 1017/2384 通过 B generator 1 点击查看 567/3692 通过 C generato ...
- P2467 [SDOI2010]地精部落 DP
传送门:https://www.luogu.org/problemnew/show/P2467 参考与学习:https://www.luogu.org/blog/user55639/solution- ...
- codeforces 822 C. Hacker, pack your bags!(思维+dp)
题目链接:http://codeforces.com/contest/822/submission/28248100 题解:多维的可以先降一下维度sort一下可以而且这种区间类型的可以拆一下区间只要加 ...
- B. Tea Queue codeforces Round.37.div2 队列
B. Tea Queue time limit per test 1 second memory limit per test 256 megabytes input standard input o ...
- Hexo博客Next v7.X 主题升级,美化警示录
本文转载于:Hexo博客Next v7.X 主题升级,美化警示录丨奥怪的小栈 前言 经历了好几天(懒癌晚期懒得数了)的与主题升级斗争后,我终于完成基本上完成了next主题的升级!升到了V7.3!哈哈哈 ...
- yzoj P2044 数字游戏 题解
题意 dfs骗了30分,一开始想的距离正解差一点啊,贪心加dp就可以过的水题,真正太蒻了 解析 代码 #include<bits/stdc++.h> using namespace std ...