Hadoop與hbase單機環境安裝
一、Linux系統設定
1,關閉防火牆
關閉防火牆,方便外部訪問。
CentOS 7版本以下輸入:
關閉防火牆
service iptables stop
CentOS 7 以上的版本輸入:
systemctl stop firewalld.service
2,時間設定
輸入:
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.7.2.tar.gz
解壓jdk和hadoop ,分別移動檔案到java和hadoop檔案下,
並將資料夾重新命名為jdk1.8和hadoop2.7
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.7
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.7/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 的單機模式的配置就完成了。
4,hadoop啟動
第一次啟動Hadoop需要初始化
切換到 /home/hadoop/hadoop2.7/bin目錄下輸入
./hadoop namenode -format
初始化成功後,可以在/root/hadoop/dfs/name 目錄下(該路徑在hdfs-site.xml檔案中進行了相應配置,並新建了該資料夾)新增了一個current 目錄以及一些檔案。
啟動Hadoop 主要是啟動HDFS和YARN
切換到/home/hadoop/hadoop2.7/sbin目錄
啟動HDFS
輸入:
start-dfs.sh
登入會詢問是否連線,輸入yes ,然後輸入密碼就可以了
啟動YARN
輸入:
start-yarn.sh
可以輸入 jps 檢視是否成功啟動
HDFS測試地址在瀏覽器輸入:
http://虛擬機器IP:8088/cluster (http://192.168.8.161:8088/cluster)
YARN測試地址在瀏覽器輸入(單機服務下Namenode和JobTrack沒有開啟訪問不了):
http://虛擬機器IP:50070/ ()
三、Hbase環境安裝
1.下載hbase-0.94.3.tar.gz並解壓
2.修改conf/hbase-env.sh:
①去掉JAVA_HOME一句的#並且指定自己的jdk路徑
②找到 export HBASE_MANAGES_ZK=true 這一句,去掉#
3.修改conf/hbase-site.xml,修改為:(XXX替換過為自己的ubuntu使用者名稱) ("/home/XXX/hbase_data/hbase"這個路徑可以自定義為其他路徑,但是一定要確認當前使用者有訪問許可權)
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl"href="configuration.xsl"?>
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:/home/XXX/hbase_data/hbase</value>
</property>
</configuration>
4.進入bin目錄執行start-hbase.sh啟動HBase,安裝啟動完成。
5.檢驗HBase是否正常啟動:
①在bin目錄執行hbase shell,正常的話會進入hbase命令列模式,即 hbase(main):001:0>
②輸入 create 'user' ,'personalinfo',正常的話會出現類似 0 row(s) in 1.3200 seconds 這樣的結果
③繼續輸入 list,正常的話會列出我們剛剛建立的user表
備註:如果在以上操作步驟中出現了異常,請進入logs目錄找到一個字尾為.log的檔案,自行檢視這個檔案中的錯誤資訊,不能自行解決的話就google一下。
大概講解下安裝過程中的各修改的目的:
2.①是指定HBase所使用的jdk,應該是jdk1.7+
2.②是讓HBase使用自己託管的zookeeper
3是指定HBase的資料檔案路徑,預設會存放到系統tmp路徑中,這樣每次重啟後HBase中的資料就被清空了。