Loading

Ubuntu上利用Docker部署Hadoop

详细步骤请搜索相关关键词

1. 环境准备

虚拟化支持:开启虚拟化

VirtualBox虚拟机:VirtualBox官方下载页面

Ubuntu镜像:Ubuntu官方下载页面

注:这里的Ubuntu镜像推荐下载服务器版本,只是学习Hadoop没必要使用带GUI的桌面版本多占用存储空间

2. 环境部署

2.1 基本配置

使用VirtualBox安装Ubuntu,全部默认设置即可

进入Ubuntu,更新apt列表,安装net-tools,查看网卡ip

$ sudo apt update && sudo apt install net-tools -y && ifconfig

在Windows中打开cmd,查看本机网卡ip

ipconfig

在VirtualBox中将本机ip的空闲端口和虚拟机ip的22端口,本机的50070端口和虚拟机的50070端口设置为端口映射

在cmd中使用ssh连接到虚拟机,方便后续步骤的复制粘贴操作

修改apt镜像源,使用文本编辑器将/etc/apt/sources.list中的仓库地址替换为mirror://mirrors.ubuntu.com/mirrors.txt,使用cat命令覆盖重定向sources.list

更新apt列表

$ sudo apt update

查看时间是否和Windows一致

$ date

若时区错误,修改时区为北京时间

$ sudo timedatectl set-timezone 'Asia/Shanghai'

2.2 安装Docker

apt安装Docker

$ sudo apt install docker.io

创建docker用户组

$ sudo groupadd docker

添加个人用户进入docker用户组

$ sudo usermod -aG docker $USER

激活对组的更改

$ newgrp docker

切换到国内镜像源

如果有阿里云账户,建议登录阿里云容器镜像服务,按照镜像加速器中的方法配置。实测阿里云的速度明显快于国内公共镜像源,另外注册阿里云是免费的。

或者使用国内公共的网易和百度源:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "http://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

验证是否可以在不使用sudo命令运行docker

$ docker run hello-world

若运行成功,则Docker安装完成

3. 运行Hadoop

拉取sequenceiq/hadoop-docker镜像并在后台运行容器,命名为myhadoop0,映射常用端口,并执行初始化命令

$ docker run -d --name myhadoop0 -p 50070:50070 -p 9000:9000 -p 8088:8088 -p 8040:8040 -p 8042:8042 -p 49707:49707 -p 50010:50010 -p 50075:50075 -p 50090:50090 sequenceiq/hadoop-docker /etc/bootstrap.sh -bash

进入容器

$ docker exec -it myhadoop0 bash

测试MapReduce样例程序

# /usr/local/hadoop-2.7.0/bin/hadoop jar /usr/local/hadoop-2.7.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar grep input output 'dfs[a-z.]+'

在浏览器打开本机localhost:50070

出现Hadoop的Overview页面,即部署成功Hadoop环境

posted @ 2021-03-08 00:05  Biem  阅读(506)  评论(0编辑  收藏  举报