MHuiG

「看庭前花开花落,望天上云卷云舒」

Environment Deployment

# Spark 环境部署（Ubuntu20.04）

Spark 在 Ubuntu20.04 中的配置

## 实验环境

实验环境

### Ubuntu20.04 LTS

### Hadoop 2.6.0-cdh5.14.0

### Java 1.8.0_141

### Python3.8.2(default)

### Spark 3.0.0-preview2

## 配置 java 环境

解压安装 `jdk`

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

配置环境变量

    nano /etc/profile

/etc/profile

    export JAVA_HOME=/export/servers/jdk1.8.0_141
    export PATH=:$JAVA_HOME/bin:$PATH

修改完成之后记得
`reboot -h now` 或 `source`
`/etc/profile` 生效

验证

    jps

## 配置 Hadoop 环境

### 下载解压

Hadoop 2 可以通过 https://mirrors.cnnic.cn/apache/hadoop/common/ 下载

将 Hadoop 安装至 `/usr/local/` 中：

    sudo tar -zxf hadoop-2.6.0.tar.gz -C /usr/local    # 解压到/usr/local中
    cd /usr/local/
    sudo mv ./hadoop-2.6.0/ ./hadoop            # 将文件夹名改为hadoop
    sudo chown -R hadoop ./hadoop       # 修改文件权限

### Hadoop 伪分布式配置

伪分布式需要修改 2 个配置文件 core-site.xml 和 hdfs-site.xml

#### core-site.xml

core-site.xml

    <configuration>
        <property>
            <name>hadoop.tmp.dir</name>
            <value>file:/usr/local/hadoop/tmp</value>
            <description>Abase for other temporary directories.</description>
        </property>
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://localhost:9000</value>
        </property>
    </configuration>

#### hdfs-site.xml

hdfs-site.xml

    <configuration>
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
        <property>
            <name>dfs.namenode.name.dir</name>
            <value>file:/usr/local/hadoop/tmp/dfs/name</value>
        </property>
        <property>
            <name>dfs.datanode.data.dir</name>
            <value>file:/usr/local/hadoop/tmp/dfs/data</value>
        </property>
    </configuration>

#### 配置 JAVA_HOME

到 hadoop 的安装目录修改配置文件 “/usr/local/hadoop/etc/hadoop/hadoop-env.sh”，在里面找到 “export JAVA_HOME=${JAVA_HOME}” 这行，然后，把它修改成 JAVA 安装路径的具体地址

### NameNode 格式化

    cd /usr/local/hadoop
    ./bin/hdfs namenode -format

### 开启 NameNode 和 DataNode 守护进程

    cd /usr/local/hadoop
    ./sbin/start-dfs.sh

## 安装 Spark

打开浏览器，访问 Spark 官方下载地址

由于我们已经自己安装了 Hadoop，所以，在 `Choose a package type` 后面需要选择 `Pre-build with user-provided Hadoop`
将 spark 解压到 `/usr/local`, 并重命名为 `spark`
修改 Spark 的配置文件 `spark-env.sh`

    cd /usr/local/spark
    cp ./conf/spark-env.sh.template ./conf/spark-env.sh

编辑 `spark-env.sh` 文件，在第一行添加以下配置信息:

spark-env.sh

    export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)

修改环境变量

/etc/profile

    export HADOOP_HOME=/usr/local/hadoop
    export SPARK_HOME=/usr/local/spark
    export PYTHONPATH=$SPARK_HOME/python:$SPARK_HOME/python/lib/py4j-0.10.4-src.zip:$PYTHONPATH
    export PYSPARK_PYTHON=python3
    export PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PATH

运行 Spark 自带的示例，验证 Spark 是否安装成功

使用 Spark 计算 `PI`（`3.1415926....`）

    cd /usr/local/spark
    bin/run-example SparkPi

`grep` 命令进行过滤

    bin/run-example SparkPi 2>&1 | grep "Pi is"

Spark

.fa-secondary{opacity:.4} Spark Spark .prev-next{ display: none !important; }

Spark RDD 编程

RDD Spark RDD 编程 RDD 编程基础RDD 创建从文件系统中加载数据创建 RDDSpark 采用 textFile() 方法来从文件系统中加载数据创建 RDD该方法把文件...

留言区

Notes
Spark
本文目录
<pjax>
</pjax>
<pjax></pjax>
<pjax> Are you Robot?</pjax>