ubuntu虚拟机搭建hadoop+spark+zookeeper+hbase+kafka环境

tech2025-03-18  7

ubuntu虚拟机搭建hadoop+spark+zookeeper+hbase+kafka环境

一. 准备工作(软件所需及作用)二. ubuntu虚拟机搭建2.1 下载并运行vmware安装程序,并输入激活码2.2 vm工具栏简单介绍 三. ubuntu系统的安装3.1 启动vmware软件,点击‘文件’,选择‘新建虚拟机’,选择安装镜像文件。3.2 新建名称,用户名等(建议,配置某台机器比如master,涉及到名字,用户名就填master,遇到密码就全设置一样的,避免用户名和密码过多记忆混乱)3.3 选择ubuntu的路径进行安装3.4 设置虚拟机名称及在本机的存放位置。(涉及名称,建议如上)3.5 如无特殊需求,保持默认即可,继续点击,等待完成系统安装 四. 按理说,这步应该装vmware tools,如果使用命令行不影响操作,可以不装,但是由于后面要使用windows和ubuntu共享文件夹,这里简单介绍vmware tools安装。4.1 如果是第一次安装虚拟机并安装系统,这里的‘安装vmware tools’是可以点击的,直接点击按照提示安装即可。4.2 如果不是,那么就像下图一样,是灰色的,就需要从linux镜像中导入。下面讲解具体操作4.3 更改iso获取vmware tools 五. 配置Linux虚拟机SSH5.1 **首先更新一下"apt",执行以下的指令。**5.2 下载安装vim。5.3 安装SSH并配置无密码登入。5.3.1 输入如下指令,安装SSH。5.3.2 配置无密码登入。5.3.4 我这里使用Xshell连接虚拟机。 六. 安装jdk6.1 使用'cd'命令到windows和ubuntu共享的文件夹。将jdk压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码6.2 配置jdk环境变量6.3 测试java配置 七. scala 安装7.1 使用'cd'命令到windows和ubuntu共享的文件夹。将scala压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码7.2 配置scala环境变量,使用‘cd’命令到'/usr/local'文件夹下,下方代码是让‘master’用户获取‘scala-2.13.3’文件夹的操作权限,根据自己的用户和目录调整。7.3 测试scala,直接输入‘scala’,出现下方提示,‘:q’表示退出 八. hadoop 安装8.1 使用'cd'命令到windows和ubuntu共享的文件夹。将hadoop压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码8.2 测试hadoop版本8.3 Hadoop伪分布式配置8.4 测试 九. spark 安装9.1 使用'cd'命令到windows和ubuntu共享的文件夹。将spark压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码9.2 配置一下,以使得spark可以读取hdfs上的文件。 十. zookeeper 安装10.1 使用'cd'命令到windows和ubuntu共享的文件夹。将zookeeper压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码10.2 配置环境变量10.3 测试 十一. hbase 安装11.1 使用'cd'命令到windows和ubuntu共享的文件夹。将hbase压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码11.2 配置环境变量11.3 配置文件11.4 测试11.4.1 在启动 HBase 之前,必须将 Hadoop 和 Zookeeper 都启动起来,才可以起启动 HBase。 十二. kafka 安装12.1 使用'cd'命令到windows和ubuntu共享的文件夹。将kafka压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码12.2 配置环境变量12.3 测试12.3.1 测试前,要先启动zookeeper。12.3.2 测试生产者、消费者例子: 总结: (本文博客地址:https://blog.csdn.net/szk171848581/article/details/108396966)

一. 准备工作(软件所需及作用)

1.1- vmware安装包,ubuntu系统 --> 搭建虚拟机环境 1.2- jdk --> 安装java环境 1.3- xshell --> 本机可以连接虚拟机,可选择其他 1.4- scala --> 虚拟机用到的编程环境,可选择其他 1.5- hadoop --> 搭建hadoop环境 1.6- spark --> 搭建spark环境 1.7- hbase --> 搭建hbase环境 1.8- zookeeper --> 搭建zookeeper环境 1.9- kafka --> 搭建kafka环境 注- (软件如有需,文章后面会有网盘链接) 流程大致说明:为了简化操作,选用了图形版ubuntu,spark环境最终形式,1个主机(master)2个从机(slave1,slave2),由于虚拟机支持克隆操作,可以先配置好master,然后进行克隆并修改相关目录以简化重复操作。

二. ubuntu虚拟机搭建

2.1 下载并运行vmware安装程序,并输入激活码

2.2 vm工具栏简单介绍

文件 --> 创建新虚拟机 编辑 --> 管理虚拟机的网络,ip等 虚拟机 --> 管理虚拟机的启动,挂起,安装vmware tools等

三. ubuntu系统的安装

3.1 启动vmware软件,点击‘文件’,选择‘新建虚拟机’,选择安装镜像文件。

3.2 新建名称,用户名等(建议,配置某台机器比如master,涉及到名字,用户名就填master,遇到密码就全设置一样的,避免用户名和密码过多记忆混乱)

3.3 选择ubuntu的路径进行安装

3.4 设置虚拟机名称及在本机的存放位置。(涉及名称,建议如上)

3.5 如无特殊需求,保持默认即可,继续点击,等待完成系统安装

四. 按理说,这步应该装vmware tools,如果使用命令行不影响操作,可以不装,但是由于后面要使用windows和ubuntu共享文件夹,这里简单介绍vmware tools安装。

4.1 如果是第一次安装虚拟机并安装系统,这里的‘安装vmware tools’是可以点击的,直接点击按照提示安装即可。

4.2 如果不是,那么就像下图一样,是灰色的,就需要从linux镜像中导入。下面讲解具体操作

4.3 更改iso获取vmware tools

点击确定之后,需要重启客户机(虚拟机)。 重启查看是否可以安装vmware tools

五. 配置Linux虚拟机SSH

5.1 首先更新一下"apt",执行以下的指令。

sudo apt-get update

5.2 下载安装vim。

sudo apt-get install vim

5.3 安装SSH并配置无密码登入。

5.3.1 输入如下指令,安装SSH。

sudo apt-get install openssh-server

5.3.2 配置无密码登入。

ssh localhost cd ~/.ssh/ ssh-keygen -t rsa cat ./id_rsa.pub >> ./authorized_keys chmod 700 ~/.ssh chmod 644 ~/.ssh/authorized_keys

这里需要设置一下主机名和ip的对应关系,使用‘ifconfig’命令查看主机和从机的ip:

5.3.4 我这里使用Xshell连接虚拟机。

补充 windows和ubuntu共享文件夹设置 右键点击虚拟机,选择‘设置’

点击‘选项’,找到‘共享文件夹’,选择‘总是开启’,选择自己要共享的windows文件夹,将ubuntu需要用的安装包全都存放在此目录。 使用‘cd’命令查看windows和ubuntu共享的文件夹

cd /mnt/hgfs/共享文件夹 ls #查看共享文件夹下的文件 pwd #当前目录的路径

六. 安装jdk

6.1 使用’cd’命令到windows和ubuntu共享的文件夹。将jdk压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码

sudo tar -zxvf jdk-8u141-linux-x64.tar.gz -C /opt

6.2 配置jdk环境变量

sudo vim /etc/bash.bashrc

配置的内容如下(根据自己的文件夹修改目录):

#java conf export JAVA_HOME=/opt/jdk1.8.0_141 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH

6.3 测试java配置

七. scala 安装

7.1 使用’cd’命令到windows和ubuntu共享的文件夹。将scala压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码

sudo tar -zxf scala-2.13.3.tgz -C /usr/local

7.2 配置scala环境变量,使用‘cd’命令到’/usr/local’文件夹下,下方代码是让‘master’用户获取‘scala-2.13.3’文件夹的操作权限,根据自己的用户和目录调整。

sudo chown -R master ./scala-2.13.3

下方代码是打开环境变量编辑的文件

sudo vim /etc/bash.bashrc

在环境变量文件中增加下面的一行,目录根据实际调整。

#scala conf export PATH=/usr/local/scala-2.13.3/bin:$PATH

7.3 测试scala,直接输入‘scala’,出现下方提示,‘:q’表示退出

如无反应,建议重启再次查看

八. hadoop 安装

8.1 使用’cd’命令到windows和ubuntu共享的文件夹。将hadoop压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码

sudo tar -zxf hadoop-2.7.7.tar.gz -C /usr/local

8.2 测试hadoop版本

sudo chown -R master ./hadoop-2.7.7 cd /usr/local/hadoop-2.7.7/ ./bin/hadoop version

8.3 Hadoop伪分布式配置

8.3.1 首先配置hadoop的环境变量,输入’sudo vim /etc/bash.bashrc’指令,在环境变量配置文件的顶端加入如下语句,目录根据实际调整。

#hadoop conf export HADOOP_HOME=/usr/local/hadoop-2.7.7 export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export PATH="$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH" export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

8.3.2 立即激活环境变量配置文件,输入指令source ~/.bashrc 8.3.3 修改hadoop配置文件core-site.xml 和 hdfs-site.xml ,照样使用vim进行编辑,打开文件之后,在下面寻找‘configuration’标签。在<configuration 这里需要修改 /configuration>,修改如图。

#对core-site.xml文件修改 core-site.xml :vim /usr/local/hadoop-2.7.7/etc/hadoop/core-site.xml <configuration> <property> <name>hadoop.tmp.dir</name> <value>file:/usr/local/hadoop-2.7.7/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> #对hdfs-site.xml文件修改 hdfs-site.xml:vim /usr/local/hadoop-2.7.7/etc/hadoop/hdfs-site.xml <configuration> <property> <name>dfs.http.address</name> <value>master:50070</value> <descriptipn>配置 HDFS 的 http 的访问位置</descriptipn> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>master:50090</value> </property> <property> <name>dfs.replication</name> <value>3</value> <descriptipn>配置文件块的副本数,不能大于从机的个数</descriptipn> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:///home/sj/bigdata/work/name</value> <descriptipn>名字节点访问位置</descriptipn> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:///home/sj/bigdata/work/data</value> <descriptipn>数据节点访问位置</descriptipn> </property> </configuration> #对Slaves文件修改 Slaves:vim /usr/local/hadoop-2.7.7/etc/hadoop/Slaves #设置从节点 hostname,一行一个 slave1 slave2 slave3

对 yarn-env.sh (yarn 运行环境配置,修改如下位置)

export JAVA_HOME=/opt/jdk1.8.0_141

对 yarn-site.xml 文件修改如下:

<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>master:8088</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property> </configuration>

对 mapred-site.xml 文件修改如下:(先把模板文件复制一份,再修改配置)

<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>master:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>master:19888</value> </property> </configuration>

每台机器都要如上配置,克隆虚拟机可以简化操作,但涉及主机名和ip对应的地方请酌情修改

8.4 测试

对namenode节点进行格式化处理,如下命令。

/usr/local/hadoop-2.7.7/bin/hdfs namenode -format

开启节点进程。

/usr/local/hadoop-2.7.7/sbin/start-dfs.sh

输入jps查看一下是否成功启动

如无反应,建议重启再次查看

九. spark 安装

9.1 使用’cd’命令到windows和ubuntu共享的文件夹。将spark压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码

sudo tar -zxf spark-2.4.5-bin-hadoop2.7.tgz -C /usr/local/

9.2 配置一下,以使得spark可以读取hdfs上的文件。

使用户‘master’获取‘spark’文件夹的操作权限

sudo chown -R master /usr/local/spark-2.4.5-bin-hadoop2.7

切换到spark的安装目录的‘conf’文件夹下,将‘spark-env.sh.template ’复制重名命‘spark-env.sh’,然后使用‘sudo vim spark-env.sh’ 进行相应配置。

cp /usr/local/spark-2.4.5-bin-hadoop2.7/conf/spark-env.sh.template /usr/local/spark-2.4.5-bin-hadoop2.7/conf/spark-env.sh

使用vim配置spark环境

# 编辑spark的配置 sodu vim /usr/local/spark/conf/spark-env.sh

配置如下:

#jdk path export JAVA_HOME=/opt/jdk1.8.0_141 #hadoop path export HADOOP_HOME=/usr/local/hadoop-2.7.7 export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop #scala path export SCALA_HOME=/usr/local/scala-2.13.3 #spark path export SPARK_HOME=/usr/local/spark-2.4.5-bin-hadoop2.7 #spark master'ip, port, webui'port, core, instance,....... export SPARK_MASTER_IP=master export SPARK_MASTER_PORT=7077 export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$HADOOP_HOME/lib/nativei export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop-2.7.7/bin/hadoop classpath)

使用命令查看

/usr/local/spark/bin/spark-shell

进入spark-shell里面看看,执行下行指令,效果如图。

在master机器上测试:

在slave1上测试:

如无反应,建议重启再次查看

十. zookeeper 安装

10.1 使用’cd’命令到windows和ubuntu共享的文件夹。将zookeeper压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码

sudo tar -zxvf apache-zookeeper-3.5.8-bin.tar.gz -C /usr/local

10.2 配置环境变量

sudo vim /etc/bash.bashrc #zookeeper conf export ZOOKEEPER_HOME=/usr/local/apache-zookeeper-3.5.8-bin export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf

10.3 测试

使用‘cd’命令到zookeeper的‘bin’目录下后,使用下图中的命令开启zookeeper,并且查看zookeeper的状态。

十一. hbase 安装

11.1 使用’cd’命令到windows和ubuntu共享的文件夹。将hbase压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码

sudo tar -zxvf hbase-2.1.9-bin.tar.gz -C /usr/local

11.2 配置环境变量

sudo vim /etc/bash.bashrc #hbase conf export HBASE_HOME=/usr/local/hbase-2.1.9 export PATH=$PATH:$HBASE_HOME/bin

11.3 配置文件

四台机器上完全一样,只需要配置完成一台机器,再复制到其余三台机器上即可。文件全在$HBASE_HOME/conf 下。

cd /usr/local/hbase-2.1.9/conf

在 ‘hbase-env.sh’中修改如下

#java conf and zk export JAVA_HOME=/opt/jdk1.8.0_141 export HBASE_MANAGES_ZK=false #使用独立的 Zookeeper 而不使用内置的

在 ‘hbase-site.xml’ 中修改如下

<configuration> <property> <name>hbase.rootdir</name> <value>hdfs://master:9000/hbase</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> </configuration>

在 ‘regionservers’ 中修改如下(根据实际机器修改)

slave1 slave2

配置 backup Master,在 conf/目录下建立 backup-masters ,添加内容为

#新建文件 sudo vim backup-masters #内容 slave1

11.4 测试

11.4.1 在启动 HBase 之前,必须将 Hadoop 和 Zookeeper 都启动起来,才可以起启动 HBase。

在 master 主机上输入 jps:

在slave从机上输入 jps:

每台机器都要如上设置,或者克隆,请酌情修改主机名和ip对应位置

十二. kafka 安装

12.1 使用’cd’命令到windows和ubuntu共享的文件夹。将kafka压缩文件利用‘tar’解压缩到合适的目录,根据自己的目录修改下方代码

sudo tar -zxvf kafka_2.11-2.4.1.tgz -C /usr/local

12.2 配置环境变量

sudo vim /etc/bash.bashrc #kafka conf export KAFKA_HOME=/usr/local/kafka_2.11-2.4.1 export PATH=$PATH:$KAFKA_HOME/bin

12.3 测试

12.3.1 测试前,要先启动zookeeper。

12.3.2 测试生产者、消费者例子:

要将虚拟环境中全部的机器依次启动zookeeper,然后全部机器再依次启动kafka,接着在一台机器上启动生产者程序。有箭头标志出现后,可以进行发送数据,默认一行数据为一次发送。

最后,在一台机器或全部机器打开新的终端,运行消费者程序,进行接收消息。

至此,基本环境已经搭建好。

总结:

软件安装一共分为解压软件压缩包,配置环境变量,运行测试介个步骤。有的软件启动前需要将另外的软件先启动,比如,启动kafka之前要先启动zookeeper。 在运行测试环节,如果测试两次不成功建议重启虚拟机然后再进行测试;同时,运行测试时尽量在软件的根目录,比如 ‘ /usr/local/kafka_2.11-2.4.1’ 或者 ‘ /usr/local/kafka_2.11-2.4.1/bin ’目录下运行测试命令。 若有的命令没有权限,请在原命令最前方加上 ‘ sudo ’。一般涉及修改文件内容,命令都要加‘ sudo ’,通用格式 ‘ sudo vim xxxxx ’。

最新回复(0)