您好,登錄后才能下訂單哦!
在上一篇中 大數據學習系列之五 ----- Hive整合HBase圖文詳解 : http://www.panchengming.com/2017/12/18/pancm62/ 中使用Hive整合HBase,并且測試成功了。在之前的大數據學習系列之一 ----- Hadoop環境搭建(單機) : http://www.panchengming.com/2017/11/26/pancm55/ 中成功的搭建了Hadoop的環境,本文主要講的是Hadoop+Spark 的環境。雖然搭建的是單機版,但是改成集群版的也相當容易,這點以后會寫關于Hadoop+Spark+HBase+Hive+Zookeeper 等集群的相關說明的。
本地虛擬機
操作系統:linux CentOS 7
Cpu:2核
內存:2G
硬盤:40G
JDK:1.8 (jdk-8u144-linux-x64.tar.gz)
Hadoop:2.8.2 (hadoop-2.8.2.tar.gz)
Scala:2.12.2 (scala-2.12.2.tgz)
Spark: 1.6 (spark-1.6.3-bin-hadoop2.4-without-hive.tgz)
官網地址:
JDK:
http://www.oracle.com/technetwork/java/javase/downloads
Hadopp:
http://www.apache.org/dyn/closer.cgi/hadoop/common
Spark:
http://spark.apache.org/downloads.html
Hive on Spark (spark集成hive的版本)
http://mirror.bit.edu.cn/apache/spark/
Scala:
http://www.scala-lang.org/download
百度云:
鏈接:https://pan.baidu.com/s/1geT3A8N 密碼:f7jb
在配置Hadoop+Spark整合之前,應該先做一下配置。
做這些配置為了方便,使用root權限。
首先更改主機名,目的是為了方便管理。
查看本機的名稱
輸入:
hostname
更改本機名稱
輸入:
hostnamectl set-hostname master
注:主機名稱更改之后,要重啟(reboot)才會生效。
修改hosts文件,做關系映射
輸入
vim /etc/hosts
添加
主機的ip 和 主機名稱
192.168.219.128 master
關閉防火墻,方便外部訪問。
CentOS 7版本以下輸入:
關閉防火墻
service iptables stop
CentOS 7 以上的版本輸入:
systemctl stop firewalld.service
輸入:
date
查看服務器時間是否一致,若不一致則更改
更改時間命令
date -s ‘MMDDhhmmYYYY.ss’
因為Spark的配置依賴與Scala,所以先要配置Scala。
Scala的配置
將下載好的Scala文件解壓
輸入
tar -xvf scala-2.12.2.tgz
然后移動到/opt/scala 里面
并且重命名為scala2.1
輸入
mv scala-2.12.2 /opt/scala
mv scala-2.12.2 scala2.1
編輯 /etc/profile 文件
輸入:
export SCALA_HOME=/opt/scala/scala2.1
export PATH=.:${JAVA_HOME}/bin:${SCALA_HOME}/bin:$PATH
輸入:
source /etc/profile
使配置生效
輸入 scala -version 查看是否安裝成功
Spark有兩種,下載的地址都給了,一種是純凈版的spark,一種是集成了hadoop以及hive的版本。本文使用的是第二種
將下載好的Spark文件解壓
輸入
tar -xvf spark-1.6.3-bin-hadoop2.4-without-hive.tgz
然后移動到/opt/spark 里面,并重命名
輸入
mv spark-1.6.3-bin-hadoop2.4-without-hive /opt/spark
mv spark-1.6.3-bin-hadoop2.4-without-hive spark1.6-hadoop2.4-hive
編輯 /etc/profile 文件
輸入:
export SPARK_HOME=/opt/spark/spark1.6-hadoop2.4-hive
export PATH=.:${JAVA_HOME}/bin:${SCALA_HOME}/bin:${SPARK_HOME}/bin:$PATH
輸入:
source /etc/profile
使配置生效
切換目錄
輸入:
cd /opt/spark/spark1.6-hadoop2.4-hive/conf
在conf目錄下,修改spark-env.sh文件,如果沒有 spark-env.sh 該文件,就復制spark-env.sh.template文件并重命名為spark-env.sh。
修改這個新建的spark-env.sh文件,加入配置:
export SCALA_HOME=/opt/scala/scala2.1
export JAVA_HOME=/opt/java/jdk1.8
export HADOOP_HOME=/opt/hadoop/hadoop2.8
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_HOME=/opt/spark/spark1.6-hadoop2.4-hive
export SPARK_MASTER_IP=master
export SPARK_EXECUTOR_MEMORY=1G
注:上面的路徑以自己的為準,SPARK_MASTER_IP為主機,SPARK_EXECUTOR_MEMORY為設置的運行內存。
Hadoop的具體配置在大數據學習系列之一 ----- Hadoop環境搭建(單機) : http://www.panchengming.com/2017/11/26/pancm55 中介紹得很詳細了。所以本文就大體介紹一下。
注:具體配置以自己的為準。
編輯 /etc/profile 文件 :
vim /etc/profile
配置文件:
export HADOOP_HOME=/opt/hadoop/hadoop2.8
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export PATH=.:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:$PATH
先切換到 /home/hadoop/hadoop2.8/etc/hadoop/ 目錄下
輸入:
vim core-site.xml
在<configuration>添加:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/root/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
輸入:
vim hadoop-env.sh
將${JAVA_HOME} 修改為自己的JDK路徑
export JAVA_HOME=${JAVA_HOME}
修改為:
export JAVA_HOME=/home/java/jdk1.8
輸入:
vim hdfs-site.xml
在<configuration>添加:
<property>
<name>dfs.name.dir</name>
<value>/root/hadoop/dfs/name</value>
<description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/root/hadoop/dfs/data</value>
<description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
<description>need not permissions</description>
</property>
如果沒有 mapred-site.xml 該文件,就復制mapred-site.xml.template文件并重命名為mapred-site.xml。
輸入:
vim mapred-site.xml
修改這個新建的mapred-site.xml文件,在<configuration>節點內加入配置:
<property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
</property>
<property>
<name>mapred.local.dir</name>
<value>/root/hadoop/var</value>
</property>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
注:如果已經成功配置了就不用了
啟動之前需要先格式化
切換到/home/hadoop/hadoop2.8/bin目錄下
輸入:
./hadoop namenode -format
格式化成功后,再切換到/home/hadoop/hadoop2.8/sbin目錄下
啟動hdfs和yarn
輸入:
start-dfs.sh
start-yarn.sh
啟動成功后,輸入jsp查看是否啟動成功
在瀏覽器輸入 ip+8088 和ip +50070 界面查看是否能訪問
能正確訪問則啟動成功
啟動spark要確保hadoop已經成功啟動
首先使用jps命令查看啟動的程序
在成功啟動spark之后,再使用jps命令查看
切換到Spark目錄下
輸入:
cd /opt/spark/spark1.6-hadoop2.4-hive/sbin
然后啟動Spark
輸入:
start-all.sh
然后在瀏覽器輸入
http://192.168.219.128:8080/
正確顯示該界面,則啟動成功
注:如果spark成功啟動,但是無法訪問界面,首先檢查防火墻是否關閉,然后在使用jps查看進程,如果都沒問題的,一般就可以訪問界面。如果還是不行,那么檢查hadoop、scala、spark的配置。
那么本文到此結束,謝謝閱讀!
如果覺得不錯,可以點擊一下贊或推薦。
版權聲明:
作者:虛無境
博客園出處:http://www.cnblogs.com/xuwujing
CSDN出處:http://blog.csdn.net/qazwsxpcm
個人博客出處:http://www.panchengming.com
原創不易,轉載請標明出處,謝謝!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。