集群规划: 主机名 IP 运行的进程 hadoop01 192.168.1.201 master hadoop05
集群规划:
主机名 | IP | 运行的进程 |
hadoop01 | 192.168.1.201 | master |
hadoop05 | 192.168.1.205 | worker |
hadoop06 | 192.168.1.206 | worker |
hadoop07 | 192.168.1.207 | worker |
1、安装Scala
设置环境变量
vim .bash_profileexport SCALA_HOME=/home/hadoop/scala-2.11.8export $SCALA_HOME/bin:$PATHsource .bash_profile
2、解压spark压缩包
tar -zxvf spark-1.5.0-cdh5.6.0.tar.gz -C /spark/ln -s spark-1.5.0-cdh5.6.0 spark-1.5.0
3、修改配置文件
cd spark-1.5.0-cdh5.6.0cp conf/spark-env.sh.template conf/spark-env.shvim conf/spark-env.sh 增加以下内容:export SCALA_HOME=/home/hadoop/scala-2.11.8export JAVA_HOME=/home/hadoop/jdk1.7export SPARK_MASTER_IP=192.168.1.201export SPARK_WORKER_INSTANCES=3export SPARK_MASTER_PORT=8070export SPARK_MASTER_WEBUI_PORT=8090export SPARK_WORKER_PORT=8092export SPARK_WORKER_MEMORY=5000m
SPARK_MASTER_IP这个指的是master的IP地址;SPARK_MASTER_PORT这个是master端口;SPARK_MASTER_WEBUI_PORT这个是查看集群运行情况的WEB UI的端口号;SPARK_WORKER_PORT这是各个worker的端口号;SPARK_WORKER_MEMORY这个配置每个worker的运行内存。
vim conf/slaves 每行一个worker的主机名(最好是用 host 映射 IP 成主机名),内容如下:192.168.1.205192.168.1.206192.168.1.207
4、设置环境变量
vim .bash_profileexport SPARK_HOME=/spark/spark-1.5.0export $SPARK_HOME/bin:$PATHsource .bash_profile
5、然后将配置以及安装文件同步到各节点上,并让环境变量生效。
scp -r spark-1.5.0-cdh5.6.0 192.168.1.205:/sparkscp -r spark-1.5.0-cdh5.6.0 192.168.1.206:/sparkscp -r spark-1.5.0-cdh5.6.0 192.168.1.207:/spark
6、启动spark集群
执行 ./sbin/start-all.sh
如果start-all方式无法正常启动相关的进程,可以在$SPARK_HOME/logs目录下查看相关的错误信息。其实,你还可以像Hadoop一样单独启动相关的进程,在master节点上运行下面的命令:
在Master上执行:./sbin/start-master.sh
在Worker上执行:./sbin/start-slave.sh 3 spark://10.32.21.165:8070 --webui-port 8090
然后检查进程是否启动,执行jps命令,可以看到Worker进程或者Master进程。然后可以在WEB UI上查看http://masterSpark:8090/可以看到所有的work 节点,以及他们的 CPU 个数和内存等信息。
7、运行示例程序
./bin/run-example SparkPi 10 > Sparkpilog.txt
输出的日志分为两部分,一部分是通用日志信息,它由后面会介绍的一系列脚本及程序产生,另一部分是运行程序的输出结果。