使用Docker搭建Hadoop集群 Hadoop之伪分布式安装 网站日志流量分析系统 从centos7镜像到搭建kubernetes集群(kubeadm方式安装) Docker配置阿里云镜像源

  之前用虚拟机搭建Hadoop集群(包括伪分布式和完全分布式:Hadoop之伪分布式安装),但是这样太消耗资源了,自从学了Docker以后,什么东西都想往Docker里放,这次操练一把,用Docker来构建Hadoop集群(此时我的脑子里还想用Docker Spark集群,后续……),这里搭建的Hadoop主要服务于之前没有完成的项目:网站日志流量分析系统(该系统目前用虚拟机实现了离线分析模块,实时分析由于资源问题尚未完成,我想这次不担心了)考虑到阿里云ECS对于我个人来说,成本有点太高了,但是自从学了Dokcer以后,我再也不怕了,用这一台就够啦,哈哈哈哈……下面开始吧!安装过程较长,so please be patient!

一、环境准备

  ①阿里云轻量应用服务器(学生价很实惠的~),我的配置:1C、2G、40G(足够了)

  ②CentOS7.3,内核4.4(可用uname -r 查看,自带的3.10.x可能会导致Docker运行不稳定可参考鄙人另一篇博客:从centos7镜像到搭建kubernetes集群(kubeadm方式安装)里面有关于升级内核命令)

  ③Docker版本:19.03.5(安装参考官网即可,镜像加速可参考鄙人另一篇博客:Docker配置阿里云镜像源

  ④JDK1.8:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  ⑤Hadoop:http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.ta​​r.gz (ps:source为源码包,binary为安装包)

二、DockerFile构建具备ssh功能的镜像

1、创建对应目录

mkdir centos-ssh
cd centos-ssh
vim Dockerfile    #这里docker build时缺省名为Dockerfile

2、编写Dockerfile

#选择一个已有的OS镜像作为基础
FROM centos

# 镜像的作者  
MAINTAINER xiedong

# 安装openssh-server和sudo软件包,并且将sshd的UsePAM参数设置成no  
RUN yum install -y openssh-server sudo
RUN sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config
#安装openssh-clients
RUN yum  install -y openssh-clients

# 添加测试用户root,密码root,并且将此用户添加到sudoers里  
RUN echo "root:root" | chpasswd
RUN echo "root   ALL=(ALL)       ALL" >> /etc/sudoers

# 启动sshd服务并且暴露22端口  
RUN mkdir /var/run/sshd
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]
Dockerfile

3、构建镜像

docker build -t 'xd/centos-ssh' .    #注意别忘记末尾的点

三、DokcerFile构建jdk1.8镜像(基于ssh镜像)

1、创建目录

2、编辑Dockefile(docker build 缺省名为Dockerfile)

3、构建jdk1.8镜像

四、DockerFile构建hadoop镜像(基于ssh和jdk)

五、pipework固定IP

六、Docker构建Hadoop集群(伪分布式与完全分布式)

参考自:https://blog.csdn.net/xu470438000/article/details/50512442(如有侵权,请联系删除)

猜你喜欢

转载自www.cnblogs.com/rmxd/p/12051866.html
今日推荐