Docker安装部署Hadoop环境,通过三个容器来模拟三个节点,最后只保留Master节点实现搭建。

安装环境

Ubuntu 22.04.1 LTS 和Docker 23.0.1

安装过程

拉取镜像

docker pull registry.cn-hangzhou.aliyuncs.com/hadoop_test/hadoop_base

在Docker中创建网络,方便通信

docker network create --driver=bridge hadoop

创建Master节点

docker run -it --network hadoop -h Master --name Master -p 9870:9870 -p 8088:8088 registry.cn-hangzhou.aliyuncs.com/hadoop_test/hadoop_base bash

–network hadoop :指定该容器使用创建的hadoop网络 --name Master :把该容器名称命名为Master-p 9870:9870 :将宿主机的9870端口号,映射到容器的9870端口-p 8088:8088 : 将宿主机的8088端口号,映射到容器的8088端口 这两个开放端口,其他节点不暴露端口

创建slave1和slave2节点

docker run -it --network hadoop -h Slave2 --name Slave2 registry.cn-hangzhou.aliyuncs.com/hadoop_test/hadoop_base bash
docker run -it --network hadoop -h Slave2 --name Slave2 registry.cn-hangzhou.aliyuncs.com/hadoop_test/hadoop_base bash

分别进入三个容器修改hosts文件

在修改之前,先分别查看三台主机的容器IP,后面的是你的容器id,可以通过docker ps查看

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 9883affae876

我这里的三台主机的IP为:

Master 172.19.0.2
Slave1 172.19.0.3
Slave2 172.19.0.4

进入容器修改/etc/hosts文件

docker exec -it 9883affae876 bash

在Master执行集群初始化

先进入Master节点容器的/usr/local/hadoop/bin

./hadoop namenode -format

在看到这个结果就算成功了

启动集群

回到sbin目录下,输入

./start-all.sh

然后再访问IP:9870就可以查看了

总结,通过Docker安装真的很方便,如果大家并没有那么多时间去做这些运维的工作,Docker部署真的是一个很好的方式

参考链接:(侵权联系必删

https://www.cnblogs.com/LaoJiuXueIt/p/17073457.html

Docker快速部署Hadoop环境的更多相关文章

  1. 利用Docker快速部署Oracle环境

    工作中需要频繁使用Oracle环境,但是每次搭建起来比较消耗时间,本想通过虚拟机模板的方式来快速安装oracle vm,但是每次改ip等环境也很耗时,因此想到docker中有没有已经做好的images ...

  2. 巧用 Docker 快速部署 GPU 环境

    公众号关注 「开源Linux」 回复「学习」,有我为您特别筛选的学习资料~ 在 Linux 服务器上使用 GPU 跑深度学习的模型很正常不过.如果我们想用 Docker 实现同样的需求,就需要做些额外 ...

  3. 使用Docker快速部署Storm环境

    Storm的部署虽然不是特别麻烦,但是在生产环境中,为了提高部署效率,方便管理维护,使用Docker来统一管理部署是一个不错的选择.下面是我开源的一个新的项目,一个配置好了storm与mono环境的D ...

  4. 使用Ambari快速部署Hadoop大数据环境

    使用Ambari快速部署Hadoop大数据环境   发布于2013-5-24   前言 做大数据相关的后端开发工作一年多来,随着Hadoop社区的不断发展,也在不断尝试新的东西,本文着重来讲解下Amb ...

  5. 私活利器,docker快速部署node.js应用

    http://cnodejs.org/topic/53f494d9bbdaa79d519c9a4a 最近研究了几天docker的快速部署,感觉很有新意,非常轻量级和方便,打算在公司推广一下,解放运维, ...

  6. 使用Docker快速搭建ELK环境

    今天由于Win系统的笔记本没带回家,其次Docker在非Linux系统下都需要安装额外的软件去镜像才行 所以感觉没有差别,先直接用Mac搭建一遍呢, 本篇部分命令和配置内容为摘抄 Mac下使用Dock ...

  7. 使用Docker快速部署ELK分析Nginx日志实践(二)

    Kibana汉化使用中文界面实践 一.背景 笔者在上一篇文章使用Docker快速部署ELK分析Nginx日志实践当中有提到如何快速搭建ELK分析Nginx日志,但是这只是第一步,后面还有很多仪表盘需要 ...

  8. 使用Docker快速部署各类服务

    使用Docker快速部署各类服务 一键安装Docker #Centos环境 wget -O- https://gitee.com/iubest/dinstall/raw/master/install. ...

  9. 利用Docker快速部署Mysql

    写在前面 我又来更新了~~~,今天内容较少,主要是利用Docker快速部署Mysql和初始化数据 利用Docker下载Mysql 简洁明了,在命令提示符中输入 docker pull mysql:8. ...

  10. spring boot / cloud (十八) 使用docker快速搭建本地环境

    spring boot / cloud (十八) 使用docker快速搭建本地环境 在平时的开发中工作中,环境的搭建其实一直都是一个很麻烦的事情 特别是现在,系统越来越复杂,所需要连接的一些中间件也越 ...

随机推荐

  1. Eclipse's Content Assist

    在Eclipse里面的辅助智能索引只有"."才会提示,或者手动按alt+/补全提示.因为Eclipse的补全功能的默认设置只有".",其实你只需要稍微修改一下就 ...

  2. js/css实现图片轮播

    实现样式: tplb.css ul, li { padding: 0; margin: 0; list-style: none; } .adver { margin: 0 auto; width: 7 ...

  3. TCP连接实践解析

    1.初始化. 2.FD_ISSET,是select机制的一个成员,用来检测sockfd是否有动作,对应读写异常等. 3.FD_ZERO 宏完成的工作就是一个初始化套接字集合 4.FD_SET把sock ...

  4. 实验五:开源控制器实践——POX

    基本要求 1.tcpdump 验证Hub模块 h1 ping h2的tcpdump抓包结果截图 h1 ping h3的tcpdump抓包结果截图 2.tcpdump 验证Switch模块 h1 pin ...

  5. python 超时装饰器

    #************************************************************** 设置超时的装饰器 *************************** ...

  6. webpack之webpack和vite的区别

      打包原理 缺点 其他特点 webpack 解析各个模块的依赖关系 使用loader转换文件,使用plugin注入钩子,打包合并模块,最终生成bundle文件,使用express开启本地服务器, 浏 ...

  7. reduce处理相同id合并对象内容为数组

    例: let arr = [     {         situationId: '666666666666666666666',         cloundClass: '999',     } ...

  8. Activiti7开发(四)-我的待办

    目录 1. 查询登录用户的待办任务 2.审批 1. 查询登录用户的待办任务 private List<Task> queryMyTasks(){ String username = Sec ...

  9. Java8 获取当天日期的前一天

    LocalDateTime.now().plusDays(-1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))

  10. LoadRunner——创建场景及运行场景(三)

    1. 创建场景 场景:用户并发访问的策略,包含用户数.加载用户的时间等 启动第二个组件 : 控制台 (controller) 方式1: 开始->所有程序->HPLoadRunner-> ...