首先準備一臺Linux環(huán)境的服務器磁玉,建議使用 VMware 或者 virtual box 來虛擬一臺服務器,這對于新手來說比較適合驾讲,既能隨時調(diào)整也能隨時導出并遷移蚊伞。
準備軟件:
- Java環(huán)境, 下載鏈接,建議選擇 1.7 版本
- Hadoop環(huán)境吮铭,下載鏈接时迫,建議選擇 2.6 版本
- Spark環(huán)境,下載鏈接谓晌,根據(jù)Hadoop版本來選擇
- Scala環(huán)境掠拳,下載鏈接,推薦使用 2.11.5 版本
- Ubuntu server 鏡像扎谎,推薦選擇14.04(長期支持版本)
- 國內(nèi)網(wǎng)速感人碳想,所以全部所需資料已經(jīng)放在百度分享里面了烧董,自取鏈接: 百度云盤毁靶,密碼: mtnv
操作步驟
- 把Ubuntu鏡像安裝到虛擬機,完成服務器安裝逊移,命名為 server-1预吆。建議增加 /etc/hosts 記錄,方便以后在服務的配置文件中使用(如果使用IP配置的話胳泉,不方便對虛擬機進行遷移拐叉,比如從公司遷移到家里皆的,網(wǎng)段可能會變化箕昭,IP也會變化)
#編輯 /etc/hosts,目前我在局域網(wǎng)中固定使用這個IP
10.0.0.16 server-1
- 在 server-1 上面安裝 openssh-server(不安裝的話沒法SSH遠程連接)
安裝后記得重啟ssh服務
sudo service ssh restart
- 把軟件包放在 /opt 目錄下拂封, 查看/opt下的文件夾
/opt/hadoop-2.6.0
/opt/jdk1.7.0_79
/opt/scala-2.11.5
/opt/spark-1.6.1-bin-hadoop2.6
- 設置環(huán)境變量
#根據(jù)實際安裝位置修改代碼案铺,添加至 "/etc/profile" 末尾
export JAVA_HOME=/opt/jdk1.7.0_79
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export SCALA_HOME=/opt/scala-2.11.5
export HADOOP_HOME=/home/spark/opt/hadoop-2.6.0
export SPARK_HOME=/opt/spark-1.6.1-bin-hadoop2.6
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:${SCALA_HOME}/bin:${SPARK_HOME}/bin:${HADOOP_HOME}/bin
- 使環(huán)境變量生效
source /etc/profile
- 驗證安裝是否正確蔬芥,查看輸出信息
java -version
javac -version
scala -version
- 進入配置文件目錄 修改Hadoop的配置文件(包括7-16)
cd /opt/hadoop-2.6.0
# 建立目錄提供給程序使用
mkdir tmp && mkdir -p dfs/name && mkdir -p dfs/data
- 修改配置文件hadoop-env.sh(路徑:/opt/hadoop-2.6.0/etc/hadoop,下同控汉,建議修改任何配置文件前都先備份)
# 注釋原來的 JAVA_HOME 變量笔诵,重新寫入
export JAVA_HOME=/opt/jdk1.7.0_79
- 修改配置文件yarn-env.sh
#在文件開頭導入環(huán)境變量
export JAVA_HOME=/opt/jdk1.7.0_79
- 修改配置文件 slaves,把 localhost 改為 server-1 即可
- 修改核心配置文件 core-site.xml
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://server-1:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/opt/hadoop-2.6.0/tmp</value>
<description>Abasefor other temporary directories.</description>
</property>
<property>
<name>hadoop.proxyuser.spark.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.spark.groups</name>
<value>*</value>
</property>
</configuration>
- 修改 hdfs-site.xml 配置文件
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>server-1:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/opt/hadoop-2.6.0/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/opt/hadoop-2.6.0/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
- 修改 mapred-site.xml 配置文件
# 首先拷貝配置文件
cp mapred-site.xml.template mapred-site.xml
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>server-1:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>server-1:19888</value>
</property>
</configuration>
- 修改 yarn-site.xml 配置文件
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>server-1:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>server-1:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>server-1:8035</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>server-1:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>server-1:8088</value>
</property>
</configuration>
- 驗證 hadoop 配置
cd /opt/hadoop-2.6.0 && ./bin/hadoop namenode -format
- 啟動和停止 hadoop 相關(guān)服務
./sbin/start-all.sh
./sbin/stop-all.sh
這里需要提示使用密碼姑子,則可以配置本機通過 SSH 免密碼登錄乎婿,ssh server-1 成功即可
- 進入目錄修改 spark 相關(guān)配置文件
cd /opt/spark-1.6.1-bin-hadoop2.6
cp conf/spark-env.sh.template conf/spark-env.sh
編輯配置文件
export JAVA_HOME=/opt/jdk1.7.0_79
export SCALA_HOME=/opt/scala-2.11.5
export SPARK_MASTER_IP=server-1
export SPARK_WORKER_MEMORY=1028m
export HADOOP_CONF_DIR=/opt/hadoop-2.6.0/etc/hadoop
啟動相關(guān)服務
./sbin/start-all.sh
- server-1:50070 可以查看Hadoop集群狀態(tài)信息,如果出現(xiàn)任何錯誤可以到對應的日志文件夾查看信息
例如查看namenode相關(guān)日志
cd /opt/hadoop-2.6.0/logs
tail -f hadoop-odirus-namenode-server-1.out
文件聲明
被分享的軟件均通過百度云從原始網(wǎng)站離線下載街佑,自己沒做任何修改(百度云有沒有修改無法保證谢翎,不放心的可以校驗哈希值)捍靠。