Centos7安装Spark2.x
安装前准备
创建hadoop用户
- 添加hadoop用户
1 | sudo useradd -m hadoop -s /bin/bash # 创建hadoop用户 |
- 赋予hadoop管理员权限,修改/etc/sudoers文件,找到下面一行,如下图,然后在该行下面添加
hadoop ALL=(ALL) ALL
- 修改完毕,切换至hadoop用户,然后用命令su –,即可获得root权限进行操作。
安装vim、ssh和java
- 安装vim
1 | sudo yum install vim |
- 安装ssh,配置无密码登录
1 | sudo yum install openssh-server |
- 解压jdk压缩包,配置环境变量
1 | cd /home/hadoop |
- 使 JAVA_HOME 变量生效:
1 | source ~/.bashrc # 使变量设置生效 |
安装hadoop
1 | cd /home/hadoop |
- 在hadoop-env.sh中添加JAVA_HOME变量
1 | cd /usr/local/hadoop/etc/hadoop |
- 进行伪分布式配置,修改配置文件 core-site.xml
1 | <configuration> |
- 修改配置文件 hdfs-site.xml
1 | <configuration> |
- 启动hadoop
1 | cd /usr/local/hadoop |
安装Spark(local模式)
1 | cd /home/hadoop |
- 安装后,还需要修改Spark的配置文件spark-env.sh
1 | cd /usr/local/spark |
- 编辑spark-env.sh文件(vim ./conf/spark-env.sh),在第一行添加以下配置信息:
1 | export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath) |
- 配置完成后就可以直接使用,不需要像Hadoop运行启动命令。通过运行Spark自带的示例,验证Spark是否安装成功。
1 | cd /usr/local/spark |
使用Spark Shell编写代码
启动Spark Shell
- 启动Spark Shell后,会自动创建名为sc的SparkContext对象和名为spark的SparkSession对象
1 | cd /usr/local/spark |
加载text文件进行简单的RDD操作
- spark创建sc,可以加载本地文件和HDFS文件创建RDD。这里用Spark自带的本地文件README.md文件测试。
1 | val textFile = sc.textFile("file:///usr/local/spark/README.md") |
- 可以通过组合RDD操作进行组合,可以实现简易MapReduce操作
1 | //找出文本中每行的最多单词数 |
- 更多RDD的操作,请访问Spark官方文档RDD操作
退出Spark Shell
1 | :quit |