Ubuntu环境下使用Docker的Hadoop镜像搭建MapReduce

本文详细介绍了在Ubuntu环境下使用Docker搭建Hadoop MapReduce集群的步骤,包括Docker的安装、镜像获取、Java和Scala的安装、SSH配置、容器创建、Hadoop的安装与配置、MapReduce计算的实现,以及整个过程中的问题解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、安装docker

(1)更换国内软件源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
sudo apt update

(2)安装需要的包

sudo apt install apt-transport-https ca-certificates software-properties-common curl

(3)添加 GPG 密钥,并添加 Docker-ce 软件源

curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) stable"

(4)添加成功后更新软件包缓存

sudo apt update

(5)安装 Docker-ce

sudo apt install docker-ce

(6)设置开机自启动并启动 Docker-ce(安装成功后默认已设置并启动,可忽略)

sudo systemctl enable docker
sudo systemctl start docker

(7)hello world验证:

$ sudo docker run hello-world

(8)添加当前用户到 docker 用户组,可以不用 sudo 运行 docker

sudo groupadd docker
sudo usermod -aG docker $USER

如果出现错误可以参考
docker安装错误的解决方案

二、安装docker的Ubuntu,Centos镜像

查看docker,使用

docker version

在这里插入图片描述
使用

docker pull Ubuntu

在这里插入图片描述

查看docker的镜像库

docker images

在这里插入图片描述

验证docker的Ubuntu镜像
在这里插入图片描述

拉取centos:latest镜像,使用

docker pull daocloud.io/library/centos:latest

在这里插入图片描述

查看镜像

docker images

在这里插入图片描述

三、安装Java和Scala

刷新源

apt-get update

在这里插入图片描述

下载java 8

apt install openjdk-8-jdk

在这里插入图片描述
查看安装是否成功

java -version

在这里插入图片描述
安装Scala

apt install scala

在这里插入图片描述
使用scala检查

scala

在这里插入图片描述

四、安装SSH

更新软件源

apt-get update

在这里插入图片描述
安装SSH

apt-get install openssh-server

在这里插入图片描述

可能会出现一些问题:
在安装SSH时因为该软件包正处于非常不稳定的状态,所以要先进行安装
1.将info文件夹更名
sudo  mv /var/lib/dpkg/info /var/lib/dpkg/info_old
2.再新建一个新的info文件夹
sudo mkdir /var/lib/dpkg/info
sudo apt-get -f install
3.更新
sudo apt-get update
4.执行完上一步操作后会在新的info文件夹下生成一些文件,现将这些文件全部移到info_old文件夹下
sudo mv /var/lib/dpkg/info/* /var/lib/dpkg/info_old 
5.把自己新建的info文件夹删掉
sudo rm -rf /var/lib/dpkg/info
6.把以前的info文件夹重新改回名字
sudo mv /var/lib/dpkg/info_old /var/lib/dpkg/info

在这里插入图片描述
问题解决,重新安装
在这里插入图片描述
检查SSH是否成功启动

ps -e|grep ssh

在这里插入图片描述
生成秘钥

ssh-keygen -t rsa -p "" 

在这里插入图片描述
将公钥追加到 authorized_keys 文件中

cat .ssh/id_rsa.pub >> .ssh/authorized keys

在这里插入图片描述

启动 SSH 服务

五、创建容器

创建容器时需要设置固定IP,所以先要在docker使用如下命令创建固定IP的子网

docker network create --subnet=172.18.0.0/16 netgroup

在这里插入图片描述

docker的子网创建完成之后就可以创建固定IP的容器

#cluster-master
docker run -d --privileged -ti -v /sys/fs/cgroup:/sys/fs/cgroup --name cluster-master -h cluster-master --net netgroup --ip 172.18.0.2 daocloud.io/library/centos /usr/sbin/init
#cluster-slaves
docker run -d --privileged -ti -v /sys/fs/cgroup:/sys/fs/cgroup --name cluster-slave1 -h cluster-slave1 --net netgroup --ip 172.18.0.3 daocloud.io/library/centos /usr/sbin/init

docker run -d --privileged -ti -v /sys/fs/cgroup:/sys/fs/cgroup --name cluster-slave2 -h cluster-slave2 --net netgroup --ip 172.18.0.4 daocloud.io/library/centos /usr/sbin/init

docker run -d
参考资源链接:[Hadoop安装部署实战指南](https://wenku.youkuaiyun.com/doc/3tjxb1u65p?utm_source=wenku_answer2doc_content) 要使用Docker容器技术在Ubuntu 16.04上部署和配置Hadoop 2.7.1集群,你需要按照以下步骤进行操作: 1. 首先安装Docker。在Ubuntu上,你可以使用以下命令安装Docker: ``` sudo apt-get update sudo apt-get install docker ``` 2. 确保Docker已经正确安装后,接下来需要加载HadoopDocker镜像。你可以从提供Hadoop镜像的仓库中拉取镜像: ``` docker load -i hadoop-docker.tar.gz ``` 3. 创建Hadoop集群所需的网络。这可以通过Docker网络命令来完成: ``` docker network create hadoop-cluster-network ``` 4. 启动Hadoop集群的master和slave容器。确保你已经从辅助资料中获取到了正确的容器启动脚本和配置文件。启动命令可能类似于: ``` docker run -d --net hadoop-cluster-network --name master hadoop-docker docker run -d --net hadoop-cluster-network --name slave1 hadoop-docker docker run -d --net hadoop-cluster-network --name slave2 hadoop-docker docker run -d --net hadoop-cluster-network --name slave3 hadoop-docker ``` 5. 将容器内部的配置文件和数据目录映射到宿主机上,以便于管理和调试。这可以通过挂载卷的方式实现: ``` docker run -v /path/to/local/config:/path/in/container/config -v /path/to/local/data:/path/in/container/data --net hadoop-cluster-network --name master hadoop-docker ``` 6. 配置各个容器,确保它们可以通过主机名或IP地址相互访问。这通常在Dockerfile中配置,或在启动容器时通过`--add-host`参数实现。 7. 最后,通过执行脚本或命令来启动Hadoop集群服务。这通常涉及到启动HDFS和YARN等组件。 8. 验证Hadoop集群是否正确运行,可以使用Hadoop自带的验证工具或执行简单的MapReduce作业。 这些步骤仅提供了一个大致的流程,对于具体操作,可以参考《Hadoop安装部署实战指南》,该书详细记录了每个步骤的操作细节,包括配置文件的修改和环境变量的设置,确保你能够顺利搭建和配置Hadoop集群。 参考资源链接:[Hadoop安装部署实战指南](https://wenku.youkuaiyun.com/doc/3tjxb1u65p?utm_source=wenku_answer2doc_content)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值