700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > spark3.0 分布式集群搭建

spark3.0 分布式集群搭建

时间:2018-09-16 22:58:57

相关推荐

spark3.0 分布式集群搭建

Spark 集群环境搭建-exsi

1、虚拟机环境配置

进入管理界面

创建虚拟机

后续选择存储空间位置

3处选择存储目录中的 centos7,安装过程略

如法炮制建立三个虚拟机

ssh连接 此处使用的软件是MobaXterm

2、虚拟机基础配置

需要配置的是

1、网卡开机自动启动,与静态ip

2、修改主机名称

3、关闭centos 防火墙

4、host配置

5、时区设置

6、ssh免密码连接

2.1 网卡开机启动与静态ip

进入该目录

cd /etc/sysconfig/network-scripts/ls

此处应该有 ifcfg-ensxxx

如 ifcfg-ens192

使用vi命令编辑对应的 ifcfg-ensxxx

vi ifcfg-ens192

对应的字段解释如下

DEVICE 接口名(设备,网卡)

USERCTL [yes|no](非root用户是否可以控制该设备)

BOOTPROTO IP的配置方法[none|static|bootp|dhcp](引导时不使用协议|静态分配IP|BOOTP协议|DHCP协议)

HWADDR MAC地址

ONBOOT 系统启动的时候网络接口是否有效(yes/no)

TYPE 网络类型(通常是Ethemet)

NETMASK 网络掩码

IPADDR IP地址

IPV6INIT IPV6是否有效(yes/no)

GATEWAY 默认网关IP地址

BROADCAST 广播地址

NETWORK 网络地址

我们需要增加或者修改的是

ONBOOT=yes #开机启动BOOTPROTO=static#静态IPIPADDR=xxx.xxx.xxx.xxx #本机地址NETMASK=255.255.255.0 #子网掩码GATEWAY=xxx.xxx.xxx.xxx #默认网关

其中xxx要改成该主机的ip地址与默认网关

然后输入下面命令重启网络服务

service network restart

使用

ip addr

查询到修改后的信息

2.2 修改主机名

centos7 有一个命令 hostnamectl 可以方便的查询修改主机名称

hostnamectl #查看主机详细信息hostnamectl set-hostname spark0 #修改主机名为spark0 hostname #查看主机名

2.3关闭centos 防火墙

systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动

2.4 host 设置

其他两台机器配置完成后

将每台机器的ip信息添加入 /etc/hosts 文件中

vi /etc/hosts

如图 ip地址 + 主机名称

2.5时区设置

命令

timedatectl set-timezone Asia/Shanghai (这里是设置亚洲上海上海)timedatectl # 查看系统时间方面的各种状态

2.6 ssh免密码连接

命令

ssh-keygen -t rsa #输入完成后一直按回车直到结束#此时会在/home/usera/.ssh目录下生成密钥对ssh-copy-id spark0ssh-copy-id spark1ssh-copy-id spark2

每台机器都要互相经行ssh面密登录的配置

验证ssh 免密登录

3 虚拟机基础环境搭建

需要搭建

1、java环境

2、hadoop环境

3、spark环境

3.1 java环境的搭建

mkdir -p /opt/software #创建文件夹cd /opt/software/ #然后进入此目录

将java安装包存储到此目录

将java安装包解压到此目录

tar -zxvf xxx #xxx为jdk压缩包名称

然后设置环境变量

vi /etc/profile

拉到文件尾部 添加

##JAVA_HOMEexport JAVA_HOME=/opt/software/jdk1.8.0_301export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile #使配置立即生效java -version

检查配置成功

3.2 hadoop环境配置

在 /opt/software上传hadoop 安装包

使用tar 命令解压安装包

tar -zxvf hadoop-3.2.2.tar.gz

设置hadoop环境变量

在profile中写入

##HADOOP_HOMEexport HADOOP_HOME=/opt/software/hadoop-3.2.2/export PATH==$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile #生效配置

需要配置

hadoop-env.sh

core-site.xml

hdfs-site.xml

yarn-site.xml

vi workers #修改节点文件写入以下三行spark0spark1spark2cd /opt/software/hadoop-3.2.2/etc/hadoop/ #进入hadoop配置文件存放的目录vi core-site.xml #configuration 中添加以下内容<property><name>fs.defaultFS</name><value>hdfs://spark0:9000</value></property><!-- hadoop运行时产生的文件的存储目录 --><property><name>hadoop.tmp.dir</name><value>/opt/software/hadoop-3.2.2/tmp</value></property>

vi hdfs-site.xml #configuration 标签中添加以下内容<property><name>dfs.namenode.secondary.http-address</name><value>spark0:50090</value></property><property><name>dfs.namenode.http-address</name><value>spark0:50070</value></property><property><name>dfs.replication</name><value>2</value></property><property><name>dfs.namenode.name.dir</name><value>file:///data/hadoop/hdfs/namenode</value></property><property><name>dfs.datanode.data.dir</name><value>file:///data/hadoop/hdfs/datanode</value></property>

vi yarn-site.xml #configuration 中添加以下内容<property><name>yarn.resourcemanager.hostname</name><value>spark0</value></property><!-- reducer获取数据的方式 --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.nodemanager.local-dirs</name><value>file:///data/hadoop/yarn/namenode</value></property>

vi maped-site.xml #configuration 中添加以下内容<property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.jobhistory.address</name><value>spark0:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>spark0:19888</value></property>vi hadoop-env.sh

vi hadoop-env.sh #添加以下内容export JAVA_HOME=/opt/software/jdk1.8.0_301

为运行文件增加管理员运行条件

cd /opt/software/hadoop-3.2.2/sbinvi start-dfs.shHDFS_DATANODE_USER=rootHDFS_DATANODE_SECURE_USER=hdfsHDFS_NAMENODE_USER=rootHDFS_SECONDARYNAMENODE_USER=root

vi stop-dfs.shHDFS_DATANODE_USER=rootHDFS_DATANODE_SECURE_USER=hdfsHDFS_NAMENODE_USER=rootHDFS_SECONDARYNAMENODE_USER=root

vi start-yarn.shYARN_RESOURCEMANAGER_USER=rootHDFS_DATANODE_SECURE_USER=yarnYARN_NODEMANAGER_USER=root

vi stop-yarn.shYARN_RESOURCEMANAGER_USER=rootHDFS_DATANODE_SECURE_USER=yarnYARN_NODEMANAGER_USER=root

mkdir命令创建所需要的文件夹

mkdir -p /data/hadoop/yarn/namenodemkdir -p /data/hadoop/hdfs/namenodemkdir -p /data/hadoop/hdfs/datanode

使用scp 命令,将文件复制到另外两个节点中去

scp -r /opt/software/ spark2:/opt/scp -r /opt/software/ spark1:/opt/scp -r /data/hadoop spark1:/data/scp -r /data/hadoop spark2:/data/scp /etc/profile spark2:/etc/profilesscp /etc/profile spark1:/etc/profilesource /etc/profile #在每个节点上更新配置在spark0 上:hdfs namenode -format #格式化namenodestart-all.shjps#使用该命令查看hadoop是否正常启动

spark0

spark1

spark2

访问spark0:8088

访问spark0:50070

3.2 spark的分布式部署

下载spark和scala安装包

spark-3.0.0-bin-hadoop3.2.tgz

scala-2.12.0.tgz

cd /opt/software/ tar -zxvf spark-3.0.0-bin-hadoop3.2.tgztar -zxvf scala-2.12.0.tgz

配置spark配置文件

cd confcp spark-env.sh.template spark-env.sh #建立配置文件vi spark-env.sh #文件中写入下列内容export HADOOP_CONF_DIR=/opt/software/hadoop-3.2.2/etc/hadoop/ ##hadoop 配置文件夹export JAVA_HOME=/opt/software/jdk1.8.0_301/export HADOOP_HOME=/opt/software/hadoop-3.2.2/ export SPARK_MASTER_HOST=spark0 ##spark主节点export SPARK_LOCAL_DIRS=/opt/software/spark-3.0.0-bin-hadoop3.2/ export SCALA_HOME=/opt/software/scala-2.12.0/ export SPARK_DIST_CLASSPATH=$(/opt/software/hadoop-3.2.2/bin/hadoop classpath) ##hadoop文件

vi slaves #写入节点内容spark0spark1spark2

vi /etc/profile #底部写入以下内容##SCALA_HOMEexport HADOOP_HOME=/opt/software/scala-2.12.0/export PATH==$PATH:$SCALA_HOME/binsource /etc/profile #写入后立即生效

使用scp命令,分发文件

scp -r /opt/software/scala-2.12.0 spark2:/opt/software/scp -r /opt/software/scala-2.12.0 spark1:/opt/software/scp -r /opt/software/spark-3.0.0-bin-hadoop3.2 spark2:/opt/software/scp -r /opt/software/spark-3.0.0-bin-hadoop3.2 spark1:/opt/software/scp /etc/profile spark2:/etc/profile scp /etc/profile spark1:/etc/profile

再从每个机器上使用

source /etc/profile #写入后立即生效

在sprak0 中

cd /opt/software/hadoop-3.2.2/sbin/./start-all.sh #先启动hadoop/opt/software/spark-3.0.0-bin-hadoop3.2/sbin/ ./start-all.sh #再启动sprak

访问spark0:8088 即可看到正常启动

jps 命令正常启动

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。