大数据集群/环境搭建指南

一、简介

(一) 集群

配置的集群架构如下所示。

序号

主机名

IP

1

master

192.168.128.130

2

slave1

192.168.128.131

3

slave2

192.168.128.132

(二) 软件

大数据实验环境涉及的相关软件如下所示。

序号

软件

软件安装包名

1

VMware

VMware-workstation-full-16.1.0-17198959.exe

2

CentOS

CentOS-7-x86_64-DVD-2003.iso

3

Xme

Xme5.exe

4

JDK

jdk-8u281-linux-x64.rpm、jdk-8u281-windows-x64.exe

5

Hadoop

hadoop-3.1.4.tar.gz

6

Hive

apache-hive-3.1.2-bin.tar.gz

7

MySQL 驱动

mysql-connector-java-8.0.26.jar

8

Zookeeper

apache-zookeeper-3.6.3-bin.tar.gz

9

HBase

hbase-2.4.11-bin.tar.gz

10

Scala

scala-2.11.5.tgz

11

Spark

spark-3.2.1-bin-hadoop2.7.tgz

12

Flume

apache-flume-1.9.0-bin.tar.gz

13

Kafka

kafka_2.11-2.3.1.tgz

14

Flink

flink-1.10.1-bin-scala_2.11.tgz

二、虚拟机创建配置及连接

(一) 前置安装及配置

  1. 本地电脑需安装好 VMware,版本须为 16 或者以上。
  2. 本地电脑的环境变量中应先配置好 Java 环境变量。

(二) 虚拟机 master 创建

(三) 虚拟机配置

  1. 虚拟机系统安装

  1. IP 配置

为了能用 Xshell 连接主机,同时也为了集群中的节点可以相互通信,接下来对节点进行 IP 设置。

(1)进入刚刚创建好的虚拟机,输入【service network restart】重启网络,结

果如下。

(2))通过命令【vi /etc/sysconfig/network-scripts/ifcfg-ens33】进入配置文件, 并修改成如下形式。

# 修 改 : BOOTPROTO=static ONBOOT=yes

#添加以下内容NM_CONTROLLED=no IPADDR=192.168.128.130 NETMASK=255.255.255.0 GATEWAY=192.168.128.2

DNS1=192.168.128.2

(3)输入【service network restart】重启网络,之后使用【ip addr】可查看到IP 已经修改成功。

  1. 编辑虚拟网络编辑器

点击编辑 VMware 窗口栏处的“编辑”->“虚拟网络编辑器”,按照下图对编辑虚拟网络进行修改。

(四) Xshell 连接

1.创建会话

2.连接对话

3.配置 YUM

(1)在 VMware 软件中,右键单击 master 虚拟机,在弹出的快捷菜单中选择“设置”命令,弹出“虚拟机设置”对话框,进行如下设置。

(2)在 Xshell 界面执行如下命令配置 YUM 源。

mkdir /media/cdrom

mount /dev/cdrom /media/cdrom/

echo "/dev/cdrom /media/cdrom iso9660 defaults 0 0" >> /etc/fstab df -HT

cd /etc/yum.repos.d mkdir ./bak

mv ./*.repo ./bak

cp ./bak/CentOS-Media.repo ./ vi ./CentOS-Media.repo

(3)为了方便后续操作,为该虚拟机安装一些软件。

yum -y install vim wget ntp

(五) 克隆虚拟机

  1. 在 VMware 软件中,右键单击 master 虚拟机,在弹出的快捷菜单中选择“管理”-“克隆”,之后进行如下克隆操作。

  1. 按照同样方法从 master 克隆出 slave2。
  2. 开启 slave1 和 slave2,输入【vi /etc/sysconfig/network-scripts/ifcfg-ens33】,删除其中的 UUID 行,并修改 IPADDR 后面的 IP。(slave1 和 slave2 分别改为192.168.128.131 和 192.168.128.132)
  3. 输入【service network restart】命令重启网络服务,之后使用【ip addr】命令查看 IP 是否已经成功修改。
  4. 分别在 slave1 和 slave2 执行【hostnamectl set-hostname slave1】和【hostnamectl set-hostname slave2】命令修改主机名,之后重启虚拟机即可发现主机名已经更改成功。
  5. 在 Xshell 按照连接 master 步骤依次创建连接 slave1 和 slave2 的会话。

三、个人本地环境配置

(一) Hadoop 配置

  1. 安装 JDK(每个节点都需安装)    通过 Xmanager 的 Xftp 上传 JDK 安装包到虚拟机/opt 目录,进入/opt 目录,执行命令【rpm -ivh jdk-8u281-linux-x64.rpm】安装 JDK。
  2.  Hadoop-3.1.4 配置(master)      通过 Xmanager 的 Xftp 上传 Hadoop 安装包到/opt 目录,进入/opt 目录。执行【tar -zxf hadoop-3.1.4.tar.gz -C /usr/local】命令解压缩 hadoop- 3.1.4.tar.gz 文件,解压后即可看到/usr/local/hadoop-3.1.4 文件夹。
  3. 配置 Hadoop

① 进入目录

cd /usr/local/hadoop-3.1.4/etc/hadoop/

依次修改以下配置文件:

文件中存在<configuration></configuration>配置放入其中且只保留一组<configuration></configuration>

② 修改配置文件 core-site.xml

修改配置文件 hadoop-env.sh

export JAVA_HOME=/usr/java/jdk1.8.0_281-amd64

④修改配置文件 hdfs-site.xml

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>file:///data/hadoop/hdfs/data</value>

</property>

<property>

<name>dfs.namenode.secondary.http-address</name>

<value>master:50090</value>

</property>

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

</configuration>

⑤修改配置文件 mapred-site.xml

⑥修改配置文件 yarn-site.xml


⑦ 修改配置文件 yarn-env.sh

⑧ 修改配置文件 workers

删除原有 localhost,添加如下内容。

slave1

slave2

4..对启动命令赋予权限设置

  1. ① 进入到启动命令所在位置。
  2. cd /usr/local/hadoop-3.1.4/sbin  注:参数添加位置应为开头原注释内容的后一行起。
  3. ② 修改 start-dfs.sh 和 stop-dfs.sh
  4. HDFS_DATANODE_USER=root

    HADOOP_SECURE_DN_USER=hdfs

    HDFS_NAMENODE_USER=root

    HDFS_SECONDARYNAMENODE_USER=root

  5. 修改 start-yarn.sh stop-yarn.sh
  6. YARN_RESOURCEMANAGER_USER=root
  7. HADOOP_SECURE_DN_USER=yarn

  8. YARN_NODEMANAGER_USER=root

  9. (5)配置 IP 映射,在/etc/hosts 添加如下内容。(每个节点都需修改)

  10. 192.168.128.130 master master.centos.com

    192.168.128.131 slave1 slave1.centos.com

    192.168.128.132 slave2 slave2.centos.com

  11. (6)拷贝 Hadoop 安装文件到集群 slave 节点。(依次输入【yes】,【123456】)

  12. scp -qr /usr/local/hadoop-3.1.4 slave1:/usr/local

    scp -qr /usr/local/hadoop-3.1.4 slave2:/usr/local

  13. (7)在/etc/profile 添加 Hadoop 路径

  14. export JAVA_HOME=/usr/java/jdk1.8.0_281-amd64

  15. export HADOOP_HOME=/usr/local/hadoop-3.1.4

    export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin

  16. 最后,修改后执行【source /etc/profile】命令使其生效。

  17. 3.配置无密码登录

  18. (1)使用 ssh-keygen 产生公钥与私钥对。输入命令【ssh-keygen -t rsa】,接着按三次 Enter 键。执行后出现如下输出:

  19. 生成私有密钥 id_rsa 和公有密钥 id_rsa.pub 两个文件。ssh-keygen 用来生成RSA 类型的密钥以及管理该密钥,参数“-t”用于指定要创建的 SSH 密钥的类型为 RSA。

  20. (2)用 ssh-copy-id 将公钥复制到远程机器中
  21. ssh-copy-id -i /root/.ssh/id_rsa.pub master

  22. ssh-copy-id -i /root/.ssh/id_rsa.pub slave1

  23. ssh-copy-id -i /root/.ssh/id_rsa.pub slave

  24. (3)验证是否设置无密码登录。

  25. ssh master exit;

    ssh slave1 exit;

    ssh slave2

    exit;

  26. 4.配置时间同步服务

  27. (1)在各个节点安装 NTP 服务。

  28. yum -y install ntp

  29. (2)修改设置

  30. 假设 master 节点为 NTP 服务主节点,那么其配置如下。使用命令【vim

    /etc/ntp.conf】打开/etc/ntp.conf 文件,注释掉以 restrict default 开头以及 server 开头的行,并添加如下内容。

  31. restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap

    server 127.127.1.0

    fudge 127.127.1.0 stratum 10

  32. (3)在 slave 中配置 NTP

  33. 同样修改/etc/ntp.conf 文件,注释掉 server 开头的行,并添加如下内容。

    server master

    (4)关闭防火墙
  34. 执行命令【systemctl stop firewalld.service】和【systemctl disable firewalld.service】永久性关闭防火墙,主节点和从节点都要关闭。

  35. (5)启动 NTP 服务

  36.  ①在 master 节点执行命令【service ntpd start】和【chkconfig ntpd on】。

    在各个 slave 节点上执行命令【ntpdate master】获取同步时间初值。

    在各个 slave 节点上执行【service ntpd start】和【chkconfig ntpd on】即可开启并永久启动 NTP 服务。

  37. 5.启动 Hadoop 集群

    (1)格式化NameNode

  38. 注:Hadoop 集群只需要一次格式化即可,后续启动无需格式化。

    cd /usr/local/hadoop-3.1.4/bin

    ./hdfs namenode -format

  39. (2)启动集群
  40. 在主节点进入目录
  41. cd /usr/local/hadoop-3.1.4/sbin
  42. 执行启动
  43. ./start-dfs.sh

    ./start-yarn.sh

    ./mr-jobhistory-daemon.sh start historyserver
  44. (3)使用【jps】,查看进程
  45. 节点

    jps 进程

    master 节点

    NameNode SecondaryNameNode JobHistoryServer

    Jps

    ResourceManager

    slave 节点

    Jps

    DataNode

    NodeManager


       (4)在本地电脑添加映射
  46. 在 Windows 下 C:\Windows\System32\drivers\etc\hosts 添加 IP 映射
  47. 192.168.128.130 master

    192.168.128.131 slave1

    192.168.128.132 slave2

  48. (5)浏览器查看

  49. http://master:9870

    http://master:8088

  50. (6)关闭集群

  51. ./stop-yarn.sh

    ./stop-dfs.sh

    ./mr-jobhistory-daemon.sh stop historyserver

  52. (二) Hive 配置

  53. (1)设置 mysql8.x 的 yum 源

      (a).wget 下载 mysql8.x 源。

yum localinstall -y /opt/mysql80-community-release-el7-3.noarch.rpm

  1. wget -P /opt https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

    (b)加载本地 yum 源。
  2. (c)查询是否存在 MySQL 安装包。

    yum search mysql

    (d)下载 MySQL 服务。

    yum install -y mysql-community-server.x86_64 --nogpgcheck

    (e)开启 MySQL 服务。

    service mysqld start

    (2)MySQL 密码设置

    (A)查询 MySQL 初始密码。

    cat /var/log/mysqld.log | grep password

    (B)使用初始密码登录。

    mysql -u root -p

    (C)重设密码。

    alter user 'root'@'localhost' identified by '初始密码+a';

    (D)修改 8.0 密码规则。

set global validate_password.policy=LOW;

set global validate_password.length=6;

 (E)设置自定义密码。

alter user 'root'@'localhost' identified by '123456';

 

(3)赋予外部连接权限

create user 'root'@'%' identified by '123456';

grant all privileges on *.* to 'root'@'%' with grant option; flush privileges;

 2.Hive配置

(1))通过 Xmanager 的 Xftp 将安装包 apache-hive-3.1.2-bin.tar.gz 上传到/opt/目录下,之后进入到/opt 目录下执行解压缩命令解压安装包到/usr/local/目录下

tar -zxf apache-hive-3.1.2-bin.tar.gz -C /usr/local/

 (2)进入到 Hive 的安装目录的 conf 目录下,重命名 hive-env.sh.template 为

hive-env.sh,修改 hive-env.sh 文件,在末尾添加如下内容。

export HADOOP_HOME=/usr/local/hadoop-3.1.4

 (3)在 Hive 的安装目录的 conf 目录下【touch hive-site.xml】新建配置文件, 加入如下内容

 

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

<property>

<description>Hive 使用该目录存储不同 map/reduce 阶段的计划及阶段的中间输出</description>

<name>hive.exec.scratchdir</name>

<value>hdfs://master:8020/user/hive/tmp</value>

</property>

<property>

<description>元数据库位置</description>

<name>hive.metastore.warehouse.dir</name>

<value>hdfs://master:8020/user/hive/warehouse</value>

</property>

<property>

<description>Hive 运行时结构化日志文件的位置</description>

<name>hive.querylog.location</name>

<value>hdfs://master:8020/user/hive/log</value>

</property>

<property>

<description>目标元数据库</description>

 

<name>hive.metastore.uris</name>

<value>thrift://master:9083</value>

</property>

<property>

<description>元数据连接字符串</description>

<name>javax.jdo.option.ConnectionURL</name>

<value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true</value>

</property>

<property>

<description>元数据连接驱动类名</description>

<name>javax.jdo.option.ConnectionDriverName</name>

<value>com.mysql.cj.jdbc.Driver</value>

</property>

<property>

<description>元数据连接时的用户名</description>

<name>javax.jdo.option.ConnectionUserName</name>

<value>root</value>

</property>

<property>

<description>元数据连接时的用户密码</description>

<name>javax.jdo.option.ConnectionPassword</name>

<value>123456</value>

</property>

<property>

<description>允许多线程同时通过 JDO 访问元数据</description>

<name>javax.jdo.option.Multithreaded</name>

<value>true</value>

</property>

<property>

<description>HiveServer2 Thrift 接口的端口号</description>

<name>hive.server2.thrift.port</name>

<value>10000</value>

</property>

<property>

<description>运行 HiveServer2 Thrift 接口的主机</description>

<name>hive.server2.thrift.bind.host</name>

<value>master</value>

</property>

</configuration>

(4) 上传 MySQL 驱动 mysql-connector-java-8.0.26.jar 到/usr/local/apache-hive- 3.1.2-bin/lib 目录

cp /opt/mysql-connector-java-8.0.26.jar /usr/local/apache-hive-3.1.2-bin/lib/

(5)将 Hive 安装目录 lib 下的 jline-2.12.jar 同步到 Hadoop 类库中,勿忘子节点同样需要同步 

 

cp /usr/local/apache-hive-3.1.2-bin/lib/jline-2.12.jar /usr/local/hadoop- 3.1.4/share/hadoop/yarn/lib/

scp /usr/local/apache-hive-3.1.2-bin/lib/jline-2.12.jar slave1:/usr/local/hadoop- 3.1.4/share/hadoop/yarn/lib/

scp /usr/local/apache-hive-3.1.2-bin/lib/jline-2.12.jar slave2:/usr/local/hadoop-

3.1.4/share/hadoop/yarn/lib/

(6) 删除 Hive 安装目录 lib 下的 guava-19.0.0.jar 包,并将 Hadoop 类库中的新版 guava 包同步过来

rm -f /usr/local/apache-hive-3.1.2-bin/lib/guava-19.0.jar

cp /usr/local/hadoop-3.1.4/share/hadoop/common/lib/guava-27.0-jre.jar

/usr/local/apache-hive-3.1.2-bin/lib

(7) 设置环境变量【vim /etc/profile】

export HIVE_HOME=/usr/local/apache-hive-3.1.2-bin

export PATH=$PATH:$HIVE_HOME/bin

添加环境变量后执行【source /etc/profile】使其修改内容生效。 

(8) 进入 MySQL 数据库创建 Hive 数据库

mysql -u root -p123456 create database hive;

alter database hive character set latin1;

(9) 初始化元数据库,进入 Hive 安装包 bin 目录

schematool -dbType mysql -initSchema

(10) 在 Hadoop 集群已启动的情况下启动 Hive 服务

hive --service metastore &

 根据个人需求开启 hiveserver2 服务。

nohup hive --service hiveserver2 &

 (11)进入 Hive 命令窗口

/usr/local/apache-hive-3.1.2-bin/bin/hive

 

(三) Zookeeper 配置

  • 1。解压缩

通过 Xmanager 的 Xftp 上传 apache-zookeeper-3.6.3-bin.tar.gz 安装包到master 节点的/opt 目录下,之后解压缩到/usr/local/目录下。

tar -zxf /opt/apache-zookeeper-3.6.3-bin.tar.gz -C /usr/local/

  • 2.进入安装路径的 conf 目录下

cd /usr/local/apache-zookeeper-3.6.3-bin/conf

  • 3.复制 zoo_sample.cfg 重命名为 zoo.cfg

cp zoo_sample.cfg zoo.cfg

 zoo.cfg 配置文件修改内容如下。(注:原文件中部分参数同下表重复,需要注释或删除原有参数。)

dataDir=/usr/lib/zookeeper

dataLogDir=/var/log/zookeeper

clientPort=2181 tickTime=2000

initLimit=5

syncLimit=2

server.1=master:2888:3888

server.2=slave1:2888:3888

server.3=slave2:2888:3888

  •  4.各个节点新建文件夹

mkdir /usr/lib/zookeeper

mkdir /var/log/zookeeper

vim /usr/lib/zookeeper/myid

  1. 在 master 的/usr/lib/zookeeper 目录下新建文件 myid,内容为 1。
  2. 在 slave1 的/usr/lib/zookeeper 目录下新建文件 myid,内容为 2。
  3. 在 slave2 的/usr/lib/zookeeper 目录下新建文件 myid,内容为 3。
  • 5.在 master 节点,给子节点分发 Zookeeper

scp -r /usr/local/apache-zookeeper-3.6.3-bin slave1:/usr/local/

scp -r /usr/local/apache-zookeeper-3.6.3-bin slave2:/usr/local/

  • 6.修改环境变量(所有节点)

export ZK_HOME=/usr/local/apache-zookeeper-3.6.3-bin

export PATH=$PATH:$ZK_HOME/bin

修改后执行【source /etc/profile】命令使其生效。

  • 7,.启动各个节点 Zookeeper

/usr/local/apache-zookeeper-3.6.3-bin/bin/zkServer.sh start

  • 8.查看各个节点的 Zookeeper 是否启动

/usr/local/apache-zookeeper-3.6.3-bin/bin/zkServer.sh status

  • 9.关闭各个节点 Zookeeper

/usr/local/apache-zookeeper-3.6.3-bin/bin/zkServer.sh stop

 

(四) HBase 配置

  1. 解压缩

通过 Xmanager 的 Xftp 上传 hbase-2.4.11-bin.tar.gz 压缩包到/opt 目录,之后执行命令解压缩 hbase-2.4.11-bin.tar.gz 文件。

tar -zxf /opt/hbase-2.4.11-bin.tar.gz -C /usr/local

2.进入目录

cd /usr/local/hbase-2.4.11/conf

3..修改 hbase-site.xml 文件

<configuration>

<property>

<description>指定 HBase 运行模式,false 单机,true 分布式</description>

<name>hbase.cluster.distributed</name>

<value>true</value>

</property>

<property>

<name>hbase.tmp.dir</name>

<value>./tmp</value>

</property>

<property>

<description>不检查流能力</description>

<name>hbase.unsafe.stream.capability.enforce</name>

<value>false</value>

</property>

<property>

<description>HBase 持久化目录</description>

<name>hbase.rootdir</name>

<value>hdfs://master:8020/hbase</value>

</property>

<property>

<description>指定 HBase Master</description>

<name>hbase.master</name>

<value>master</value>

</property>

<property>

<description>zookeeper 客户端连接端口</description>

<name>hbase.zookeeper.property.clientPort</name>

<value>2181</value>

</property>

<property>

<description>zookeeper 集群地址列表,逗号分隔</description>

<name>hbase.zookeeper.quorum</name>

<value>master,slave1,slave2</value>

</property>

<property>

<description>zookeeper 会话最大超时时间</description>

<name>zookeeper.session.timeout</name>

<value>60000000</value>

</property>

<property>

<description>HDFS 是否允许追加文件</description>

<name>dfs.support.append</name>

<value>true</value>

</property>

</configuration>

4.配置 hbase-env.sh

# 打开注释行(倒数第五行)

export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"

# 在文件末尾添加内容:

export HBASE_CLASSPATH=/usr/local/hadoop-3.1.4/etc/hadoop export JAVA_HOME=/usr/java/jdk1.8.0_281-amd64

export HBASE_MANAGES_ZK=false

5.配置 regionservers

删除原来的 localhost,添加如下内容。

master

slave1

slave2

6.拷贝到子节点

scp -r /usr/local/hbase-2.4.11/ slave1:/usr/local/

scp -r /usr/local/hbase-2.4.11/ slave2:/usr/local/

7. 修改环境变量

export HBASE_HOME=/usr/local/hbase-2.4.11

export PATH=$PATH:$HBASE_HOME/bin

修改后执行【source /etc/profile】命令使其生效。

8.主节点启动

启动前要先确保启动了 Zookeeper 和 Hadoop 集群。

cd /usr/local/hbase-2.4.11/bin/

./start-hbase.sh

9. 在浏览器查看

http://192.168.128.130:16010

10.关闭集群

./stop-hbase.sh

 

(五) Scala 配置

  1. 解压安装包

通过 Xmanager 的 Xftp 上传 scala-2.11.5.tgz 压缩包到/opt 目录,之后执行命令解压缩 scala-2.11.5.tgz 文件。

tar -zxf /opt/spark-3.2.1-bin-hadoop2.7.tgz -C /usr/local/

2.修改环境变量

export SCALA_HOME=/usr/local/scala-2.11.5

export PATH=$PATH:$SCALA_HOME/bin

修改后执行【source /etc/profile】命令使其生效。

3.启动 Scala

# 查看版本scala -version # 启动

scala

# 退出

:quit

 

 

(六) Spark 配置

  1. 解压安装包

通过 Xmanager 的 Xftp 上传 spark-3.2.1-bin-hadoop2.7.tgz 压缩包到/opt 目录,之后执行命令解压缩 spark-3.2.1-bin-hadoop2.7.tgz 文件。

tar -zxf /opt/spark-3.2.1-bin-hadoop2.7.tgz -C /usr/local/

2.修改环境变量(所有节点)

export SPARK_HOME=/usr/local/spark-3.2.1-bin-hadoop2.7

export PATH=$PATH:$SPARK_HOME/bin

修改后执行【source /etc/profile】命令使其生效。

3.修改 slaves

# 进入目录

cd /usr/local/spark-3.2.1-bin-hadoop2.7/conf cp workers.template workers

vim workers

删除掉原 localhost 后添加以下内容。

slave1

slave2

 

4.修改 spark-defaults.conf

cp spark-defaults.conf.template spark-defaults.conf

vim spark-defaults.conf

添加以下内容。

spark.master                                          spark://master:7077

spark.eventLog.enabled                      true

spark.eventLog.dir                                                                                 hdfs://master:8020/spark-logs spark.history.fs.logDirectory                                                        hdfs://master:8020/spark-logs

5.修改 spark-env.sh

cp spark-env.sh.template spark-env.sh

vim spark-env.sh

添加以下内容。

JAVA_HOME=/usr/java/jdk1.8.0_281-amd64

HADOOP_CONF_DIR=/usr/local/hadoop-3.1.4/etc/hadoop

SPARK_MASTER_IP=master

SPARK_MASTER_WEBUI_PORT=8085

SPARK_MASTER_PORT=7077

SPARK_WORKER_MEMORY=512m

SPARK_WORKER_CORES=1

SPARK_EXECUTOR_MEMORY=512m

SPARK_EXECUTOR_CORES=1

SPARK_WORKER_INSTANCES=1

6.在 HDFS 中新建目录(需先开启 Hadoop 集群)

hdfs dfs -mkdir /spark-logs

7.发送至其余节点

scp -qr /usr/local/spark-3.2.1-bin-hadoop2.7/ slave1:/usr/local/

scp -qr /usr/local/spark-3.2.1-bin-hadoop2.7/ slave2:/usr/local/

8.启动 Spark 集群

cd /usr/local/spark-3.2.1-bin-hadoop2.7/sbin

./start-all.sh

9.在浏览器查看

http://192.168.128.130:8085

10.关闭 Spark 集群

./stop-all.sh

 

(七) Flume 配置

1.解压安装包

通过 Xmanager 的 Xftp 上传 apache-flume-1.9.0-bin.tar.gz 压缩包到/opt 目录,之后执行命令解压缩 apache-flume-1.9.0-bin.tar.gz 文件。

tar -zxvf /opt/apache-flume-1.9.0-bin.tar.gz -C /usr/local

2. 修改 flume-env.sh 文件

cd /usr/local/apache-flume-1.9.0-bin/conf cp flume-env.sh.template flume-env.sh

vim flume-env.sh

添加 JDK 位置信息。

export JAVA_HOME=/usr/java/jdk1.8.0_281-amd64/

3. Hadoop 依赖修改

删除 Flume 安装目录 lib 中的 guava 包,并将 Hadoop 中的新版 guava 依赖包复制到 Flume 安装目录 lib 下。

ls /usr/local/apache-flume-1.9.0-bin/lib | grep guava

rm -f /usr/local/apache-flume-1.9.0-bin/lib/guava-11.0.2.jar

cp /usr/local/hadoop-3.1.4/share/hadoop/common/lib/guava-27.0-jre.jar

/usr/local/apache-flume-1.9.0-bin/lib

4. 修改环境变量

export FLUME_HOME=/usr/local/apache-flume-1.9.0-bin

export PATH=$PATH:$FLUME_HOME/bin

修改后执行【source /etc/profile】命令使其生效。

(八) Kafka 配置(Kafka 需要部署在有 Zookeeper 的节点上)

  1. 解压安装包
通过 Xmanager 的 Xftp 上传 kafka_2.11-2.3.1.tgz 安装包到 master 节点的/opt 目录下,之后解压缩到/usr/local/目录下。

tar -zxvf /opt/kafka_2.11-2.3.1.tgz -C /usr/local

2. 修改环境变量(所有节点)

export KAFKA_HOME=/usr/local/kafka_2.11-2.3.1

export PATH=$PATH:$KAFKA_HOME/bin

修改后执行【source /etc/profile】命令使其生效。

3.修改 server.properties

cd /usr/local/kafka_2.11-2.3.1/config

vim server.properties

修改以下内容。

broker.id=0

#此部分参数为设置节点的 Zookeeper 连接

zookeeper.connect=master:2181,slave1:2181,slave2:2181

log.dirs=/usr/local/logs/kafka-logs

4.发送至其余节点

scp -r /usr/local/kafka_2.11-2.3.1 slave1:/usr/local/

scp -r /usr/local/kafka_2.11-2.3.1 slave2:/usr/local/

将 slave1 和 slave2 节点的 server.properties 文件中的 broker.id 分别修改为 1、2。

5.启动各个节点的 Kafka(需先启动各个节点的 Zookeeper)

cd /usr/local/kafka_2.11-2.3.1/

bin/kafka-server-start.sh -daemon config/server.properties

(九) Flink 配置

 

  1. 解压安装包

tar -zxf /opt/flink-1.10.1-bin-scala_2.11.tgz -C /usr/local

2. 修改环境变量

export FLINK_HOME=/usr/local/flink-1.10.1

export PATH=$PATH:$FLINK_HOME/bin

修改后执行【source /etc/profile】命令使其生效。

3.修改配置文件/usr/local/flink-1.10.1/conf/flink-conf.yaml

jobmanager.rpc.address: 192.168.128.130

jobmanager.heap.size: 512m

#taskmanager.memory.process.size: 1728m

taskmanager.memory.flink.size: 1024m

taskmanager.numberOfTaskSlots: 3

parallelism.default: 1

rest.address: 192.168.128.130

rest.bind-address: 192.168.128.130

io.tmp.dirs: /var/log/flink/tmp

4. 修改配置文件 /conf/slaves

删除原来 localhost 后添加如下内容。

master slave1

slave2

5. 修改配置文件/conf/masters

删除原来 localhost:8081 后添加如下内容。

master:8081

6. 拷贝安装文件到子节点

scp -r /usr/local/flink-1.10.1 slave1:/usr/local

scp -r /usr/local/flink-1.10.1 slave2:/usr/local

7. 在每个节点上创建日志文件目录

mkdir -p /var/log/flink/tmp

8.启动 Flink

/usr/local/flink-1.10.1/bin/start-cluster.sh

9,查看 jps 主节点:

Jps

StandaloneSessionClusterEntrypoint TaskManagerRunner

子节点:

Jps

TaskManagerRunner

四、提供的虚拟机--环境使用说明

(一) 虚拟机

用户名:root      密码:123456

主节点为 master,2 个从节点分别为 slave1 和 slave2。

(二) MySQL

用户名:root      密码:123456

通过命令【mysql -u root -p】输入密码,进入 MySQL 命令窗口。在 MySQL 命令窗口输入【exit;】即可退出。

(三) Hadoop 集群

  1. 启动

在主节点执行命令【cd /usr/local/hadoop-3.1.4/sbin】进入目录,执行命令

【./start-dfs.sh】、【./start-yarn.sh】、【./mr-jobhistory-daemon.sh start historyserver】

启动集群。

  1. 关闭

在主节点执行命令【cd /usr/local/hadoop-3.1.4/sbin】进入目录,执行命令

【./stop-dfs.sh】、【./stop-yarn.sh】、【./mr-jobhistory-daemon.sh stop historyserver】关闭集群。

  1. 浏览器查看

http://master:9870

http://master:8088

(四) Hive

  1. 启动
  1. 通过命令【service mysqld start】启动 MySQL 服务。
  2. 通过命令【/usr/local/hadoop-3.1.4/sbin/start-all.sh】启动 Hadoop 集群。
  3. 再通过命令【hive --service metastore &】、【nohup hive --service hiveserver2 &】分别启动 Hive 元数据服务和远程连接服务。
  4. 然后输入【/usr/local/apache-hive-3.1.2-bin/bin/hive】进入 Hive 命令窗口。
  1. 关闭
  1. 通过【exit;】退出 Hive 命令窗口,通过【ctrl+Z】退出 hiveserver2 命令窗口。
  2. 通过【jps】查看进程,使用命令【kill -9 Runjar 的进程号】停止 Runjar

进程。

  1. 通过命令【service mysqld stop】关闭 MySQL 服务。

(五) ZooKeeper 集群

  1. 启动

在所有节点分别执行命令【/usr/local/zookeeper-3.4.6/bin/zkServer.sh start】启动 Zookeeper。

  1. 关闭

在所有节点分别执行命令【/usr/local/zookeeper-3.4.6/bin/zkServer.sh stop】关闭 Zookeeper。

  1. 查看是否启动

在所有节点分别执行命令【/usr/local/zookeeper-3.4.6/bin/zkServer.sh status】查看各个子节点的 Zookeeper 是否启动,该命令需先开启所有节点的Zookeeper。

(六) Hbase 集群

1.启动

  1. 在主节点执行命令【ntp_update】启动时间同步服务。
  2. 执行命令【service mysqld start】启动 MySQL 服务。
  3. 在各节点的 Zookeeper 的安装目录下分别执行命令【zkSever.sh start】启动

ZooKeeper 集群。

4.执行命令【/usr/local/hbase-2.4.11/bin/start-hbase.sh】启动 Hbase 集群,通过命令

【hbase shell】进入 HBase 命令窗口。

2, 关闭

  1. 输入【exit】退出命令窗口。
  2. 在主节点执行命令【/usr/local/hbase-2.4.11/bin/stop-hbase.sh】关闭 Hbase 集群。
  3. 在各节点的 Zookeeper 的安装目录下分别执行命令【zkSever.sh stop】关闭ZooKeeper 集群。

(七) Scala

在主节点执行命令【cd /usr/local/scala-2.11.5/bin】进入目录,通过命令

【scala】进入交互式窗口,通过【:quit】或【:q】退出交互式窗口。

(八) Spark 集群

启动

在主节点执行命令【cd /usr/local/spark-3.2.1-bin-hadoop2.7/sbin】进入目 录,执行命令【./start-all.sh】启动 Spark 集群,通过命令【spark-shell】进入交互式窗口。(进入交互式窗口之前需要先开启 Hadoop 集群)

           关闭

Spark 退出交互式窗口方法与 Scala 一样,通过【:quit】或【:q】退出,通过命令【./stop-all.sh】关闭 Spark 集群。

    1. 浏览器查看

http://master:8085

 

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值