大資料學習系列之一 ----- Hadoop環境搭建(單機)
一、環境選擇
1,伺服器選擇
阿里雲伺服器:入門型(按量付費) 作業系統:linux CentOS 6.8 Cpu:1核 記憶體:1G 硬碟:40G ip:39.108.77.250
2,配置選擇
JDK:1.8 (jdk-8u144-linux-x64.tar.gz) Hadoop:2.8.2 (hadoop-2.8.2.tar.gz)
3,下載地址
大資料學習群:點選連結加入群聊【大資料學習分享交流群】:https://jq.qq.com/?_wv=1027&k=5nXDmvD
二、伺服器的相關配置
在配置Hadoop之前,應該先做以下配置
1,更改主機名
首先更改主機名,目的是為了方便管理。 輸入:
hostname
檢視本機的名稱 然後輸入:
vim /etc/sysconfig/network
修改主機名稱 將HOSTNAME 的名稱更改為你想要設定的名稱 注:主機名稱更改之後,要重啟(reboot)才會生效。
輸入
vim /etc/hosts
新增 主機IP 和對應的主機名稱,做對映。
注:在配置檔案中使用主機名的話,這個對映必須做!
2,關閉防火牆
關閉防火牆,方便外部訪問。 CentOS 7版本以下輸入: 關閉防火牆
service iptables stop
CentOS 7 以上的版本輸入:
systemctl stop firewalld.service
3,時間設定
輸入:
date
檢視伺服器時間是否一致,若不一致則更改 更改時間命令
date -s ‘MMDDhhmmYYYY.ss’
三、Hadoop環境安裝
1,下載jdk、hadoop
將下載下來的 jdk、hadoop 解壓包放在home 目錄下 並新建java、hadoop資料夾
3.1.1解壓檔案
輸入: tar -xvf jdk-8u144-linux-x64.tar.gz tar -xvf hadoop-2.8.2.tar.gz 解壓jdk和hadoop ,分別移動檔案到java和hadoop檔案下, 並將資料夾重新命名為jdk1.8和hadoop2.8
2,JDK環境配置
首先輸入
java -version
檢視是否安裝了JDK,如果安裝了,但版本不適合的話,就解除安裝
3.2.1 profile 檔案更改
編輯 /etc/profile 檔案 輸入:
vim /etc/profile
整體的配置檔案:
export JAVA_HOME=/home/java/jdk1.8
export JRE_HOME=/home/java/jdk1.8/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=.:${JAVA_HOME}/bin:$PATH
注: JAVA_HOME的路徑是 JDK的路徑
使用vim 編輯之後 記得輸入
source /etc/profile
使配置生效
配置完後,輸入java -version
檢視版本資訊
3,Hadoop 環境配置
3.3.1 profile 檔案更改
編輯 /etc/profile 檔案 輸入:
vim /etc/profile
整體的配置檔案:
export HADOOP_HOME=/home/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
輸入:
source /etc/profile
使配置生效
修改配置檔案
3.3.2新建資料夾
在修改配置檔案之前,現在root目錄下建立一些資料夾。 輸入:
mkdir /root/hadoop
mkdir /root/hadoop/tmp
mkdir /root/hadoop/var
mkdir /root/hadoop/dfs
mkdir /root/hadoop/dfs/name
mkdir /root/hadoop/dfs/data
注:在root目錄下新建資料夾是防止被莫名的刪除。
首先切換到 /home/hadoop/hadoop2.8/etc/hadoop/ 目錄下
3.3.3修改 core-site.xml
輸入:
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://test1:9000</value>
</property>
</configuration>
說明: test1 可以替換為主機的ip。
3.3.4修改 hadoop-env.sh
輸入:
vim hadoop-env.sh
將${JAVA_HOME}
修改為自己的JDK路徑
export JAVA_HOME=${JAVA_HOME}
修改為:
export JAVA_HOME=/home/java/jdk1.8
3.4.5修改 hdfs-site.xml
輸入:
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>
說明:dfs.permissions配置為false後,可以允許不要檢查許可權就生成dfs上的檔案,方便倒是方便了,但是你需要防止誤刪除,請將它設定為true,或者直接將該property節點刪除,因為預設就是true。
3.4.6 修改mapred-site.xml
如果沒有 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>test1: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>
使用的命令: 到此 Hadoop 的單機模式的配置就完成了。
四、Hadoop啟動
第一次啟動Hadoop需要初始化 切換到 /home/hadoop/hadoop2.8/bin目錄下輸入
./hadoop namenode -format
初始化成功後,可以在/root/hadoop/dfs/name 目錄下(該路徑在hdfs-site.xml檔案中進行了相應配置,並新建了該資料夾)新增了一個current 目錄以及一些檔案。
啟動Hadoop 主要是啟動HDFS和YARN 切換到/home/hadoop/hadoop2.8/sbin目錄 啟動HDFS 輸入:
start-dfs.sh
登入會詢問是否連線,輸入yes ,然後輸入密碼就可以了
啟動YARN 輸入:
start-yarn.sh
可以輸入 jps 檢視是否成功啟動
輸入:http://39.108.77.250:50070注:當時忘記截圖了,這張使用的是本地用虛擬機器搭建環境的圖片。 到此,Hadoop的單機配置就結束了。
如果你對生活感覺到了絕望,請不要氣餒。因為這樣只會讓你更加絕望! 所謂的希望往往都是在絕望中萌發的,所以,請不要放棄希望!
大資料學習加群:868847735