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))

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

相关推荐
天才奇男子7 小时前
HAProxy高级功能全解析
linux·运维·服务器·微服务·云原生
小李独爱秋7 小时前
“bootmgr is compressed”错误:根源、笔记本与台式机差异化解决方案深度指南
运维·stm32·单片机·嵌入式硬件·文件系统·电脑故障
易营宝7 小时前
多语言网站建设避坑指南:既要“数据同步”,又能“按市场个性化”,别踩这 5 个坑
大数据·人工智能
学嵌入式的小杨同学7 小时前
【Linux 封神之路】信号编程全解析:从信号基础到 MP3 播放器实战(含核心 API 与避坑指南)
java·linux·c语言·开发语言·vscode·vim·ux
fanstuck7 小时前
从0到提交,如何用 ChatGPT 全流程参与建模比赛的
大数据·数学建模·语言模型·chatgpt·数据挖掘
春日见7 小时前
vscode代码无法跳转
大数据·人工智能·深度学习·elasticsearch·搜索引擎
酥暮沐8 小时前
iscsi部署网络存储
linux·网络·存储·iscsi
❀͜͡傀儡师8 小时前
centos 7部署dns服务器
linux·服务器·centos·dns
Dying.Light8 小时前
Linux部署问题
linux·运维·服务器
S19018 小时前
Linux的常用指令
linux·运维·服务器