部署基于Docker的Hadoop+Spark集群 (一)

网友投稿 1252 2022-10-20

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

部署基于Docker的Hadoop+Spark集群 (一)

前言:

随着CI&CD运维手段的流行,作为菜鸟的程序员们也不得不卷起来,开发中CRUD其实是最小的一部分,耗费精力最多的其实是查找问题和后期的运维,大数据更是如此,运维往往占据大部分时间;废话不多说,下面就讲一下曾经我在项目实战中搭建的基于Docker的Hadoop+Spark集群。有问题请联系菜鸟我 tianyapiaoling@126.com。

一、准备工作

1. 在虚拟机上安装centOS8

1.1 下载地址

https://mirrors.aliyun.com/centos-vault/8.2.2004/isos/x86_64/

说明:下载的是 CentOS-8.2.2004-x86_64-dvd1.iso 这个文件!

1.2 硬件配置

① CentOS8.2操作系统② 内存大小至少32核/64G

1.3 虚拟机修改

# 1)修改主机名cat /etc/hostnameecho "node01" > etc/hostnamereboot# 2)修改虚拟机ip地址为static ~ 阿里云服务器则不需要这步操作vim /etc/sysconfig/network-scripts/ifcfg-eth0-----------修改内容如下---------BOOTPROTO=staticIPADDR=192.168.0.226NETMASK=255.255.255.0-------------------------------# 3)使上面的配置生效 ~ 阿里云服务器则不需要这步操作nmcli c reloadip aping 192.168.0.226

1.4 配置虚拟机联网

说明:需要配置DNS+Gateway

# 1)同样编辑如下文件,在最后面添加 ~ 阿里云服务器则不需要这步操作vim /etc/sysconfig/network-scripts/ifcfg-eth0-----------添加内容如下---------DNS1=192.168.0.1GATEWAY=192.168.0.1------------------------------# 2)重新加载虚拟机配置并重启 ~ 阿里云服务器则不需要这步操作nmcli c reloadnmcli c up ens160ping baidu.com

1.5 安装openJDK1.8

# 1)yum安装 ~ 阿里云服务器则不需要这步操作ls /etc/yum.repos.d/vim /etc/yum.repos.d/CentOS-Media.repo-----------最终修改为如下------------[c8-media-BaseOS]name=CentOS-BaseOS-$releasever - Mediabaseurl=file:///media/BaseOSgpgcheck=1enabled=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial[c8-media-AppStream]name=CentOS-AppStream-$releasever - Mediabaseurl=file:///media/AppStreamgpgcheck=1enabled=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial---------------------------------------# 2)修改挂载盘 ~ 阿里云服务器则不需要这步操作mount /dev/sr0 media/ls /media/# 3)查看openjdk包yum list | grep openjdk# 4)安装openjdk、openjdk-devalyum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel# 5)查看结果whereis javawhereis jps# 6)查看java运行环境(默认为:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el8_4.x86_64/jre)find / -name "jre"

1.6 设置SSH免密登录

# 1)增加普通用户useradd -m userls /homepasswd user(密码也是user)# 2)切换到普通用户(切回root用户直接使用命令 su 即可)su - user# 3)[user@node01 ~]设置SSH免密登录ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa# 4)[user@node01 ~]查看.ssh文件 (其中rsa.pub为公钥,id_rsa为私钥)ls .ssh/# 5)[user@node01 ~]免密登录设置cat .ssh/id_rsa.pub > ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keys# 6)可以直接登录了(还是在user用户下操作)ssh 公网ip# 注:之后其它的节点也想这样,只需把这个id_rsa.pub分发到其它节点,写入authorized_keys即可cat .ssh/id_rsa.pub > ~/.ssh/authorized_keys

2. Docker安装与配置

2.1 安装docker

说明:以下命令在root用户下执行。

# 1)准备Docker安装源配置文件 ~ 阿里云不需要yum -y install wget# 2)安装Dockerwget https://download.docker.com/linux/centos/docker-ce.repo# [root@node01 user]查看一下,并复制到yum仓库ls cp docker-ce.repo /etc/yum.repos.d/# [root@node01 user]列出当前可安装的docker-ce版本yum list docker-ce --showduplicates# [root@node01 user]安装dockeryum -y install docker-ce-3:19.03.13-3.el8# 3)[root@node01 user]下Docker服务自启动systemctl start dockersystemctl status dockersystemctl enable docker# 4)[root@node01 user]普通用户使用dockerusermod -a -G docker user# 切换到user用户使用docker命令su - userdocker ps -a# 5)[root@node01 user]下添加Docker镜像加速(首次需要创建)vim /etc/docker/daemon.json-----------------内容如下----------------{ "registry-mirrors": ["https://b9pcda2g.mirror.aliyuncs.com"]}----------------------------------------# [root@node01 user]下重启docker并查看详细信息systemctl restart dockerdocker info# 6)[user@node01 ~]下pull并运行Docker基础镜像docker search centos# 7)[user@node01 ~]下docker容器命令操作docker ps -a -q #查看所有容器docker stop $(docker ps -a -q)docker rm $(docker ps -a -q)

2.2 解决docker网络连接

注:先关闭宿主机防火墙!

# 方式一)重启服务器reboot# 方式二)删除网桥再创建(前提:先停止有问题容器)# 先下载网络桥接工具wget https://cbs.centos.org/kojifiles/packages/bridge-utils/1.6/3.e18/x86_64/bridge-utils-1.6-3.e18.x86_64.rpmyum -y localinstall bridge-utils-1.6-3.e18.x86_64.rpm# 再关闭有问题的docker网络(此处docker0有问题)ip link set dev docker0 downbrctl delbr docker0# 重启docker服务systemctl restart docker# 最后重新启动一个docker容器即可,举例如下:docker run -idt centos:centos8.2.2004 (或者:docker run -it centos:centos8.2.2004 /bin/bash)

上一篇:信达证券:锂资源储备丰富、资源自给率高的企业业绩将继续维持高增长
下一篇:比亚迪股份:获瑞银维持“买入”评级
相关文章

 发表评论

暂时没有评论,来抢沙发吧~