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环境,并配置伪分布式模式的更多相关文章

  1. 【一】、搭建Hadoop环境----本地、伪分布式

    ##  前期准备 1.搭建Hadoop环境需要Java的开发环境,所以需要先在LInux上安装java 2.将    jdk1.7.tar.gz 和hadoop 通过工具上传到Linux服务器上 3. ...

  2. cdh版本的hadoop安装及配置(伪分布式模式) MapReduce配置 yarn配置

    安装hadoop需要jdk依赖,我这里是用jdk8 jdk版本:jdk1.8.0_151 hadoop版本:hadoop-2.5.0-cdh5.3.6 hadoop下载地址:链接:https://pa ...

  3. Docker搭建Hadoop环境

    文章目录 Docker搭建Hadoop环境 Docker的安装与使用 拉取镜像 克隆配置脚本 创建网桥 执行脚本 Docker命令补充 更换镜像源 安装vim 启动Hadoop 测试Word Coun ...

  4. 云计算课程实验之安装Hadoop及配置伪分布式模式的Hadoop

    一.实验目的 1. 掌握Linux虚拟机的安装方法. 2. 掌握Hadoop的伪分布式安装方法. 二.实验内容 (一)Linux基本操作命令 Linux常用基本命令包括: ls,cd,mkdir,rm ...

  5. 06_Hadoop配置伪分布式模式详解

    查看IP地址,设为手动模式: 配置hadoop用户sudo权限 su切换到root身份,配置vim /etc/sudoers文件,加入 hadoop ALL=(root)NOPASSWD:ALL    ...

  6. hadoop 2.7.3伪分布式环境运行官方wordcount

    hadoop 2.7.3伪分布式模式运行wordcount 基本环境: 系统:win7 虚机环境:virtualBox 虚机:centos 7 hadoop版本:2.7.3 本次以伪分布式模式来运行w ...

  7. Hadoop伪分布式模式部署

    Hadoop的安装有三种执行模式: 单机模式(Local (Standalone) Mode):Hadoop的默认模式,0配置.Hadoop执行在一个Java进程中.使用本地文件系统.不使用HDFS, ...

  8. 初学者值得拥有【Hadoop伪分布式模式安装部署】

    目录 1.了解单机模式与伪分布模式有何区别 2.安装好单机模式的Hadoop 3.修改Hadoop配置文件---五个核心配置文件 (1)hadoop-env.sh 1.到hadoop目录中 ​ 2.修 ...

  9. Hadoop Single Node Setup(hadoop本地模式和伪分布式模式安装-官方文档翻译 2.7.3)

    Purpose(目标) This document describes how to set up and configure a single-node Hadoop installation so ...

随机推荐

  1. JS 对话框 语法

    javaScript  是个脚本语言,没有能力独立执行,必须要有宿主文件 html, 作用 进行数据运算 控制浏览器的一些功能(对一下高级浏览器的影响有限) 控制元素(属性,样式,内容等) 一 用法 ...

  2. Java集合类源码解析:LinkedHashMap

    前言 今天继续学习关于Map家族的另一个类 LinkedHashMap .先说明一下,LinkedHashMap 是继承于 HashMap 的,所以本文只针对 LinkedHashMap 的特性学习, ...

  3. Number Sequence(hdu4390)

    Number Sequence Time Limit: 10000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tot ...

  4. Java - HashSet源码解析

    java提高篇(二四)-----HashSet 一.定义 public class HashSet<E> extends AbstractSet<E> implements S ...

  5. java 非阻塞算法实现基础:unsafe类介绍

    一.为什么要有Unsfae.我们为什么要了解这个类 1. java通常的代码无法直接使用操作底层的硬件,为了使java具备该能力,增加了Unsafe类 2.java的并发包中底层大量的使用这个类的功能 ...

  6. AngularJS table 按照表头字段排序功能(升序和降序)

    一.表格按照表头排序 <!doctype html> <html ng-app="a3_4"> <head> <title>表头排序 ...

  7. WEB服务器、应用程序服务器、HTTP服务器的区别

    WEB服务器.应用程序服务器.HTTP服务器的区别 Web服务器: 基本功能就是提供Web信息浏览服务.它只需支持HTTP协议.HTML文档格式及URL.与客户端的网络浏览器配合.因为Web服务器主要 ...

  8. python协程的简单了解

    协程: 协程,又称微线程,纤程.英文名Coroutine. 可以在不同的函数间切换,而且切换的次数和时间都是由用户自己确定的. 协程的几种实现方式: (1)使用生成器yield实现. 如果不了解生成器 ...

  9. Mariadb MySQL逻辑条件判断相关语句、函数使用举例介绍

    MySQL逻辑条件判断相关语句.函数使用举例介绍 By:授客 QQ:1033553122 1.  IFNULL函数介绍 IFNULL(expr1, expr2) 说明:假如expr1 不为NULL,则 ...

  10. Win10 开启便签快捷键

    前提: Win10系统 方法: 开启便签的快捷键:windows+W 这样就可以打开便签,使用起来非常方便