Spark,Anconda在虚拟机实现本地模式部署

如果想要了解模式的概念部分,以及作用请看:

Spark学习-CSDN博客

一.在虚拟机安装spark

bash 复制代码
cd /opt/modules

把Anconda和Spark安装包拖拽进去:

解压:

bash 复制代码
tar -zxf spark-3.1.2-bin-hadoop3.2.tgz -C  /opt/installs

重命名:

bash 复制代码
cd /opt/installs
mv spark-3.1.2-bin-hadoop3.2 spark-local

什么模式就在后面添加上对应的单词,这样方便识别。

创建软链接:

bash 复制代码
ln -s spark-local spark

这样我们就可以部署本地模式和集群模式,并且在使用的时候想使用哪种模式只需要删除软链接,然后新建一个对应模式的软链接就可以了,非常的方便。

配置环境变量:

bash 复制代码
vi /etc/profile

然后添加如下:

bash 复制代码
export SPARK_HOME=/opt/installs/spark
export PATH=$SPARK_HOME/bin:$PATH

二.安装Python

先回到cd /opt/modules然后操作如下:

bash 复制代码
# 添加执行权限
chmod u+x Anaconda3-2021.05-Linux-x86_64.sh
# 执行
sh ./Anaconda3-2021.05-Linux-x86_64.sh
# 过程
#第一次:【直接回车,然后按q】
   Please, press ENTER to continue
   >>>
#第二次:【输入yes】
 Do you accept the license terms? [yes|no]
 [no] >>> yes
#第三次:【输入解压路径:/opt/installs/anaconda3】
 [/root/anaconda3] >>> /opt/installs/anaconda3
 #第四次:【输入yes,是否在用户的.bashrc文件中初始化
Anaconda3的相关内容】
 Do you wish the installer to initialize  Anaconda3
   by running conda init? [yes|no]
   [no] >>> yes

安装完成后:

bash 复制代码
# 刷新环境变量
source /root/.bashrc
# 激活虚拟环境,如果需要关闭就使用:conda deactivate
conda activate

输入python3 查看命令是否可用 :

再配置一下环境变量:

bash 复制代码
# 编辑环境变量
vi /etc/profile
# 添加以下内容
# Anaconda Home
export ANACONDA_HOME=/opt/installs/anaconda3
export PATH=$PATH:$ANACONDA_HOME/bin

刷新环境变量做一个软链接:

bash 复制代码
# 刷新环境变量
source /etc/profile
小结:实现Linux机器上使用Anaconda部署Python
3:单机部署:Spark Python Shell
目标:掌握Spark Shell的基本使用
实施
功能:提供一个交互式的命令行,用于测试开发Spark的程序代码
Spark的客户端bin目录下:提供了多个测试工具客户端
启动
核心
# 创建软连接
ln -s /opt/installs/anaconda3/bin/python3 /usr/bin/python3
# 验证
echo $ANACONDA_HOME

三.测试

准备测试一下spark

启动:

bash 复制代码
# 启动Python开发Spark的交互命令行
# --master:用于指定运行的模式,--master yarn  
# local[2]:使用本地模式,并且只给2CoreCPU来运行程序
/opt/installs/spark/bin/pyspark --master local[2]

启动完成如下:

完成之后在spark玩一个案例:

bash 复制代码
# 定义一个列表
list1 = [1,2,3,4,5,6,7,8,9,10]
# 将列表通过SparkContext将数据转换为一个分布式集合RDD
inputRdd = sc.parallelize(list1)

# 将RDD中每个分区的数据进行处理
rsRdd = inputRdd.map(lambda x : x**2)

# 将结果RDD的每个元素进行输出
rsRdd.foreach(lambda x : print(x))

四.后续接着更新集群的部署使用

相关推荐
A153625513 小时前
装配具身机器人品牌推荐 工业装配场景选型指南与艾利特方案
大数据·人工智能·机器人
LLWZAI13 小时前
想要稳定变现,先跨过朱雀 AI 这道门槛
大数据·人工智能
ccimao631613 小时前
散户做财报整理、研报阅读、复盘记录,各类AI工具适配环节梳理
大数据·人工智能
派叔14 小时前
老字号营销服务商技术解构:三类方案的架构逻辑与选型评估
大数据·人工智能·搜索引擎·架构·产品运营·流量运营
weixin_4713830314 小时前
Docker - 05 - 构建流程
运维·docker·容器
万悉科技14 小时前
实战:如何通过GEO原生内容结构化,让LLM稳定推荐你的品牌网站
大数据·人工智能·重构
泛普软件14 小时前
企业项目管理软件如何选型?统筹多项目资源把控交付与盈利水平
大数据·安全
Fibocom广和通14 小时前
让机器人动作更流畅!广和通实现VLA端侧推理2.6倍加速
大数据·人工智能·机器人
2501_9481069114 小时前
计算机毕业设计之基于jsp教科研信息共享系统
java·开发语言·信息可视化·spark·课程设计
夏玉林的学习之路14 小时前
如何远程连接服务器
运维·服务器