使用docker安装hadoop(已实现)
2024-09-07 13:36:06
1.拉镜像
这里推荐第一个
docker pull registry.cn-hangzhou.aliyuncs.com/hadoop_test/hadoop_base
或者
docker pull qianiqan/hadoop_only
2.创建容器
三个容器的名称分别是Master、Slave1、Slave2
1.创建hadoop内部网络
目的是实现容器与容器之间的相互通信
docker network create --driver=bridge hadoop
hadoop:是创建的网络名
2.创建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端口
这两个开放端口
3.创建slave1容器,不开放端口
docker run -it --network hadoop -h Slave1 --name Slave1 registry.cn-hangzhou.aliyuncs.com/hadoop_test/hadoop_base bash
不开端口,只有master容器开
4.创建slave2容器,不开放端口
docker run -it --network hadoop -h Slave2 --name Slave2 registry.cn-hangzhou.aliyuncs.com/hadoop_test/hadoop_base bash
不开端口,只有master容器开
3.三台主机都修改/etc/hosts文件
分别进入三台主机,然后修改他们的hosts文件
vim /etc/hosts
**************添加下面内容*************
172.20.0.2 Master #(容器ip 容器主机名)
172.20.0.3 Slave1
172.20.0.4 Slave2
查看容器ip的方法
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 容器ID
4.格式化hdfs
在master容器内操作
进入hadoop的bin目录格式化
可以看出hadoop的存放目录为/usr/local/hadoop/
cd /usr/local/hadoop/bin
-
./hadoop namenode -format
5.启动hadoop
三台主机容器内部都可以
cd /usr/local/hadoop/sbin
-
./start-all.sh
6.web访问测试
宿主机ip:9870
最新文章
- CentOS下modelsim 10.2c install &; crack
- 细说Lucene源码(一):索引文件锁机制
- .net运行时和核心类库源码(部分源码)微软官方下载
- SAP高可用性(HA)
- 由Redis的hGetAll函数所引发的一次服务宕机事件
- 20175312 2018-2019-2 《Java程序设计》第8周学习总结
- apply-javascript-internal
- HDU 5178 pairs【二分】||【尺取】
- sklearn不同数量的训练集在测试集上的表现的曲线刻画
- static_cast<;void>;(0)的意义及NDEBUG assert的使用
- 牛津大学xDeepMind自然语言处理
- tensorflow笔记2:TensorBoard
- mysql使用sql语句查询数据库所有表注释已经表字段注释
- ref:Mysql授权远程登陆
- 怎样用Javascript定义一个类
- UML学习(二)- 用例图
- jquery表单验证插件 jquery.form.js ------转载
- [摸鱼]cdq分治 &;&; 学习笔记
- iOS开发NS_ENUM和NS_OPTIONS区别
- 《从零开始学Swift》学习笔记(Day 63)——Cocoa Touch设计模式及应用之单例模式