Docker容器搭建大数据集群
Docker容器搭建大数据集群
首先准备好Centos7(之前准备好的模板机)
安装Docker
-
更新yum包(期间选择全选’y’)
-

-
yum update
-
-
安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖
-
yum install -y yum-utils device-mapper-persistent-data lvm2

-
-
设置yum源为阿里云
-
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

-
-
安装Docker
-
yum -y install docker-ce
-
检查安装是否成功
-
docker -v
-
-
-
设置ustc的镜像
-
创建docker目录
-
mkdir -p /etc/docker
-
-
编辑daemon.json
-
vim /etc/docker/daemon.json
{"registry-mirrors": ["https://yxzrazem.mirror.aliyuncs.com"] }
-
-
-
启动Docker(完成此步骤最好保存快照,以免后面环境出错难以恢复)
-
systemctl start docker
-
查看是否启动成功
-
systemctl status docker
-
-
Hadoop集群安装准备
-
基础镜像准备
-
拉取centos镜像
-
docker pull centos:7.5.1804
-
-
-
创建docker-hadoop
-
mkdir docker-hadoop
-
-
把jdk上传~/docker-hadoop
-
创建Dockerfile
-
vim DockerfileFROM centos:7.5.1804 #安装JDK RUN mkdir -p /opt/software && mkdir -p /opt/service ADD jdk-8u212-linux-x64.tar.gz /opt/service#安装语言包 RUN yum -y install kde-l10n-Chinese glibc-common vim RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8 RUN echo "LANG=zh_CN.UTF-8" >> /etc/locale.conf#解决login环境变量失效问题 RUN touch /etc/profile.d/my_env.sh RUN echo -e "export LC_ALL=zh_CN.UTF-8\nexport JAVA_HOME=/opt/service/jdk1.8.0_212\nexport PATH=\$PATH:\$JAVA_HOME/bin" >> /etc/profile.d/my_env.sh#安装ssh服务 #更换国内阿里云yum源 RUN curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo RUN sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo RUN yum makecache#安装sshd RUN yum install -y openssh-server openssh-clients vim net-tools lrzsz RUN sed -i '/^HostKey/'d /etc/ssh/sshd_config RUN echo 'HostKey /etc/ssh/ssh_host_rsa_key' >> /etc/ssh/sshd_config#生成ssh-key RUN ssh-keygen -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key#更改root用户登录密码 RUN echo 'root:123456' | chpasswd#声明22端口 EXPOSE 22 #容器运行时启动sshd RUN mkdir -p /opt RUN echo '#!/bin/bash' >> /opt/run.sh RUN echo '/usr/sbin/sshd -D' >> /opt/run.sh RUN chmod +x /opt/run.sh #CMD ["/opt/run.sh"] CMD [ "/usr/sbin/init"]
-
-
生成基础镜像
-
docker build -t hadoopbase:1.0 ./ -
查看镜像是否成功构建
-
docker images
-
-
-
测试镜像
-
起一个容器测试
-
docker run -itd --name test -p 222:22 hadoopbase:1.0 -
可以新打开一个xshell窗口,IP地址和宿主机一致,端口号改为222即可连接
-
-
-
集群环境配置
-
创建三个容器
-
docker create -it --name hadoop102 --privileged=true -h hadoop102 hadoopbase:1.0 /usr/sbin/init docker create -it --name hadoop103 --privileged=true -h hadoop103 hadoopbase:1.0 /usr/sbin/init docker create -it --name hadoop104 --privileged=true -h hadoop104 hadoopbase:1.0 /usr/sbin/init
-
-
创建脚本
-
先进入目录/usr/local/bin/
-
cd /usr/local/bin/
-
-
把pipework拷贝上传上去
-
创建docker.sh
-
vim docker.sh
#!/bin/bash#启动容器 docker start hadoop102 docker start hadoop103 docker start hadoop104#搭建网桥,下面8.8.8.80是宿主机的IP brctl addbr br0; \ ip link set dev br0 up; \ ip addr del 8.8.8.80/24 dev ens33; \ ip addr add 8.8.8.80/24 dev br0; \ brctl addif br0 ens33; \ ip route add default via 8.8.8.1 dev br0#睡眠5秒 sleep 5#给容器配置ip和网关 pipework br0 hadoop102 8.8.8.102/24@8.8.8.2 pipework br0 hadoop103 8.8.8.103/24@8.8.8.2 pipework br0 hadoop104 8.8.8.104/24@8.8.8.2 -
增加脚本执行权限并下载工具
-
chmod 777 docker.sh chmod 777 pipework yum install bridge-utils
-
-
执行脚本
-
docker.sh
-
-
-
用xshell连接三个容器
-
配置主机和ip映射,三台容器都需要执行
-
vim /etc/hosts -
配置如下
-
8.8.8.102 hadoop102 8.8.8.103 hadoop103 8.8.8.104 hadoop104
-
-
-
-
-
配置免密登录
-
设置公钥和私钥(此步骤需要在三台容器都执行)
-
#输入命令后一直按回车 ssh-keygen -t rsa
-
-
拷贝公钥(此步骤需要在三台容器都执行)
-
#输入命令之后会输入yes,然后输入密码 ssh-copy-id hadoop102 ssh-copy-id hadoop103 ssh-copy-id hadoop104
-
-
Hadoop安装
-
在三台机子都运行如下命令
-
#安装所需要的工具 yum install -y psmisc nc net-tools rsync vim lrzsz ntp libzstd openssl-static tree iotop git
-
-
创建分发文件脚本(写在hadoop102上102是我们的主机)
-
cd ~ mkdir bin cd bin touch my_rsync.sh #提升权限 chmod 744 my_rsync.sh vim my_rsync.sh#!/bin/bash#参数预处理 if [ $# -lt 1 ] thenecho '参数不能为空!!!'exit fi#遍历集群中的机器一次分发内容 for host in hadoop103 hadoop104 do#依次分发内容for file in $@do#判断当前文件是否存在if [ -e $file ]then#存在#1.获取当前文件的目录结构pdir=$(cd -P $(dirname $file); pwd)#2.获取当前的文件名fname=$(basename $file)#3.登录目标机器,创建同一目录结构ssh $host "mkdir -p $pdir"#4.依次把要分发的文件或目录进行分发rsync -av $pdir/$fname $host:$pdirelse#不存在echo "$file 不存在"exitfidone done
-
-
将hadoop导入到/opt/software文件下(hadoop102上操作)
-
cd /opt/software/
-
-
将其解压到/opt/service/
-
tar -zxvf hadoop-3.1.3.tar.gz -C /opt/service/ -
进入目录查看
-
cd /opt/service/
-
-
-
将hadoop添加到环境变量
-
第一步到hadoop家目录下获取路径
-
cd /opt/service/hadoop-3.1.3/ pwd
-
-
第二步:打开/etc/profile.d/my_env.sh文件
-
vim /etc/profile.d/my_env.sh
-
-
第三步:在my_env.sh中添加如下配置
-
#HADOOP_HOME export HADOOP_HOME=/opt/service/hadoop-3.1.3 export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADDOP_HOME/sbin
-
-
第四步:刷新配置文件
-
source /etc/profile.d/my_env.sh
-
-
-
修改配置文件,进入$HADOOP_HOME/etc/hadoop
-
cd $HADOOP_HOME/etc/hadoop -
修改core-site.xml
-
vim core-site.xml -
修改内容如下
-
<configuration><property><name>fs.defaultFSname><value>hdfs://hadoop102:9820value>property><property><name>hadoop.tmp.dirname><value>/opt/service/hadoop-3.1.3/datavalue>property><property><name>hadoop.http.staticuser.username><value>rootvalue>property><property><name>hadoop.proxyuser.root.hostsname><value>*value>property><property><name>hadoop.proxyuser.root.groupsname><value>*value>property><property><name>hadoop.proxyuser.root.groupsname><value>*value>property>configuration> -
配置hdfs-site.xml
-
vim hdfs-site.xml -
文件配置如下
-
<configuration><property><name>dfs.namenode.http-addressname><value>hadoop102:9870value>property><property><name>dfs.namenode.secondary.http-addressname><value>hadoop104:9868value>property> configuration>
-
-
配置yarn-site.xml
-
vim yarn-site.xml -
文件配置如下
-
<configuration><property><name>yarn.nodemanager.aux-servicesname><value>mapreduce_shufflevalue> property> <property><name>yarn.resourcemanager.hostnamename><value>hadoop103value> property> <property><name>yarn.nodemanager.env-whitelistname><value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOMEvalue> property> <property><name>yarn.scheduler.minimum-allocation-mbname><value>512value>property><property><name>yarn.scheduler.maximum-allocation-mbname><value>4096value> property> <property><name>yarn.nodemanager.resource.memory-mbname><value>4096value> property> <property><name>yarn.nodemanager.pmem-check-enabledname><value>falsevalue>property><property><name>yarn.nodemanager.vmem-check-enabledname><value>falsevalue>property> configuration>
-
-
配置mapred-site.xml
-
vim mapred-site.xml -
配置如下
-
<configuration><property><name>mapreduce.framework.namename><value>yarnvalue>property> configuration>
-
-
-
-
把文件分发到各个主机(使用前面所写的分发脚本)
-
cd $HADOOP_HOME my_rsync.sh /opt/service/hadoop-3.1.3/ #把环境变量配置也分发过去,因为我们图方便用的root用户登录,所以可以直接用分发脚本 my_rsync.sh /etc/profile.d/my_env.sh
-
-
格式化namenode
-
cd $HADOOP_HOME hdfs namenode -format
-
-
配置群起脚本(hadoop102上执行下面步骤)
-
先修改配置
-
vim /opt/service/hadoop-3.1.3/etc/hadoop/workers -
配置内容如下(切记不能有然后空格和空行)
-
hadoop102 hadoop103 hadoop104
-
-
分发刚才修改之后的文件
-
my_rsync.sh /opt/service/hadoop-3.1.3/etc/hadoop/workers
-
-
回到home目录,并创建编写脚本
-
cd ~/bin touch my_cluster.sh chmod 744 my_cluster.sh vim my_cluster.sh -
脚本内容如下
-
#!/bin/bashif [ $# -lt 1 ] thenecho '参数不能为空!!!'exit ficase $1 in "start")#启动HDFS集群echo "===========启动HDFS集群============"ssh hadoop102 /opt/service/hadoop-3.1.3/sbin/start-dfs.sh#启动YARN集群echo "===========启动YARN集群============"ssh hadoop103 /opt/service/hadoop-3.1.3/sbin/start-yarn.sh ;; "stop")#启动HDFS集群echo "===========停止HDFS集群============"ssh hadoop102 /opt/service/hadoop-3.1.3/sbin/stop-dfs.sh#启动YARN集群echo "===========停止YARN集群============"ssh hadoop103 /opt/service/hadoop-3.1.3/sbin/stop-yarn.sh ;; *)echo '参数错误!!!' ;; esac
-
-
在环境变量中添加如下几个配置
-
vim /etc/profile#添加在末尾 export HDFS_NAMENODE_USER=root export HDFS_DATANODE_USER=root export HDFS_SECONDARYNAMENODE_USER=root export YARN_RESOURCEMANAGER_USER=root export YARN_NODEMANAGER_USER=root -
使用分发脚本把/etc/profile分发下去,并source /etc/profile(三台机子都需要执行source命令)
-
my_rsync.sh /etc/profile source /etc/profile
-
-
-
在$HADOOP_HOME/sbin路径下查找start-dfs.sh和stop-dfs.sh两个文件,在其顶部都添加上
-
#!/usr/bin/env bash HDFS_DATANODE_USER=root HADOOP_SECURE_DN_USER=hdfs HDFS_NAMENODE_USER=root HDFS_SECONDARYNAMENODE_USER=root
-
-
顺便在start-yarn.sh和stop-yarn.sh两个文件顶部也分别加上
-
#!/usr/bin/env bash YARN_RESOURCEMANAGER_USER=root HADOOP_SECURE_DN_USER=yarn YARN_NODEMANAGER_USER=root
-
-
然后使用分发脚本把sbin分发下去
-
my_rsync.sh /opt/service/hadoop-3.1.3/sbin/*
-
-
编写一个脚本方便查看集群状态
-
cd ~/bin vim my_jps.sh -
内容如下
-
#!/bin/bash#查看集群中所有的状态for host in hadoop102 hadoop103 hadoop104 doecho "=========$host========="ssh $host jps done
-
-
chmod 744 my_jps.sh
-
-
-
在hadoop102上运行测试
-
#就使用刚才所写的群起脚本 my_cluster.sh start -
在物理机上访问8.8.8.102:9870

如果有3个就证明成功,建议在此保留一份快照
-
搭建MySQL【主机上】(hadoop102是我们的主机)
-
1.卸载Linux自带的MySQL
-
1.1查自带的软件
-
#如果查询有没有结果就可以跳过卸载步骤 rpm -qa | grep -E mysql\|mariadb
-
-
1.2卸载
-
#后面的mariadb-libs-5.5.68-1.el7.x86_64是前一步查询出的结果 rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
-
-
-
2.正式安装MySQL
-
上传MySQL软件包
-
cd /opt/software/
-
-
在/opt/software/目录下创建一个文件来收纳tar包的解压文件
-
mkdir mysql-rpm tar -xvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar -C ./mysql-rpm/
-
-
到刚才解压到的包
-
cd /opt/software/mysql-rpm/ #安装依赖,防止MySQL安装报错 yum install -y libaio numactl #安装MySQL,严格按照顺序安装 rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm -
检查是否安装完成
-
rpm -qa | grep mysql
-
-
-
初始化数据库
-
mysqld --initialize --user=mysql
-
-
启动MySQL服务
-
systemctl start mysqld
-
-
查看MySQL状态
-
查看临时密码
-
cat /var/log/mysqld.log | grep password
-
-
复制好刚才查看到的临时密码,登录MySQL
-
#不建议把刚才复制的密码直接粘贴到-p之后,建议下面命令回车之后再粘贴密码 mysql -uroot -p
-
-
修改密码
-
set password = password('123456');
-
-
修改远程连接,修改之后就可以使用Navicat连接MySQL
-
use mysql; update user set host = '%' where user = 'root'; flush privileges;
-
-
搭建Hive集群(Hadoop103和Hadoop104)
-
上传hive安装包
-
cd /opt/software/
-
-
解压包
-
tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/service/
-
-
查看软件包,并修改名字
-
cd /opt/service/ mv apache-hive-3.1.2-bin/ hive-3.1.2
-
-
配置环境变量
-
vim /etc/profile.d/my_env.sh#hive export HIVE_HOME=/opt/service/hive-3.1.2 export PATH=$PATH:$HIVE_HOME/bin
-
source /etc/profile.d/my_env.sh
-
-
解决日志冲突
-
删除jar包
-
cd /opt/service/hive-3.1.2/lib/ rm -rf log4j-slf4j-impl-2.10.0.jar
-
-
-
hive元数据配置到MySQL
-
cd $HIVE_HOME/conf touch hive-site.xml vim hive-site.xml<configuration><property><name>javax.jdo.option.ConnectionURLname><value>jdbc:mysql://hadoop102:3306/metastore?useSSL=falsevalue> property><property><name>javax.jdo.option.ConnectionDriverNamename><value>com.mysql.jdbc.Drivervalue> property><property><name>javax.jdo.option.ConnectionUserNamename><value>rootvalue>property><property><name>javax.jdo.option.ConnectionPasswordname><value>123456value> property><property><name>hive.metastore.warehouse.dirname><value>/user/hive/warehousevalue>property><property><name>hive.metastore.schema.verificationname><value>falsevalue>property><property><name>hive.metastore.event.db.notification.api.authname><value>falsevalue>property> configuration>
-
-
将MySQL的JDBC驱动拷贝到Hive的lib目录下
-
cd $HIVE_HOME/lib上传驱动包
-
-
初始化源数据库
-
回到hadoop102,连接MySQL创建数据库
-
mysql -uroot -p123456
create database metastore;
-
-
回到hadoop103,初始化Hive元数据库
-
schematool -initSchema -dbType mysql -verbose
-
-
-
启动测试Hive
-
首先要启动Hadoop集群
-
#启动好Hadoop集群之后在hadoop103执行命令 hive
-
-
最后把文件和配置好的环境变量分发到hadoop104
-
scp -r /opt/service/hive-3.1.2/ root@hadoop104:/opt/service/ -
环境变量也发送到hadoop104
-
scp -r /etc/profile.d/my_env.sh root@hadoop104:/etc/profile.d/
-
-
此时Hive集群已完成
-
搭建Flume 【主机】
-
上传安装包到/opt/software/
-
cd /opt/software/
-
-
解压软件包
-
tar -zxvf apache-flume-1.9.0-bin.tar.gz -C /opt/service/
-
-
修改名字
-
cd /opt/service/ mv apache-flume-1.9.0-bin/ flume-1.9.0
-
-
配置环境变量
-
vim /etc/profile.d/my_env.sh#flume export FLUME_HOME=/opt/service/flume-1.9.0 export PATH=$PATH:$FLUME_HOME/bin
-
source /etc/profile.d/my_env.sh
-
-
解决与Hadoop的冲突
-
cd $FLUME_HOME/lib rm -rf guava-11.0.2.jar到此就已经安装完成
-
搭建Zookeeper(hadoop102上操作)
-
先停掉Hadoop集群
-
#在hadoop102执行 my_cluster.sh stop
-
-
上传软件包到/opt/software/
-
cd /opt/software/
-
-
解压软件包
-
tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz -C /opt/service/
-
-
修改解压之后的名字
-
cd /opt/service/ mv apache-zookeeper-3.5.7-bin/ zookeeper-3.5.7
-
-
创建数据目录
-
cd /opt/service/zookeeper-3.5.7/ mkdir zkData
-
-
修改配置文件
-
cd /opt/service/zookeeper-3.5.7/conf/ mv zoo_sample.cfg zoo.cfg vim zoo.cfg -
修改dataDir
-
dataDir=/opt/service/zookeeper-3.5.7/zkDataserver.2=hadoop102:2888:3888 server.3=hadoop103:2888:3888 server.4=hadoop104:2888:3888
-
-
-
给集群配标号
-
cd /opt/service/zookeeper-3.5.7/zkData/ touch myid vim myid在文件中输入2

-
-
分发文件,讲zookeeper分发到集群
-
cd /opt/service/ my_rsync.sh zookeeper-3.5.7/
-
-
到另外两个容器中修改myid文件,hadoop103对应3,hadoop104对应4
-
cd /opt/service/zookeeper-3.5.7/zkData/ vim myid

-
-
封装zookeeper集群启停脚本(hadoop102容器上操作)
-
cd ~/bin/ touch zk_cluster.sh chmod 744 zk_cluster.sh vim zk_cluster.sh#!/bin/bashif [ $# -lt 1 ] thenecho '参数不能为空!!!'exit fifor host in hadoop102 hadoop103 hadoop104 docase $1 in"start")echo "$1*****$host*******ZK**********"ssh $host /opt/service/zookeeper-3.5.7/bin/zkServer.sh $1;;"stop")echo "$1*****$host*******ZK**********"ssh $host /opt/service/zookeeper-3.5.7/bin/zkServer.sh $1;;"status")echo "$1*****$host*******ZK**********"ssh $host /opt/service/zookeeper-3.5.7/bin/zkServer.sh $1;;*)echo '参数有误!!!'exit;;esac done到此zookeeper集群就搭建完成
-
搭建HBASE集群
-
上传软件包到hadoop102的/opt/software/目录下
-
cd /opt/software/
-
-
解压安装包
-
tar -zxvf hbase-2.0.5-bin.tar.gz -C /opt/service/
-
-
配置环境变量
-
vim /etc/profile.d/my_env.sh#hbase export HBASE_HOME=/opt/service/hbase-2.0.5 export PATH=$PATH:$HBASE_HOME/bin
-
source /etc/profile.d/my_env.sh
-
-
修改配置文件
-
#先到目录下 cd /opt/service/hbase-2.0.5/conf/ vim hbase-env.sh-
打开export HBASE_MANAGES_ZK=false配置
-

-
vim hbase-site.xml<configuration><property><name>hbase.rootdirname><value>hdfs://hadoop102:9820/hbasevalue>property><property><name>hbase.cluster.distributedname><value>truevalue>property><property><name>hbase.zookeeper.quorumname><value>hadoop102,hadoop103,hadoop104value>property> configuration> -
vim regionservershadoop102 hadoop103 hadoop104
-
-
-
分发文件
-
cd /opt/service/ my_rsync.sh hbase-2.0.5/ my_rsync.sh /etc/profile.d/my_env.sh
-
-
启动测试
-
#启动Hadoop集群 my_cluster.sh start #启动zookeeper集群 zk_cluster.sh start #启动Hbase start-hbase.sh -

-
在物理机访问8.8.8.102:16010
-

若进程和我一样,并且能访问web那个界面证明hbase就安装成功了
-
搭建SQOOP集群
-
我们在hadoop103上配置
-
上传软件包到/opt/software/
-
cd /opt/software/
-
-
解压软件包
-
tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C /opt/service/
-
-
修改名字
-
mv sqoop-1.4.7.bin__hadoop-2.6.0/ sqoop-1.4.7
-
-
配置环境变量
-
vim /etc/profile.d/my_env.sh#sqoop export SQOOP_HOME=/opt/service/sqoop-1.4.7 export PATH=$PATH:$SQOOP_HOME/bin
source /etc/profile.d/my_env.sh
-
-
修改配置文件
-
cd $SQOOP_HOME/conf #重命名配置文件 mv sqoop-env-template.sh sqoop-env.sh vim sqoop-env.sh
-
-
拷贝jdbc驱动到sqoop的lib
-
#到了这个目录上传驱动 cd $SQOOP_HOME/lib
-
-
验证连接
-
sqoop list-databases --connect jdbc:mysql://hadoop102:3306/ --username root --password 123456
如此便成功安装sqoop
-
搭建Kafaka集群(hadoop102上操作)
-
上传软件包到/opt/software/
-
cd /opt/software/
-
-
解压软件包
-
tar -zxvf kafka_2.11-2.4.1.tgz -C /opt/service/
-
-
修改名字
-
cd /opt/service/ mv kafka_2.11-2.4.1/ kafka
-
-
配置环境变量
-
vim /etc/profile.d/my_env.sh#kafka export KAFKA_HOME=/opt/service/kafka export PATH=$PATH:$KAFKA_HOME/bin
-
-
分发文件(分发完之后三个容器都运行一下 source /etc/profile.d/my_env.sh)
-
my_rsync.sh /etc/profile.d/my_env.sh
-
-
修改配置文件
-
cd $KAFKA_HOME/config vim server.properties-
修改broker.id
-
broker.id=2

-
-
修改log.dirs
-
log.dirs=/opt/service/kafka/logs
-
-
修改zookeeper.connect
-
zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181/kafka
-
-
-
-
分发文件
-
cd /opt/service/ my_rsync.sh kafka/
-
-
修改另外两个容器的broker.id
-
到hadoop103
-
vim /opt/service/kafka/config/server.properties
-
-
到hadoop014
-
vim /opt/service/kafka/config/server.properties
-
-
-
启动测试
-
编写群起脚本
-
cd ~/bin/ touch kafka_all.sh chmod 744 Kafka_all.sh vim kafka_all.sh#!/bin/bashfor host in hadoop102 hadoop103 hadoop104 dossh $host kafka-server-start.sh -daemon /opt/service/kafka/config/server.properties done
-
-
启动之前一定要先启动zookeeper,可以先查看状态(只启动zookeeper就可以了,其他东西尽量关掉)
-
my_jps.sh
-
-
启动kafka
-
kafka_all.sh#查看所有jps my_jps.sh
如果和我进程一样就说明成功安装好了kafka
-
-
搭建Spark集群
-
上传文件到/opt/software
-
cd /opt/software
-
-
解压文件
-
tar -zxvf spark-3.0.0-bin-hadoop3.2.tgz -C /opt/service/
-
-
修改文件名
-
cd /opt/service mv spark-3.0.0-bin-hadoop3.2/ spark-standalone
-
-
修改配置文件
-
cd /opt/service/spark-standalone/conf/ #修改文件名 mv slaves.template slaves vim slaves-
hadoop102 hadoop103 hadoop104
-
-
mv spark-env.sh.template spark-env.sh vim spark-env.shexport JAVA_HOME=/opt/service/jdk1.8.0_212 SPARK_MASTER_HOST=hadoop102 SPARK_MASTER_PORT=7077
-
-
分发文件
-
cd /opt/service/ my_rsync.sh spark-standalone/
-
-
启动集群
-
cd /opt/service/spark-standalone/ sbin/start-all.sh -
使用my_jps.sh查看进程
-

-
访问web ui
-
8.8.8.102:8080
-
-
-
如此便安装成功
-
搭建Redis
-
上传文件到/opt/software/
-
cd /opt/software/
-
-
解压文件
-
tar -zxvf redis-5.0.2.tar.gz -C /opt/service/
-
-
进入解压目录执行make命令
-
#先下载依赖包 yum -y install gcc automake autoconf libtool make cd /opt/service/redis-5.0.2/ make
-
-
执行make install 创建快捷方式
-
cd /opt/service/redis-5.0.2/ make install
-
-
启动redis
-
redis-server
-
如此便完全安装成功了
-
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!





