day2-搭建hdfs分佈式集羣

一、搭建hdfs分佈式集羣

4.1 hdfs集羣組成結構:

 

 

4.2 安裝hdfs集羣的具體步驟:

1、首先須要準備N臺linux服務器java

學習階段,用虛擬機便可!node

先準備4臺虛擬機:1個namenode節點  + 3 個datanode 節點linux

 

2、修改各臺機器的主機名和ip地址web

主機名:hdp-01  對應的ip地址:192.168.33.61windows

主機名:hdp-02  對應的ip地址:192.168.33.62centos

主機名:hdp-03  對應的ip地址:192.168.33.63瀏覽器

主機名:hdp-04  對應的ip地址:192.168.33.64服務器

 

3、從windows中用CRT軟件進行遠程鏈接app

在windows中將各臺linux機器的主機名配置到的windows的本地域名映射文件中:dom

c:/windows/system32/drivers/etc/hosts

192.168.33.61 hdp-01

192.168.33.62 hdp-02

192.168.33.63 hdp-03

192.168.33.64 hdp-04

 

 

用crt鏈接上後,修改一下crt的顯示配置(字號,編碼集改成UTF-8):

 

 

4、配置linux服務器的基礎軟件環境

 

l  防火牆

關閉防火牆:service iptables stop 

關閉防火牆自啓: chkconfig iptables off

 

l  安裝jdk:(hadoop體系中的各軟件都是java開發的)

1)         利用alt+p 打開sftp窗口,而後將jdk壓縮包拖入sftp窗口

2)         而後在linux中將jdk壓縮包解壓到/root/apps 下

3)         配置環境變量:JAVA_HOME   PATH

vi /etc/profile   在文件的最後,加入:

export JAVA_HOME=/root/apps/jdk1.8.0_60

export PATH=$PATH:$JAVA_HOME/bin

4)         修改完成後,記得 source /etc/profile使配置生效

5)         檢驗:在任意目錄下輸入命令: java -version 看是否成功執行

6)         將安裝好的jdk目錄用scp命令拷貝到其餘機器

7)         將/etc/profile配置文件也用scp命令拷貝到其餘機器並分別執行source命令

 

l  集羣內主機的域名映射配置

在hdp-01上,vi /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.33.61   hdp-01

192.168.33.62   hdp-02

192.168.33.63   hdp-03

192.168.33.64   hdp-04

而後,將hosts文件拷貝到集羣中的全部其餘機器上

scp /etc/hosts hdp-02:/etc/

scp /etc/hosts hdp-03:/etc/

scp /etc/hosts hdp-04:/etc/

 

補充

提示:

若是在執行scp命令的時候,提示沒有scp命令,則能夠配置一個本地yum源來安裝

一、先在虛擬機中配置cdrom爲一個centos的安裝鏡像iso文件

二、在linux系統中將光驅掛在到文件系統中(某個目錄)

三、mkdir /mnt/cdrom

四、mount -t iso9660 -o loop /dev/cdrom /mnt/cdrom

五、檢驗掛載是否成功: ls /mnt/cdrom

六、三、配置yum的倉庫地址配置文件

七、yum的倉庫地址配置文件目錄: /etc/yum.repos.d

八、先將自帶的倉庫地址配置文件批量改名:

 

 

九、而後,拷貝一個出來進行修改

 

 

十、修改完配置文件後,再安裝scp命令:

十一、yum install openssh-clients -y

 

 

5、安裝hdfs集羣

一、上傳hadoop安裝包到hdp-01

 

二、修改配置文件

要點提示

核心配置參數:

1)         指定hadoop的默認文件系統爲:hdfs

2)         指定hdfs的namenode節點爲哪臺機器

3)         指定namenode軟件存儲元數據的本地目錄

4)         指定datanode軟件存放文件塊的本地目錄

 

hadoop的配置文件在:/root/apps/hadoop安裝目錄/etc/hadoop/

 

1) 修改hadoop-env.sh

export JAVA_HOME=/root/apps/jdk1.8.0_60

 

2) 修改core-site.xml

<configuration>

<property>

<name>fs.defaultFS</name>

<value>hdfs://hdp-01:9000</value>

</property>

</configuration>

 

3) 修改hdfs-site.xml

<configuration>

<property>

<name>dfs.namenode.name.dir</name>

<value>/root/dfs/name</value>

</property>

 

<property>

<name>dfs.datanode.data.dir</name>

<value>/root/dfs/data</value>

</property>

 

</configuration>

 

4) 拷貝整個hadoop安裝目錄到其餘機器

scp -r /root/apps/hadoop-2.8.0  hdp-02:/root/apps/

scp -r /root/apps/hadoop-2.8.0  hdp-03:/root/apps/

scp -r /root/apps/hadoop-2.8.0  hdp-04:/root/apps/

 

 

 

5) 啓動HDFS

 

所謂的啓動HDFS,就是在對的機器上啓動對的軟件

要點

提示:

要運行hadoop的命令,須要在linux環境中配置HADOOP_HOME和PATH環境變量

vi /etc/profile

export JAVA_HOME=/root/apps/jdk1.8.0_60

export HADOOP_HOME=/root/apps/hadoop-2.8.0

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

 

 

 

首先,初始化namenode的元數據目錄

要在hdp-01上執行hadoop的一個命令來初始化namenode的元數據存儲目錄

hadoop namenode -format

l  建立一個全新的元數據存儲目錄

l  生成記錄元數據的文件fsimage

l  生成集羣的相關標識:如:集羣id——clusterID

 

而後,啓動namenode進程(在hdp-01上)

hadoop-daemon.sh start namenode

啓動完後,首先用jps查看一下namenode的進程是否存在

 

而後,在windows中用瀏覽器訪問namenode提供的web端口:50070

http://hdp-01:50070

 

而後,啓動衆datanode們(在任意地方)

hadoop-daemon.sh start datanode

 

 

6) 用自動批量啓動腳原本啓動HDFS

1)         先配置hdp-01到集羣中全部機器(包含本身)的免密登錄

2)         配完免密後,能夠執行一次  ssh 0.0.0.0

3)         修改hadoop安裝目錄中/etc/hadoop/slaves(把須要啓動datanode進程的節點列入)

hdp-01

hdp-02

hdp-03

hdp-04

 

4)         在hdp-01上用腳本:start-dfs.sh 來自動啓動整個集羣

5)         若是要中止,則用腳本:stop-dfs.sh

相關文章
相關標籤/搜索