• RedHat6.5安装Spark集群


    版本号:

    RedHat6.5   RHEL 6.5系统安装配置图解教程(rhel-server-6.5)

    JDK1.8      http://blog.csdn.net/chongxin1/article/details/68957808

    Hadoop2.7.3   RedHat6.5上安装Hadoop集群

    scala-2.11.8  

    spark-2.1.1-bin-hadoop2.7

    1 安装Spark依赖的Scala

              Hadoop的安装请参考上面提到的博文,因为Spark依赖scala,所以在安装Spark之前,这里要先安装scala。

    在每个节点上都进行安装,本文主要是master、slave1、slave2三台机器。

    1.1  下载和解压缩Scala

    官网下载地址:https://downloads.lightbend.com/scala/2.11.8/scala-2.11.8.tgz 

    百度云盘下载地址:链接:http://pan.baidu.com/s/1eSiVjO2 密码:y8b1 

    linux在服务器的/usr/local目录下新建一个名为scala的文件夹,并将下载的压缩包上载上去

    如图: 

    执行命令,进入到该目录:

    cd    /usr/local/scala

    执行命令进行解压缩:

    tar   -xvf   scala-2.11.8.tgz

    1.2  配置环境变量

    sudo gedit /et/profile

    编辑/etc/profile这个文件,在文件中增加一行配置:

    
    
    1. #set Scala environment
    2. export SCALA_HOME=/usr/local/scala/scala-2.11.8
    3. export PATH=$SCALA_HOME/bin:$PATH

      添加完成后,我的/etc/profile的配置如下:

    
    
    1. #set Java environment
    2. export JAVA_HOME=/usr/local/java/jdk1.8
    3. export JRE_HOME=/usr/local/java/jdk1.8/jre
    4. export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
    5. export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
    6.  
    7. #set Hadoop enviroment
    8. export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.3
    9. export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
    10. export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
    11. export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
    12.  
    13. #set Scala environment
    14. export SCALA_HOME=/usr/local/scala/scala-2.11.8
    15. export PATH=$SCALA_HOME/bin:$PATH

    环境变量配置完成后,执行下面的命令: 

    source   /etc/profile  

    1.3 验证Scala

        执行命令: scala     -version  

       如图:    

     

    以上是在master机器上安装,将安装好的scala复制到slave1、slave2机器上:

    scp -r /usr/local/scala root@slave1:/usr/local

    scp -r /usr/local/scala root@slave2:/usr/local

     

    修改slave1、slave2的/etc/profile环境变量配置文件,方法同1.2。

    2 下载和解压缩Spark      

    2.1 下载Spark压缩包

    官网下载地址:http://mirrors.hust.edu.cn/apache/spark/spark-2.1.1/spark-2.1.1-bin-hadoop2.7.tgz  

    百度云盘下载地址:链接:http://pan.baidu.com/s/1cGTtgU 密码:hciq      

    2.2  解压缩Spark

           下载完成后,在Linux服务器的/usr/local目录下新建一个名为spark的文件夹,把刚才下载的压缩包,上传上去。

    如图:

    进入到该目录内,也就是执行下面的命令:

    cd    /usr/local/spark

    执行解压缩命令:

    tar   -zxvf   spark-2.1.1-bin-hadoop2.7.tgz

    3  Spark相关的配置

             说明:因为我们搭建的是基于hadoop集群的Spark集群,所以每个hadoop节点上我都安装了Spark,都需要按照下面的步骤做配置,启动的话只需要在Spark集群的Master机器上启动即可,我这里是在master上启动。

    3.1  配置环境变量

    sudo gedit /etc/profile

    编辑/etc/profile文件,增加

    
    
    1. #set Spark environment
    2. export SPARK_HOME=/usr/local/spark/spark-2.1.1-bin-hadoop2.7
    3. export PATH=$SPARK_HOME/bin:$PATH

          注意:因为$SPARK_HOME/sbin目录下有一些文件名称和$HADOOP_HOME/sbin目录下的文件同名,为了避免同名文件冲突,这里不在PATH变量里添加$SPARK_HOME/sbin只添加了$SPARK_HOME/bin。

    修改完成后,/etc/profile文件内容是:

    
    
    1. #set Java environment
    2. export JAVA_HOME=/usr/local/java/jdk1.8
    3. export JRE_HOME=/usr/local/java/jdk1.8/jre
    4. export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
    5. export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
    6.  
    7. #set Hadoop enviroment
    8. export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.3
    9. export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
    10. export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
    11. export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
    12.  
    13. #set Scala environment
    14. export SCALA_HOME=/usr/local/scala/scala-2.11.8
    15. export PATH=$SCALA_HOME/bin:$PATH
    16.  
    17. #set Spark environment
    18. export SPARK_HOME=/usr/local/spark/spark-2.1.1-bin-hadoop2.7
    19. export PATH=$SPARK_HOME/bin:$PATH

    编辑完成后,执行命令:

    source   /etc/profile

    3.2 配置conf目录下的文件

             对/usr/local/spark/spark-2.1.1-bin-hadoop2.7/conf目录下的文件进行配置。

    3.2.1  新建spark-env.h文件

            执行命令,进入到/usr/local/spark/spark-2.1.1-bin-hadoop2.7/conf目录内:

    cd    /usr/local/spark/spark-2.1.1-bin-hadoop2.7/conf

           以spark为我们创建好的模板创建一个spark-env.h文件,命令是:

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

    编辑spark-env.sh文件,在里面加入配置(具体路径以自己的为准):

    
    
    1. export JAVA_HOME=/usr/local/java/jdk1.8
    2. export SCALA_HOME=/usr/local/scala/scala-2.11.8
    3. export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.3
    4. export HADOOP_CONF_DIR=/usr/local/hadoop/hadoop-2.7.3
    5. export SPARK_MASTER_IP=192.168.168.200
    6. export SPARK_MASTER_HOST=192.168.168.200
    7. export SPARK_LOCAL_IP=192.168.168.200
    8. export SPARK_HOME=/usr/local/spark/spark-2.1.1-bin-hadoop2.7
    9. export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/hadoop-2.7.3/bin/hadoop classpath)

    3.2.2 新建slaves文件

    执行命令,进入到/usr/local/spark/spark-2.1.1-bin-hadoop2.7/conf目录内:

    cd   /usr/local/spark/spark-2.1.1-bin-hadoop2.7/conf

    以spark为我们创建好的模板创建一个slaves文件,命令是:

    cp    slaves.template   slaves

    编辑slaves文件,里面的内容为:

    master

    slave1

    slave2 

    如图:

    3.3WorkerN节点:(slave1、slave2两台机器)

    将配置好的spark文件复制到workerN节点

    scp  -r  /usr/local/spark  root@slave1:/usr/local

    scp  -r  /usr/local/spark  root@slave2:/usr/local

    在slave1和slave2上分别修改/etc/profile,增加Spark的配置,过程同master一样。

    在slave1和slave2修改$SPARK_HOME/conf/spark-env.sh,将 export SPARK_LOCAL_IP=192.168.168.200 改成slave1和slave2对应节点的IP。

    
    
    1. export SPARK_LOCAL_IP=192.168.168.201
    
    
    1. export SPARK_LOCAL_IP=192.168.168.202

    4 启动和测试Spark集群

    4.1 启动Spark

           因为spark是依赖于hadoop提供的分布式文件系统的,所以在启动spark之前,先确保hadoop在正常运行。

            在hadoop正常运行的情况下,在master(也就是hadoop的namenode,spark的marster节点)上执行命令:

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

     执行启动脚本:

      ./start-all.sh 

      完整控制台输出内容是:

    
    
    1.    [root@master conf]# cd /usr/local/spark/spark-2.1.1-bin-hadoop2.7/sbin
    2. [root@master sbin]# ./start-all.sh
    3. starting org.apache.spark.deploy.master.Master, logging to /usr/local/spark/spark-2.1.1-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.master.Master-1-master.out
    4. slave1: starting org.apache.spark.deploy.worker.Worker, logging to /usr/local/spark/spark-2.1.1-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-slave1.out
    5. slave2: starting org.apache.spark.deploy.worker.Worker, logging to /usr/local/spark/spark-2.1.1-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-slave2.out
    6. master: starting org.apache.spark.deploy.worker.Worker, logging to /usr/local/spark/spark-2.1.1-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-master.out
    7. master: failed to launch: nice -0 /usr/local/spark/spark-2.1.1-bin-hadoop2.7/bin/spark-class org.apache.spark.deploy.worker.Worker --webui-port 8081 spark://master:7077
    8. master: full log in /usr/local/spark/spark-2.1.1-bin-hadoop2.7/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-master.out

    注意:上面的命令中有./这个不能少,./的意思是执行当前目录下的start-all.sh脚本。

    4.2  测试和使用Spark集群

    4.2.1  访问Spark集群提供的URL

    在浏览器里访问Mster机器,我的Spark集群里Master机器是master,IP地址是192.168.168.200,访问8080端口,URL是:

    http://192.168.168.200:8080       

    如图: 

    参考资料:http://blog.csdn.net/pucao_cug/article/details/72353701 

  • 相关阅读:
    POJ 1837 (DP)
    POJ 2255(分治递归)
    红球多于白球的概率(分治递归)
    HDOJ 4039 (Data_Structure)
    管道问题(prim)
    寻找给定区间内第K小的数(分治递归)
    大数加法
    1000元购物券 (分治递归)
    POJ 1308(并查集) (Data_Structure)
    我的2012年还不是世界末日
  • 原文地址:https://www.cnblogs.com/yangcx666/p/8723901.html
Copyright © 2020-2023  润新知