1. 程式人生 > >大資料(四) --偽分散式搭建

大資料(四) --偽分散式搭建

說明

    搭建之前, 先根據HDFS三種模式一文將叢集的初始環境配置好.

偽分散式搭建

  1. 將上傳的Hadoop壓縮包解壓 這裡我將檔案解壓到/opt/software/hadoop資料夾下. tar -zxf hadoop-2.6.5.tar.gz -C /opt/software/hadoop

    進入配置檔案修改目錄 cd /opt/software/hadoop/hadoop-2.6.5/etc/hadoop/

  2. 修改hdfs-site.xml配置

vim hdfs-site.xml   編輯檔案, 在configuration標籤對中插入:

<property>
       <name>dfs.replication</name>
       <value>1</value>
</property>

<property>     
		<name>dfs.namenode.secondary.http-address</name>
     	<value>node01:50090</value>
</property>

  其中dfs.replication配置的是block塊的副本數, 這裡偽分散式設值為1, 即沒有副本, 只有本身;

  dfs.namenode.secondary.http-address配置的是SecondaryNameNode節點的地址和埠, 偽分散式都放在同一臺伺服器上.

  1. 修改core-site.xml配置

vim core-site.xml   編輯檔案, 在configuration標籤對中插入

<property>
        <name>fs.defaultFS</name>
        <value>hdfs://node01:9000</value>
</property>
<property>
        <name>hadoop.tmp.dir</name>
        <value>/var/abc/hadoop/cluster</value>
</property>

  其中fs.defaultFS配置的是hdfs檔案目錄的字首, 這裡配置好後, 在輸入操作hdfs目錄的命令時, 就可以直接從’ / ’ 處開始輸入路徑.

  hadoop.tmp.dir配置的是hdfs生成檔案的存放目錄, 包括元資料資訊以及blockId.

  1. 修改slaves配置檔案
vim slaves

編輯slaves, 在檔案中寫入:

node01

  slaves中配置的是從節點(DataNode)資訊, 對於偽分散式來說, 只需加入自身即可.

  1. 修改hadoop-evn.sh檔案

  此步可先跳過, 該檔案可以不修改. 當啟動hdfs出現" JAVA_HOME cannot find or set" 類似的說明java_home沒有配置的提示時, 可再手動配置(前提是執行java -version成功在顯示器列印java版本).

vim hadoop-evn.sh

編輯檔案, 找到export JAVA_HOME=${JAVA_HOME}那一行

將 = 後的內容改為JAVA_HOME的確切路徑, 可使用 echo $JAVA_HOME檢視
export JAVA_HOME=/usr/local/jdk1.8.0_181
  1. 將hadoop配置到使用者環境變數中

  此處配置好後, 可以在任意位置使用hdfs的指令.

vim ~/.bashrc
在檔案最後插入
export PATH=$PATH:/opt/software/hadoop/hadoop-2.6.5/bin:/opt/software/hadoop/hadoop-2.6.5/sbin
  1. 格式化NameNode
hdfs namenode -format

   建立core-site中配置的目錄及檔案

  1. 啟動HDFS
start-dfs.sh
  1. 檢視啟動程序
jps
  1. 操作HDFS檔案系統
建立目錄 hdfs dfs -mkdir -p /abc/cba
上傳檔案 hdfs dfs -D dfs.blocksize=1048576 -put  text.txt
...
  1. 關閉HDFS
stop-dfs.sh
或
killall java

HDFS的程序都是基於JVM的, 因此殺死所有java程序也會把hdfs的程序給關閉.