Apache Hadoop-2.7.3偽分散式搭建詳細步驟
1.什麼是Apache Hadoop?
Apache Hadoop專案為可靠,可擴充套件的分散式計算開發開源軟體。
2.Apache Hadoop專案包含哪些模組?
- Hadoop Common:支援其他hadoop模組的常用工具
- HDFS(Hadoop Distributed File System):一種分散式檔案系統,可提供對應用程式資料的高吞吐量訪問
- Hadoop YARN:作業排程和叢集資源管理的框架
- Hadoop MapReduce:一種用於並行處理大型資料集的基於YARN的系統
3.Apache的其他Hadoop相關專案包括哪些?
1.Avro:資料序列化系統
2.HBase:可擴充套件的分散式資料庫,支援大型表格的結構化資料儲存
3.Hive:提供資料彙總和即查詢的資料倉庫基礎架構
4.Spark:用於Hadoop資料的快速和通用計算引擎。Spark提供了一個簡單而富有表現力的程式設計模型,支援廣泛的應用程式,包括ETL,機器學習,流處理和圖計算
5.ZooKeeper:分散式應用程式的高效能協調服務
4.Hadoop偽分散式叢集搭建過程
本機條件:虛擬機器VMware/CentOS6.5/jdk-8u162-linux-x64/hadoop-2.7.3
說明:因為Hadoop是Apache旗下的開源專案,並且底層是java,所以需要安裝jdk
注:搭建hadoop叢集是要給普通使用者使用,使用所以我們應該建立普通使用者,不應為了圖方便使用root使用者
- 通過外部掛載或者使用SSH工具,上傳hadoop、jdk軟體至~/soft(普通使用者工作路徑下的soft,需要手動建立)
$>cp jdk-8u162-linux-x64.tar.gz ~/soft
$>cp hadoop-2.7.3.tar.gz ~/soft
2.加壓相關軟體
$>tar -zxvf jdk-8u162-linux-x64.tar.gz
$>tar -zvxf hadoop-2.7.3.tar.gz
3.建立軟連結(為了配置環境變數的時候方便)
$>ln -s jdk1.8.0_162/ jdk $>ln -s hadoop-2.7.3/ hadoop
4.修改環境變數(只修改當前使用者的環境變數)
$>cd ~
$>vi .bash_profile
注:桌面版本也可以使用gedit
在檔案最後追加以下指令:
#jdk install
export JAVA_HOME=/home/hyxy/soft/jdk
export PATH=$JAVA_HOME/bin:$PATH
#hadoop install
export HADOOP_HOME=/home/hyxy/soft/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
重新整理指令:
$>source .bash_profile
注:重新整理完之後,只有當前會話可用,建議reboot(重啟)
5.配置SSH
a.修改主機名(hostname),如果你的主機名稱為master可以不用修改
$>su
$>vi /etc/sysconfig/network
修改內容:【HOSTNAME=master】
b.修改hosts檔案
$>su
$>vi /etc/hosts
追加內容:【ip 主機名鍵值對】
c.reboot(重啟)
d.生成金鑰
$>ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
【說明:-t:設定生成金鑰的演算法,採用rsa演算法 -P:設定密碼,預設為空 -f:設定金鑰生成的檔案位置,~/.ssh】
e.生成認證庫
$>cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
f.修改認證庫(authorized_keys)的許可權為600
$>chmod 600 ~/.ssh/authorized_keys
g.ssh master
無密登入成功了!!!第一次登入需要輸入密碼這是正常情況
6.配置hadoop
a.找到hadoop的配置路徑:
cd $HADOOP_HOME/etc/hadoop
b.修改core-site.xml配置檔案,在configuration標籤中新增:
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
c.修改hdfs-site.xml配置檔案,在configuration標籤中新增:
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
d.修改hadoop-env.sh中的JAVA_HOME變數:
export JAVA_HOME=/home/hyxy/soft/jdk
e.格式化HDFS
$>hdfs namenode -format
f.開啟hadoop守護程序
$>start-dfs.sh
g.在linux系統上的瀏覽器上輸入:http://master:50070,出現:
並且檢視Live Node :為1,表示成功了!!!
5.怎麼在虛擬機器外部瀏覽器,訪問:http://ip(虛擬機器的實際ip):50070
1.關閉防火牆
$>su
$>chkconfig iptables off
$>chkconfig ip6tables off
2.關閉selinux
$>su
$>vi /etc/sysconfig/selinux
修改內容:【SELINUX=disabled】