使用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 ...
随机推荐
- 在.net中序列化读写xml方法的总结--转载过来学习学习
原文章地址:http://www.cnblogs.com/fish-li/archive/2013/05/05/3061816.html 首先做个大概的总结,XML包括的元素有XmlElement,X ...
- java工具类-接受请求参数,并利用反射调用方法
public String a(HttpServletRequest request,HttpServletResponse response) throws JSONException, IOExc ...
- Asp.Net里关于Session过期跳转页面的一些小技巧
这里算是自己的个人随笔吧,仅供参考使用,后续有更好的方法再做补充 之前在Aspx页面里面,在Session过期的时候我经常会使用 Server.Transfer("b.aspx") ...
- 在IDEA里创建web项目,以及web 项目部署
在IDEA里创建web项目很简单: 1).先创建一个简单的maven项目,这个步骤我就不说了. 2).maven项目创建完后,因为我们需要的是web项目,因此我们要在pom.xml文件里设置packa ...
- Python 进阶必备函数
1. lambda 表达式 匿名函数(英语:anonymous function)是指一类无需定义标识符(函数名)的函数.通俗来说呢,就是它可以让我们的函数,可以不需要函数名. 正常情况下,我们定义一 ...
- bootstrap datetimepicker日期插件美化
效果 https://segmentfault.com/img/bVbieIp?w=1029&h=461 原文链接:https://segmentfault.com/a/11900000167 ...
- 墨卡托投影、地理坐标系、地面分辨率、地图比例尺、Bing Maps Tile System
GIS理论(墨卡托投影.地理坐标系.地面分辨率.地图比例尺.Bing Maps Tile System) 墨卡托投影(Mercator Projection),又名"等角正轴圆柱投影&quo ...
- springcloud 入门 6 (断路器hystrix)
hystrix:断路器 断路器是为了解决服务故障的“雪崩”, 雪崩是指,由于网络原因或者自身的原因,服务并不能保证100%可用,如果单个服务出现问题,调用这个服务就会出现线程阻塞,此时若有大量的请 ...
- LeetCode题解之Max Consecutive Ones
1.题目描述 2.问题分析 遍历一次数组,以每个1 为起点向后数,数到0 时比较当前1的个数和最大1 的个数,然后将遍历的起点放到当前0 的后面. 3.代码 int findMaxConsecutiv ...
- Python tuple
元组其实跟列表差不多,也是存一组数,只不是它一旦创建,便不能再修改,所以又叫只读列表 语法 names = (a,b,c) 它只有2个方法,一个是count,一个是index. 当然也有可变元祖: 可 ...