大数据第十三周(上周补充)

大数据第十一周

1.物理集群的验证

  • 开启本组所有电脑(4台),拷贝虚拟机映像,打开。在开启虚拟机之前,设置虚拟机内存是4G,处理器是4,网络连接是桥接模式。

也可以在图形界面配

  • 把桥接网卡绑定到具体的物理网卡,不要使用自动绑定。
  • 设置完成后,启动寻虚拟机。

 2.设置网络连接

  • 编辑网络配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33。

  • IP地址设置如下:(其中50要改成你自己的ip)

IPADDR=172.21.12.79(左1)

IPADDR=172.21.12.80(左2)

IPADDR=172.21.12.81(右2)

IPADDR=172.21.12.82(右1)

PREFIX=24

GATEWAY=172.21.12.254

DNS1=172.16.3.8

  • 修改完成之后,输入systemctl restart network即可

 3.设置hostname和域名解析

修改集群各个机器的名字和域名解析文件计算机名

  • sudo vi /etc/hostname

        80 master

        79 slave0

        81 slave1

        82 slave2

        50 slave4

  • sudo vi /etc/hosts

  172.21.12.80 master

  172.21.12.79 slave0

  172.21.12.81 slave1

  172.21.12.82 slave2

  172.21.12.50 slave4

 4.关闭防火墙

  • 检查防火墙状态:sudo systemctl status firewalld.service
  • 关闭防火墙:sudo systemctl stop firewalld.service
  • Disable防火墙:sudo systemctl disable firewalld.service
  • 如果不执行Disable防火墙,下次启动时,防火墙还会启动。
  • 重启三个节点,重启后,分别用sudo systemctl status firewalld.service命令检查所有节点的防火墙状态,要求看到inactive(dead)提示。

 5.设置ssh免密登录

  • 由于以前做过免密,所以会提示出错,看提示是否有修改错误的指令,如:删除~/.ssh文件后重做,命令:rm –r .ssh(ls –a查看隐藏文件)
  • 先ssh 要登录的虚拟机,然后exit。
  • 进入目录:cd .ssh/
  • 产生密码:ssh-keygen -t rsa(只需要输入一次)
  • 传送公钥:ssh-copy-id 要登陆的虚拟机名
  • 验证:ssh 要登陆的虚拟机名
  • 如果不需要密码就说明成功了。**如果在物理机集群上安装,需要安装时钟同步工具,保证每个节点的时钟相同。在虚拟机上安装不需要。**
    1. 我们有三个节点,所以每个虚机需要3个免密登录。
    2. 我们有三个节点,要传三个公钥,包括自己。

6.安装时钟同步

  • 将时区设置为上海:sudo timedatectl set-timezone Asia/Shanghai
  • 使用chrony,因为centos7已经内置chrony,所以只要配置就好。
  • 选择一个本地时钟服务器,对于时钟服务器修改cd /etc sudo vi chrony.conf,要允许其他节点进行连接,
  • 对于主节点:添加allow 172.21.12.0/24;
  • 对于其他节点:删除已有的四行配置,添加server master iburst

  • 时钟配置完成后检查,用命令:检查chronyc sources。除了主节点外,其它节点只会显示master。

7.修改配置文件

  • 修改slaves文件,加入新的节点。
  • slaves文件位置:hadoop-2.7/etc/hadoop

 

 8.Namenode格式化

  • 删除所有节点上的集群自动建立的文件夹:hadoopdata
  • 在master上才做:hadoop namenode –format
  • 要看到successfully提示,说明成功了。

 9.启动集群

  • 命令:start-all.sh
  • 用jps查看java进程:按我们的配置,master是4个java进程,slave是3个java进程。
  • 上传一个文件,查看是否正常
  • 进入相应目录hadoop-2.7/share/hadoop/mapreduce,运行命令:hadoop jar hadoop-mapreduce-examples-2.7.7.jar pi 10 10

如果运行正常,说明集群工作一切正常。

 10.安装spark

  • Spark配置成:yarn模式运行。
  • Spark集群需要配置两个文件,spark-env.sh、slaves。
  • 建立spark-env.sh cp  spark-env.sh.template  spark-env.sh

  • 编辑:vi spark-env.sh,添加如下内容,红色部分替换成自己的目录。

export SPARK_CONF_DIR=/home/caiyishuai/spark-2.4.5/conf

export HADOOP_CONF_DIR=/home/caiyishuai/hadoop-2.7/etc/hadoop

export YARN_CONF_DIR=/home/caiyishuai/hadoop-2.7/etc/hadoop

export JAVA_HOME=/home/caiyishuai/jdk1.8

  • 建立slaves文件:cp  slaves.template  slaves
  • 编辑:vi slaves

把文件原内容删除,添加slave节点名:例如

slave0

slave1

slave2

  • 配置完成后,要将配置好的拷贝到其它的所有节点。每个节点的spark和hadooop配置应相同。

 11.启动spark集群

  • 由于我们是用yarn模式运行,首先要启动yarn,启动yarn的方式是用hadoop下的start-all.sh。
  • 启动顺序是:hadoop的start-all.sh,spark的start-all.sh。
  • 由于两个 文件同名,所以必须区分是哪一个。区分的方式可以是,spark路径不配置环境变量,而是用全路径执行。Spark要在master节点上启动。
  • 启动后,用jps查看

master节点:

  NameNode

  Jps

  ResourceManager

  Master

  SecondaryNameNode

Slave节点:

  DataNode

  NodeManager

  Worker

  Jps

说明启动成功。

如果master下没有namenode节点,那就先关闭集群,然后运行hadoop namenode -format,再次启动即可。

posted on 2020-05-26 08:18  蔡军帅  阅读(127)  评论(0编辑  收藏  举报