部署¶
Linux Debian 及其衍生系统环境¶
分布式部署架构图¶
重要
此架构最低要求4台物理机,且Hadoop与应用平台部署在一台服务器,模拟一个小规模的集群。
部署准备¶
相关组件压缩包
Spark3.0 (
spark-3.0.2-bin-hadoop2.7.tgz
)Hadoop2.7 (
hadoop-2.7.4.tar.gz
)JDK 1.8+ (
OpenJDK8U-jdk_x64_linux_hotspot_8u292b10.tar.gz
)
Jdbc 连接驱动及其它Jar包
节省繁琐的命令行操作,下载部署脚手架 ,解压后把组件包放入 bigdata
目录下,驱动与其它Jar放到 JdbcDriver
目录下,最后拷贝到所有部署机器的用户主目录。目录文件结构如下:
执行安装¶
把 bigdata 目录下的
*.sh
文件修改为可执行
chmod +x *.sh
解压缩包至当前目录
./install.sh
在Hadoop部署的机器上执行
执行前先修改 conf
目录下两个XML文件:
core-site.xml
修改为Hadoop部署机器的 IP 地址
<?xml version="1.0"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://IP:9000/</value>
</property>
</configuration>
hdfs-site.xml
修改 Hadoop namenode 与 datanode 目录路径,按照以下所示替换成你登录的用户名
<?xml version="1.0"?>
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///home/你登录的用户名/hdfs/namenode</value>
<description>NameNode directory for namespace and transaction logs storage.</description>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///home/你登录的用户名/hdfs/datanode</value>
<description>DataNode directory</description>
</property>
...
</configuration>
警告
一定要绝对路径,使用相对路径将无法启动服务。
./hadoop-master.sh
./hadoop-worker.sh
在Spark主节点机器上执行
./spark-master.sh
在Spark从节点机器上执行
./spark-worker.sh
警告
3、4、5 不是依次执行的关系,机器部署的服务不同就执行不同的脚本,而其它操作是一样的。
检查是否部署成功¶
是否可以在浏览器中打开Hadoop、Spark WebUI界面。
Hadoop
访问:http://Hadoop部署的机器IP:50070
,看到下面的画面即为成功,已注册了一个数据节点。
Spark
访问:http://Spark主节点部署的机器IP:8080
,看到下面的画面即为成功,已注册一个或多个Worker。
应用平台配置¶
application-pro.yml
distributed:
# 单机使用本机IP 127.0.0.1 或者 不填写,分布式部署使用能远程访问本机的IP地址
host:
# 默认 auto;分布式 spark://torchdb-master:7077
master: auto
# 主要是在HDFS中存放用户上传的数据文件
fsDir:
core-site.xml
Hadoop文件系统配置
<?xml version="1.0"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<!-- Default is file:/// or hdfs://torchdb-master:9000-->
<value>file:///</value>
</property>
...
</configuration>