当前位置:   article > 正文

Spark的配置以及使用方法_spark 配置

spark 配置

一、环境配置

1.Hadoop+Spark的安装

  1. 创建虚拟机

    • 选自定义高级

    • 注意硬件兼容性选择:

      image-20240303132919056

      image-20240303132919056

    • 操作系统选择linux

  2. 配置网卡以及系统设置

    • 选择英语

    • 注意改镜像,改到阿里云的镜像

    • 名字:spark041

    • 网卡设置

      image-20240303133236949

      image-20240303133236949

      image-20240303133255597

      image-20240303133255597

      image-20240303133307177

      image-20240303133307177

      image-20240303133449998

      image-20240303133449998

    • 安装vim

    1. sudo apt-get install vim

    2. 修改静态IP地址

      sudo vim /etc/netplan/00-开头.yaml(文件名可能不同),改完保存,

    3. 然后sudo netplan apply

    4. image-20240303133615105

      image-20240303133615105

    5. 修改映射 sudo vim /etc/hosts

      image-20240303133759996

      image-20240303133759996

    6. 关闭防火墙

      sudo ufw disable

      查看防火墙状态

      sudo ufw status

    7. SSH

      sudo dpkg -l | grep ssh

      查看是否已经安装

      否则用下列命令安装

      sudo apt-get install openssh-client

      sudo apt-get install openssh-server

      重启ssh服务

      sudo /etc/init.d/ssh restart

    8. 文件上传 mkdir -p software servers data

      节点上进行Ntp同步

      sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

      sudo apt-get install -y ntpdate

      sudo ntpdate -u cn.pool.ntp.org

      在master上:

      上传jdk安装包到software,解压到servers

      cd ~/software

      tar -zxvf ./jdk-8u201-linux-x64.tar.gz -C ~/servers

      mv jdk1.8.0_201 jdk

      image-20240303134127016

      image-20240303134127016

      image-20240303134147226

      image-20240303134147226

      设置jdk环境变量

      sudo vim ~/.bashrc

      添加如下代码

      export JAVA_HOME=~/servers/jdk

      export JRE_HOME=${JAVA_HOME}/jre

      export CLASSPATH={JAVA_HOME}/lib/tools.jar:.

      export PATH=PATH

      使得设置生效

      source ~/.bashrc

      检测是否安装成功

      java -version

      image-20240303134349513

      image-20240303134349513

  3. Hadoop的配置

    解压到servers

    cd ~/software

    tar -zxvf hadoop-2.7.4.tar.gz -C ~/servers/

    重命名文件

    mv hadoop-2.7.4/ wfb-hadoop

    设置环境变量,以后就可以在任意目录下使用Hadoop相关命令

    vim ~/.bashrc

    添加下面的语句

    export HADOOP_HOME=~/servers/wfb-hadoop

    export PATH=HADOOP_HOME/bin:$HADOOP_HOME/sbin

    使设置生效

    source ~/.bashrc

    验证hadoop环境变量设置是否正确

    Whereis hdfs

    whereis start-all.sh

  4. Hadoop的伪分布式配置

    修改hadoop-env.sh文件

    cd ~/servers/wfb-hadoop/etc/hadoop

    vim hadoop-env.sh

    找到export JAVA_HOME一行,去掉行首的#,修改JAVA_HOME的值

    # The java implementation to use.

    export JAVA_HOME=~/servers/jdk

    设置core-site.xml文件

    1. <property> 
    2.   <name>fs.defaultFS</name> 
    3.   <value>hdfs://local:8020</value>
    4.  </property> 
    5.  <property>
    6.   <name>hadoop.tmp.dir</name>
    7.   <value>/home/spark000/servers/wfb-hadoop/tmp</value>
    8.  </property>

    修改hdfs-site.xml

    1. <property>
    2. ​        <name>dfs.replication</name>
    3. ​        <value>1</value>
    4. ​    </property>
    5. <property>
    6. <name>dfs.secondary.http.address</name>
    7. <value>local:50090</value>
    8. </property>

    mapred-site.xml

    复制cp mapred-site.xml.template mapred-site.xml

    1. <configuration>
    2. <property>
    3.   <name>mapreduce.framework.name</name>
    4.   <value>yarn</value>
    5. </property>
    6. </configuration>

    修改yarn-site.xml

    1. <property>
    2.  <name>yarn.resourcemanager.hostname</name>
    3.  <value>local</value>
    4. </property>
    5. <property>
    6.  <name>yarn.nodemanager.aux-services</name>
    7.  <value>mapreduce_shuffle</value>
    8.  
    9. </property>

    格式化HDFS

    hdfs namenode -format

    start-all.sh

  5. 安装spark

    1. 上传安装包到software

      cd /home/spark000/software

      解压缩spark到servers

      tar -zxvf /home/spark000/software/spark-2.4.0-bin-without-hadoop.tgz -C /home/spark000/servers/

      进入servers

      cd /home/spark000/servers

      重命名spark-2.4.0-bin-without-hadoop

      mv spark-2.4.0-bin-without-hadoop spark-local

      进入spark-local

      cp ./conf/spark-env.sh.template ./conf/spark-env.sh

      vim conf/spark-env.sh

      1. **export SPARK_DIST_CLASSPATH=$(/home/spark000/servers/wfb-hadoop/bin/hadoop classpath)**
      2. **export HADOOP_HOME=~/servers/wfb-hadoop**
      3. **export HADOOP_CONF_DIR=~/servers/wfb-hadoop/etc/hadoop**
      4. **export JAVA_HOME=~/servers/jdk**

      进入.bashrc 修改环境变量

      vim ~/.bashrc

      在最后面增加

      1. **export PATH=$PATH:$HADOOP_HOME/bin:$SPARK_HOME/sbin:$SPARK_HOME/bin**
      2. **export SPARK_HOME=/home/spark000/servers/spark-local**
      3. **export PYTHONPATH=$SPARK_HOME/python:$SPARK_HOME/python/lib/py4j-0.10.7-src.zip:$PYTHONPATH**
      4. **export PYSPARK_PYTHON=python3**

      使配置生效

      source ~/.bashrcs

    2. sudo ln -s /usr/bin/python3 /usr/bin/python**

    3. 启动pyspark方式测试

      bin/pyspark --master local[*]

      spark-submit****方式测试,测试用例:

      mkdir -p /home/spark000/mycode/python

      cd /home/spark000/mycode/python

      touch WordCount.py

      vim WordCount.py

      **/home/spark000/servers/spark-local/bin/spark-submit /home/spark000/mycode/python/WordCount.py |grep Lines**
      

      可以通过修改log4j.properties来简化显示

      进入conf目录

      cd /home/spark000/servers/spark-local/conf

      复制log4j.properties

      cp log4j.properties.template log4j.properties

      修改配置为

      log4j.rootCategory=ERROR, consoles'p

2.pyspark命令

  1. pyspark --master <master-url>

    参数:

    • local 一个worker线程运行spark

    • local[*] 物理CPU * 每个物理CPU包含的CPU核数

    • local[K] 使用K个worker线程来运行spark

    • spark://HOST:POST 采用独立(Standalne)集群模式, 连接到指定的Spark集群,端口是7077

    • yarn-client 不能关掉,适合测试,有交互Mesos

    • yarn-cluster 可以关掉,适合企业生产,没有交互

    • mesos://HOST:POST采用Mesos集群模式,连接到指定的Mesos端口号5050

  2. pyspark --master <master-url> --jars

    • 添加jar包

3.开发spark独立程序

  1. 在python的文件夹中写python文件

  2. 通过spark-submit 运行程序
    • 进入到spark所在的位置

    • spark-submit --master --deploy(部署模式) 代码文件[主类的主方法参数]

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/816303
推荐阅读
相关标签
  

闽ICP备14008679号