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

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

相关推荐
大霸王龙20 分钟前
软件工程的软件生命周期通常分为以下主要阶段
大数据·人工智能·旅游
藥瓿亭25 分钟前
K8S认证|CKS题库+答案| 7. Dockerfile 检测
运维·ubuntu·docker·云原生·容器·kubernetes·cks
搬码临时工1 小时前
如何把本地服务器变成公网服务器?内网ip网址转换到外网连接访问
运维·服务器·网络·tcp/ip·智能路由器·远程工作·访问公司内网
vortex51 小时前
探索 Shell:选择适合你的命令行利器 bash, zsh, fish, dash, sh...
linux·开发语言·bash·shell·dash
点赋科技1 小时前
沙市区举办资本市场赋能培训会 点赋科技分享智能消费新实践
大数据·人工智能
GalaxyPokemon1 小时前
LeetCode - 148. 排序链表
linux·算法·leetcode
YSGZJJ1 小时前
股指期货技术分析与短线操作方法介绍
大数据·人工智能
Doker 多克1 小时前
Flink CDC —部署模式
大数据·flink
Guheyunyi1 小时前
监测预警系统重塑隧道安全新范式
大数据·运维·人工智能·科技·安全
懒羊羊大王呀2 小时前
Ubuntu20.04中 Redis 的安装和配置
linux·redis