目录
纯Docker部分
Docker结合Hadoop部分
环境搭建篇
Docker入门传送门
基于传统的hadoop搭建方式,将hadoop搭建前的虚拟物理机准备部分使用docker容器替代,后续 配置文件操作依然为传统方式。
规划为一主机二从机:
master | slave1 | slave2 |
namenode | datanode | datanode |
纯Docker部分
1、启动Docker
#启动systemctl start docker#检查是否活跃systemctl status docker
2、搜索镜像
#以搜索centos为例,后标有official的为官方镜像docker search centos
3、拉取镜像
#拉取centos7镜像,centos后接:7代表拉取的版本,未添加则默认最新版本:latest,为centos8镜像docker pull centos:7
4、查看镜像
#查看拉取下来的镜像(本地)#存在下图红框所示,即说明下载成功docker images
5、自建立docker bridge(网桥)
#为了将后续hadoop集群规划在同一网段里#可以将新的网桥命名为hadoopdocker network create hadoop#查看是否创建成功docker network ls#查看具体信息docker network inspect hadoop
Docker结合Hadoop部分
1、创建并运行容器
-dit | -h | –name | –network | –privileged=true |
后台且运行 | 容器内主机名 | 容器名 | 要加入的网桥 | root完整权限 |
#基于上述centos7镜像,新建master容器docker run -dit -h="master" --name="master" --network=hadoop -p 50070:50070 --privileged=true centos:7 init#slave1容器docker run -dit -h="slave1" --name="slave1" --network=hadoop --privileged=truecentos:7 init#slave2容器docker run -dit -h="slave2" --name="slave2" --network=hadoop --privileged=truecentos:7 init#查看运行状况docker ps
2、进入master容器
#在进入master容器之前,先查看一下三台容器是否都加入了自定义的网桥(hadoop)内docker network inspect hadoop#记住三台容器对应的IP,下图所示
#进入master容器docker exec -it master /bin/bash#设置root密码(下为命令,非密码)passwd
3、安装需要的软件包
#安装net-tools,以便使用ifconfig命令(可选),#注意:ip addr命令在docker内的centos里不可用yum install -y net-tools#安装vim,增强版vi(可选)yum install -y vim#安装which,否则hadoop运行时命令会报错(限docker环境,必装)yum install -y which#安装ssh,免密登录所需(必装)yum install -y openssh openssh-server openssh-clients#启动sshd服务systemctl start sshd#安装完毕,退出执行步骤2.4exit
注:
#以上命令可简化为一行命令(^_^):
yum install -y net-tools vim which openssh openssh-server openssh-clients
4、进入从机,重复2.3步骤
#进入slave1docker exec -it slave1 /bin/bash#设置root密码passwd#执行2.3完毕退出exit#进入slave2docker exec -it slave2 /bin/bash#设置root密码passwd#执行2.3完毕退出exit
5、配置hosts文件
(同一网桥下不用配置hosts,可直接通过主机名访问。)√
vi /etc/hosts#如果有以下提示,回车后按e即可继续配置E325: ATTENTIONFound a swap file by the name "/etc/.hosts.swp"#将2.2记录下来的ip对应主机名添加至hosts文件内#例如:在master主机下172.18.0.2 master #已拥有172.18.0.3 slave1 #需添加172.18.0.4 slave2 #需添加#将该hosts文件发送给slave1,slave2
6、传输搭建所需安装包
#将宿主机/opt下的安装包移动至3个容器节点中#docker cp /opt/xxx.tar.gz master:/opt/#例如:docker cp /opt/jdk-8u121-linux-x64.tar.gz master:/opt/docker cp /opt/hadoop-2.7.7.tar.gz master:/opt/......
环境搭建篇
文章 | 链接 | |
---|---|---|
Hadoop伪分布式的搭建详情 | https://tuomasi.blog.csdn.net/article/details/118650350″ />Hadoop完全分布式的搭建详情 | https://tuomasi.blog.csdn.net/article/details/118851554?spm=1001.2014.3001.5502 |
Zookeeper集群的搭建(单机、伪分布式、集群) | https://tuomasi.blog.csdn.net/article/details/119059186?spm=1001.2014.3001.5502 | |
Spark的安装与部署详情(Local模式,Standalone模式,Spank on YARN模式) | https://tuomasi.blog.csdn.net/article/details/119005751?spm=1001.2014.3001.5502 | |
HadoopHA环境搭建(保姆篇,手把手搭建) | https://tuomasi.blog.csdn.net/article/details/119838463?spm=1001.2014.3001.5502 | |
Centos安装yum,wegt(完全配置篇) | https://tuomasi.blog.csdn.net/article/details/120467143?spm=1001.2014.3001.5502 | |
Centos安装mysql(rpm终结版) | https://tuomasi.blog.csdn.net/article/details/120476116?spm=1001.2014.3001.5502 | |
centos安装hive3.1.2(精讲篇) | https://tuomasi.blog.csdn.net/article/details/120554242?spm=1001.2014.3001.5502 | |
hbase集群的搭建(HBase Shell) | https://tuomasi.blog.csdn.net/article/details/120787788?spm=1001.2014.3001.5502 | |
centos安装sqoop(使用Sqoop完成MySQL和HDFS之间的数据互导) | https://tuomasi.blog.csdn.net/article/details/121039263?spm=1001.2014.3001.5502 | |
centos安装pig(Pig的应用) | https://tuomasi.blog.csdn.net/article/details/121156854?spm=1001.2014.3001.5502 | |
centos安装kafka,集群模式(生产者消费者部署测试) | https://tuomasi.blog.csdn.net/article/details/121181238?spm=1001.2014.3001.5502 | |
centos安装storm(集群模式) | https://tuomasi.blog.csdn.net/article/details/121187833?spm=1001.2014.3001.5502 | |
centos安装flume(集群模式) | https://tuomasi.blog.csdn.net/article/details/121227635?spm=1001.2014.3001.5502 | |
Ubuntu搭建hadoopHA高可用(从零开始) | https://tuomasi.blog.csdn.net/article/details/122267734?spm=1001.2014.3001.5502 | |
Hadoop HA部署(MINI版) | https://tuomasi.blog.csdn.net/article/details/121566611?spm=1001.2014.3001.5502 | |
Spark组件部署(MINI版) | https://tuomasi.blog.csdn.net/article/details/121615781?spm=1001.2014.3001.5502 | |
Kafka组件部署(MINI版) | https://tuomasi.blog.csdn.net/article/details/121647743?spm=1001.2014.3001.5502 | |
Storm 组件安装部署(MINI版) | https://tuomasi.blog.csdn.net/article/details/121659323?spm=1001.2014.3001.5502 |
Docker入门参考:
一零零七、Docker快速入门_托马斯-酷涛的博客-CSDN博客Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP(可以是一个WEB应用或数据库应用等等)及 其运行环境能够做到“一次镜像,处处运行”。将应用打包成镜像,通过镜像成为运行在Docker容器上面的实例,而 Docker容器在任何操作系统 上都是一致的,这就实现了跨平台、跨服务器。只需要一次配置好环境,换到别的机子上就可以一键部署好,大大简化了操作。…https://tuomasi.blog.csdn.net/article/details/125121724″ />你的生活没有那么多观众
你有多努力,这个世界就有多特殊