zoukankan      html  css  js  c++  java
  • 搭建Spark环境(Standalone部署模式)

    搭建Spark的单独(Standalone)部署模式

    Standalone单独部署(伪分布或全分布),不需要有依赖资源管理器。主要学习单独(Standalone)部署中的伪分布模式的搭建。

    环境

    个人笔记本安装。
    内存:至少4G
    硬盘:至少空余40G
    操作系统: 64位 Windows系统
    VMware 12+
    

    步骤

    1、总体步骤如下:

    • 安装前的准备

    • 搭建

    2、详细步骤如下

    • 安装前的准备

    ①安装Linux

    下载Ubuntu 16.04
    (a)Desktop    -->  桌面版,默认带了界面
    ubuntu-16.04.5-desktop-amd64.iso
    (b)Server      --> 服务器版,默认没有带界面
    ubuntu-16.04.5-server-amd64.iso
    

    ②关闭防火墙

    查看防火墙状态:
    $ sudo ufw status
    Status: inactive
    关闭防火墙:
    $ sudo ufw disable
    防火墙在系统启动时自动禁用
    $ sudo ufw status
    Status: inactive
    查看防火墙状态:
    $ sudo ufw status
    Status: inactive
    

    ③确认openssh-client、openssh-server是否安装

    $ dpkg -l | grep openssh
    如果没有安装,则安装:
    $ sudo apt-get install openssh-client
    $ sudo apt-get install openssh-server	
    

    ④设置免密登录

    通过ssh-keyen生成一个RSA的密钥对
    $ ssh-keygen -t rsa -P ''
    公钥追加到~/.ssh/authorized_keys文件中
    $ ssh-copy-id -i  ~/.ssh/id_rsa.pub  主机名(如上面都node1)
    测试免密码登录:
    $ ssh node1
    

    ⑤安装JDK

    解压到根目录:
    $ tar zxvf jdk-8u144-linux-x64.tar.gz -C  ~
    建一个软链接(方便使用)
    $ ln  -s  jdk-8u144-linux-x64  jdk
    配置环境变量:
    $ vi  ~/.bashrc
    (注意!等号两侧不要加入空格)
    export JAVA_HOME=/home/hadoop/jdk
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:.
    使得变量生效:
    $ source  ~/.bashrc
    

    ⑥安装Scala

    将Scala的安装包通过Xshell、Xftp上传到Linux。

    (解压)
    $ tar zxvf  scala-2.11.12.tgz   -C   ~
    (创建软连接)
    $ ln  -s   scala-2.11.12  scala
    (配置环境变量)
    $ vi  ~/.bashrc
    export SCALA_HOME=~/scala
    export PATH=$SCALA_HOME/bin:$PATH
    (使环境变量生效)
    $ source  ~/.bashrc
    

    ⑦安装Anoaconda3

    上传Anaconda的安装包,执行安装。

    $ sh Anaconda3-5.2.0-Linux-x86_64.sh
    

    许可协议,按ENTER继续,显示许可协议,按q到达“是否同意”,输入yes,同意。如下图所示:

    安装位置,查看文件即将安装的位置,按enter,即可安装。如下图所示:

    环境变量,加入环境变量,输入yes。如下图所示:

    不安装VSCode,输入no。如下图所示:

    source~/.bashrc

    ⑧安装pyspark

    $ conda install pyspark
    
    • 搭建Spark伪分布

    ①安装包解压、配置环境变量

        $ tar  -zxvf  spark-2.4.0-bin-hadoop2.7.tgz  -C ~
    创建超链接:(便于使用)
        $ ln   -s   spark-2.4.0-bin-hadoop2.7    spark
    增加环境变量(如果已经安装过hadoop,这步可以省略,避免冲突)
        $ vi ~/.bashrc
        export SPARK_HOME=/home/hadoop/spark
        export PATH=$SPARK_HOME/bin:$SPARK_HOME/sbin:$PATH
        $ source  ~/.bashrc
    

    ②修改配置文件

    进入Spark配置文件所在目录,修改spark-env.sh文件。
    
    $ cd ~/spark/conf
    $ cp spark-env.sh.template spark-env.sh
    $ vi spark-env.sh
    
    export JAVA_HOME=/home/hadoop/jdk
    export SPARK_MASTER_HOST=node1
    export SPARK_MASTER_PORT=7077
    
    #识别到python
    export PYTHON_HOME=/home/hadoop/anaconda3
    export PATH=$PYTHON_HOME/bin:$PATH
    
    修改slaves文件。
    
    $ cp slaves.template slaves
    $ vi slaves
    
    将里面在localhost改完主机名
    
    # A Spark Worker will be started on each of the machines listed below.
    #localhost
    node1
    

    ③启动

    $ cd ~/spark
    $ sbin/start-all.sh
    

    ④验证

    (a)查看进程验证

    $ jps
    显示如下进程:
    1398 Worker
    1327 Master
    

    (b)打开网页http://[IP地址]:8080

    (c)打开pyspark验证

    pyspark --master  spark://node1:7077
    

    conda

    • conda简介

      一个工具,用于包管理和环境管理
      包管理与pip类似,管理Python的第三方库。
      环境管理能够允许用户使用不同版本Python,并能灵活切换

    • conda基本命令

      查看版本:

        conda --version  或: conda -V
      

      创建环境:

        conda create --name test
      

      创建制定python版本的环境:

        conda create --name test2 python=2.7
        conda create --name test3 python=3
      

      创建包含某些包的环境:

        conda create --name test4 numpy scipy
      

      创建指定python版本下包含某些包的环境

        conda create --name test5 python=3.5 numpy scipy
      

      删除某个环境

        conda remove --name test  --all
      

      列举当前所有环境:

        conda info --envs
        conda env list
      

      进入某个环境:

        conda activate test
      

      退出当前环境

        conda deactivate
  • 相关阅读:
    selenium+java+testNG+maven环境搭建
    pycharm配置git版本管理
    Android的WebView有哪些坑?
    Android M中 JNI的入门学习
    Android初学者必知会的编程规范
    Android Studio中怎么使用DDMS工具?
    Android开发中适配多种 ROM 的快捷方式是如何实现的?
    Android中ListView 控件与 Adapter 适配器如何使用?
    Android中如何为自定义控件增加状态?
    29个android开发常用的类、方法及接口
  • 原文地址:https://www.cnblogs.com/jiajiaba/p/10580810.html
Copyright © 2011-2022 走看看