使用云服务器利用Docker环境搭建Hadoop集群常见的问题
通过同学介绍了解到了阿里云服务器,由于在虚拟机上搭建Hadoop占用太多的内存,且运行速度较慢,所以尝试使用服务器进行搭建。
我选择的是Linux的centos7,使用xshell工具连接服务器,操作更加方便。
在此,我主要是描述一下,在使用过程中遇到的一些问题。
1.部署Docker环境
我是通过阿里云的官方教程文档,进行的Docker环境搭建,官方文档里的每一个步骤很详细,就算是新手搭建起来页没有任何困难。在这里我就不详细说了。
我们使用Xshell连接到服务器是,要注意要在实例中找到“更多”里面的“安全组配置”。
找到“配置规则”。
在“快速添加”中,将SSH和HTTP端口打开,不然无法使用Xshell连接服务器。
2.在Docker中拉取centos7的镜像
使用docker pull centos命令拉取镜像,Docker通过读取Dockerfile中的指令,自动构建镜像。但是在编辑Dockerfile文件的时候要注意centos镜像的版本问题,因为centos8的镜像在2021年12月底停止维护,我们在拉取镜像的时候,默认拉取的是最新版本,所以在后面会又失败信息。
修改拉取的镜像的版本信息,只需要在编辑Dockerfile时,将第一行FROM centos改为FROM centos:centos7。在后面执行构建命令的时候就不会报错。
拉取完镜像之后吗,我们执行构建命令,docker build -t="hadoop" 。然后,执行以下命令运行容器。当我们需要的容器搭建好以后,我们就可以搭建Hadoop集群。
docker run --name hadoop0 --hostname hadoop0 -d -P -p 50070:50070 -p 8088:8088 hadoop
docker run --name hadoop1 --hostname hadoop1 -d -P hadoop
docker run --name hadoop2 --hostname hadoop2 -d -P hadoop
3.搭建Hadoop集群
在docker环境中搭建集群,我们还需要下载一些经常使用的工具包和配置一些常用的命令。
安装vim、net-tools:yum install vim yum install net-tools
配置ll命令:vim ~/.bashrc进入配置文件,添加alias ll='ls -l'内容,最后source ~/.bashrc使命令生效。
其余操作跟在虚拟机中进行Hadoop集群的搭建过程一致。
如果使用wget命令下载jdk、hadoop,我们需要修改为国内的镜像,并且在命令后面加上“--no-check-certificate”,以不安全的方式连接。
4.总结
只有不断的试错,才能更好的进步。从错误中学习,搞懂每一个知识点,每天一条命令。