使用docker搭建hadoop环境,并配置伪分布式模式
docker
1、下载docker镜像
docker pull registry.cn-hangzhou.aliyuncs.com/kaibb/hadoop:latest
注:此镜像为阿里云个人上传镜像,比较符合目前我的需求,镜像为搭建好的hadoop环境,见https://dev.aliyun.com/detail.html?spm=5176.1972343.2.14.Q2Swxa&repoId=4030
2、运行docker镜像
docker run -itd --name hadoop -h hadoop -P registry.aliyuncs.com/kaibb/hadoop
3、查看容器运行状态
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
733301fddfa5 registry.aliyuncs.com/kaibb/hadoop "/usr/sbin/sshd -D" 6 seconds ago Up 4 seconds 0.0.0.0:32783->22/tcp, 0.0.0.0:32782->2122/tcp, 0.0.0.0:32781->8030/tcp, 0.0.0.0:32780->8031/tcp, 0.0.0.0:32779->8032/tcp, 0.0.0.0:32778->8033/tcp, 0.0.0.0:32777->8040/tcp, 0.0.0.0:32776->8042/tcp, 0.0.0.0:32775->8088/tcp, 0.0.0.0:32774->19888/tcp, 0.0.0.0:32773->49707/tcp, 0.0.0.0:32772->50010/tcp, 0.0.0.0:32771->50020/tcp, 0.0.0.0:32770->50070/tcp, 0.0.0.0:32769->50075/tcp, 0.0.0.0:32768->50090/tcp hadoop
注:显示的信息比较乱,这里把主要信息解释一下。当前容器映射出几个不同的端口,表格如下:
- 32783->22
- 32782->2122
- 32781->8030
- 32780->8031
- 32779->8032
- 32778->8033
- 32777->8040
- 32776->8042
- 32775->8088
- 32774->19888
- 32773->49707
- 32772->50010
- 32771->50020
- 32770->50070
- 32769->50075
- 32768->50090
如果之后容器外想访问容器的某个端口时,只需要访问容器ip+映射端口即可
4、进入容器
docker exec -it hadoop bash
//格式化namenode hadoop安装在/opt/tools下,因为己经加了执行目录的环境变量,所以在任何目录下运行hadoop命令都可以
hadoop
1、配置hadoop伪分布模式
由于此docker镜像已经进行了相关配置,故可直接跳过配置过程,直接启动服务。可以跳过此部分
Hadoop 可以在单节点上以所谓的伪分布式模式运行,此时每一个 Hadoop 守护进程都作为一个独立的 Java 进程运行。
修改如下配置文件,文件地址位于hadoop的安装目录下,此容器中的位置为:/opt/tools/hadoop/etc/hadoop/
etc/hadoop/core-site.xml:
<configuration>
<!-- 配置hdfs的namenode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
etc/hadoop/hdfs-site.xml:
<configuration>
<!--指定hdfs存储数据的副本数量-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!--指定datanode的存储地-->
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/hadoop/data</value>
</property>
<!--指定namenode的存储地-->
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/hadoop/name</value>
</property>
</configuration>
etc/hadoop/mapred-site.xml
<configuration>
<!--指定mapreduce编程模型运行在yarn上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
etc/hadoop/yarn-site.xml
<configuration>
<!--mapreduce执行shuffle时获取数据的方式-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
2、格式化一个新的分布式文件系统:
bin/hdfs namenode -format
当看到 INFO common.Storage: Storage directory /hadoop/name has been successfully formatted. 的信息就表示格式化成功,一般不成功的情况多为xml配置有误。
3、启动 NameNode 守护进程和 DataNode 守护进程:
./sbin/start-dfs.sh
jps //列出本机所有java进程的pid,显示如下内容则表示成功
root@hadoop:/opt/tools/hadoop# jps
609 Jps
210 NameNode
307 DataNode
494 SecondaryNameNode
4、启动yarn进程
./sbin/start-yarn.sh
jps //此时yarn进程已开
210 NameNode
915 Jps
307 DataNode
667 ResourceManager
494 SecondaryNameNode
766 NodeManager
使用docker搭建hadoop环境,并配置伪分布式模式的更多相关文章
- 【一】、搭建Hadoop环境----本地、伪分布式
## 前期准备 1.搭建Hadoop环境需要Java的开发环境,所以需要先在LInux上安装java 2.将 jdk1.7.tar.gz 和hadoop 通过工具上传到Linux服务器上 3. ...
- cdh版本的hadoop安装及配置(伪分布式模式) MapReduce配置 yarn配置
安装hadoop需要jdk依赖,我这里是用jdk8 jdk版本:jdk1.8.0_151 hadoop版本:hadoop-2.5.0-cdh5.3.6 hadoop下载地址:链接:https://pa ...
- Docker搭建Hadoop环境
文章目录 Docker搭建Hadoop环境 Docker的安装与使用 拉取镜像 克隆配置脚本 创建网桥 执行脚本 Docker命令补充 更换镜像源 安装vim 启动Hadoop 测试Word Coun ...
- 云计算课程实验之安装Hadoop及配置伪分布式模式的Hadoop
一.实验目的 1. 掌握Linux虚拟机的安装方法. 2. 掌握Hadoop的伪分布式安装方法. 二.实验内容 (一)Linux基本操作命令 Linux常用基本命令包括: ls,cd,mkdir,rm ...
- 06_Hadoop配置伪分布式模式详解
查看IP地址,设为手动模式: 配置hadoop用户sudo权限 su切换到root身份,配置vim /etc/sudoers文件,加入 hadoop ALL=(root)NOPASSWD:ALL ...
- hadoop 2.7.3伪分布式环境运行官方wordcount
hadoop 2.7.3伪分布式模式运行wordcount 基本环境: 系统:win7 虚机环境:virtualBox 虚机:centos 7 hadoop版本:2.7.3 本次以伪分布式模式来运行w ...
- Hadoop伪分布式模式部署
Hadoop的安装有三种执行模式: 单机模式(Local (Standalone) Mode):Hadoop的默认模式,0配置.Hadoop执行在一个Java进程中.使用本地文件系统.不使用HDFS, ...
- 初学者值得拥有【Hadoop伪分布式模式安装部署】
目录 1.了解单机模式与伪分布模式有何区别 2.安装好单机模式的Hadoop 3.修改Hadoop配置文件---五个核心配置文件 (1)hadoop-env.sh 1.到hadoop目录中 2.修 ...
- Hadoop Single Node Setup(hadoop本地模式和伪分布式模式安装-官方文档翻译 2.7.3)
Purpose(目标) This document describes how to set up and configure a single-node Hadoop installation so ...
随机推荐
- 客服端与服务端APP支付宝支付接口联调的那些坑
根据支付宝官方提供的文档的建议: TIPS:这一步应在商户服务端完成,商户服务端直接将组装和签名后的请求串orderString传给客户端,客户端直接传给SDK发起请求.文档和Demo是为了示例效果在 ...
- iphone safari浏览器CSS兼容性的解决方案集合
1.iphone safari不兼容CSS的active的解决方案如下: <body ontouchstart="" onmouseover=""> ...
- Visual Studio 2017 插件扩展
“工具善其事,必先利其器!装好这些插件让vs更上一层楼” ReSharper : 首先的是Resharper,这个基本是目前是我开发过程中必备的工具集,唯一的缺点就是吃内存,所以你的内存要是低于8G, ...
- java多线程——线程池源码分析(一)
本文首发于cdream的个人博客,点击获得更好的阅读体验! 欢迎转载,转载请注明出处. 通常应用多线程技术时,我们并不会直接创建一个线程,因为系统启动一个新线程的成本是比较高的,涉及与操作系统的交互, ...
- MySQL常用操作汇编
熟悉 我熟悉xxx,其实很多原来熟悉到能背的,如果长时间不用了几乎也就忘了.此时再说自己熟悉XXX就被认为是在吹牛B了,感觉不是很好.所谓温故而知新,对于天资不聪颖的,就是要在一遍一遍的复习实践中慢慢 ...
- 关于HTML框架(frameset)的一些基本用法
frameset 定义 W3C是这样定义frameset框架的,通过使用框架,你可以在同一个浏览器窗口中显示不止一个页面.每份HTML文档称为一个框架,并且每个框架都独立于其他的框架.注意,这是HTM ...
- [性能调优]如何通过读PeopleSoft Trace文件来调优
理解PeopleSoft Trace文件对于解决性能问题是绝对有必要的.你可能面临一个问题,用户抱怨性能较慢,而OEM并没有补货SQL,你有2种方法选择:使用PeopleSoft trace检查或启用 ...
- Flutter 数据模型创建
build_runner的使用 1.在根目录运行 2.一次性创建.g.dart文件 使用build 此时目录内不能有.g.dart文件 3.watch是监听 有model类的文件创建 自动创建.g.d ...
- View的draw机制
View:1.draw//绘制一个View以及他的子View.最好不要覆写该方法,应该覆写onDraw方法来绘制自己.public void draw(Canvas canvas); public v ...
- 自定义UDF
1.编写udf类 package hive.udf; import org.apache.hadoop.hive.ql.exec.Description; import org.apache.hado ...