hadoop安裝與集群

啟動(dòng)hadoop集群
在hadoop01上輸入start-dfs.sh
在hadoop01上輸入start-yarn.sh
在hadoop02上/opt/modules/app/hadoop/sbin輸入./yarn-daemon.sh start resourcemanager啟動(dòng)ResourceManager
在hadoop01上/opt/modules/app/hadoop/sbin/輸入mr-jobhistory-daemon.sh start historyserver啟動(dòng)historyserver
在windows上配置主機(jī)名
然后使用主機(jī)名啟動(dòng)
hadoop01:50070
hadoop02:8088

1.克隆虛擬機(jī)3個(gè) 配置上ip

http://www.itdecent.cn/p/c04532d6a4da

2.修改主機(jī)名

vim /etc/sysconfig/network
hadoop01 
hadoop02 
hadoop03
然后重啟虛擬機(jī) 
reboot 命令

3.綁定虛擬機(jī)的主機(jī)名和IP

vim /etc/hosts
192.168.121.140    hadoop01
192.168.121.141    hadoop02
192.168.121.142    hadoop03

4.規(guī)劃

hadoop01 hadoop02 hadoop03
Namenode ResourceManager
DataNode DataNode DataNodede
NodeManager NodeManager NodeManager
HistoryServer SecondayNameNode

5.在一臺(tái)主機(jī)上裝hadoop 然后使用scp命令拷貝到其他虛擬機(jī)上

6.在opt里建modules/app 目錄

mkdir -p modules/app
將 hadoop-2.8.3.jar.gz文件解壓到這個(gè)文件下
tar   -zxvf   hadoop-2.8.3.jar.gz
修改名字為hadoop
mv  hadoop-2.8.3  hadoop

7. 配置Hadoop JDK路徑修改hadoop-env.sh、mapred-env.sh、yarn-env.sh文件中的JDK路徑:

java -version
添加環(huán)境變量
vim /etc/profile

export HADOOP_HOME=/opt/modules/app/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

source /etc /profile  生效

在/opt/modules/app/hadoop/etc/hadoop 修改配置文件hadoop-env.sh、mapred-env.sh、yarn-env.sh添加java_home的環(huán)境變量

export  JAVA_HOME="/opt/jdk1.8"

8、 配置core-site.xml

vim core-site.xml
<configuration>                //Namenode主機(jī)地址 這上是放在hadoop01上
 <property>
   <name>fs.defaultFS</name>
   <value>hdfs://hadoop01:8020</value>
 </property>
 <property>
   <name>hadoop.tmp.dir</name>
   <value>/opt/modules/app/hadoop2.5.0/data/tmp</value>
 </property>
</configuration>

fs.defaultFS為NameNode的地址。

hadoop.tmp.dir為hadoop臨時(shí)目錄的地址,默認(rèn)情況下,NameNode和DataNode的數(shù)據(jù)文件都會(huì)存在這個(gè)目錄下的對(duì)應(yīng)子目錄下。應(yīng)該保證此目錄是存在的,如果不存在,先創(chuàng)建。
mkdir  -p  /opt/modules/app/hadoop2.5.0/data/tmp

9、 在/opt/modules/app/hadoop/etc/hadoop 修改配置hdfs-site.xml

啟動(dòng)secondnamenode在hadoop03上主機(jī)上

vim    hdfs-site.xml
<configuration>
 <property>
   <name>dfs.namenode.secondary.http-address</name>
   <value>hadoop03:50090</value>
 </property>
</configuration>

dfs.namenode.secondary.http-address是指定secondaryNameNode的http訪問地址和端口號(hào),因?yàn)樵谝?guī)劃中,我們將hadoop03規(guī)劃為SecondaryNameNode服務(wù)器。

所以這里設(shè)置為:hadoop03:50090

10、 在/opt/modules/app/hadoop/etc/hadoop 修改配置slaves

vim   slaves

hadoop01
hadoop02
hadoop03

slaves文件是指定HDFS上有哪些DataNode節(jié)點(diǎn)。

11、在/opt/modules/app/hadoop/etc/hadoop 修改 配置yarn-site.xml

vim   yarn-site.xml

<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop02</value>
    </property>
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>106800</value>
    </property>


根據(jù)規(guī)劃yarn.resourcemanager.hostname這個(gè)指定resourcemanager服務(wù)器指向hadoop02

yarn.log-aggregation-enable是配置是否啟用日志聚集功能。

yarn.log-aggregation.retain-seconds是配置聚集的日志在HDFS上最多保存多長時(shí)間

12、 在/opt/modules/app/hadoop/etc/hadoop 修改配置mapred-site.xml

從mapred-site.xml.template復(fù)制一個(gè)mapred-site.xml文件。

cp    mapred-site.xml.template    mapred-site.xml
vim   mapred-site.xml

<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>hadoop01:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>hadoop01:19888</value>
    </property>


mapreduce.framework.name設(shè)置mapreduce任務(wù)運(yùn)行在yarn上。

mapreduce.jobhistory.address是設(shè)置mapreduce的歷史服務(wù)器安裝在hadoop01機(jī)器上。

mapreduce.jobhistory.webapp.address是設(shè)置歷史服務(wù)器的web頁面地址和端口號(hào)。





13.設(shè)置SSH無密碼登錄

Hadoop集群中的各個(gè)機(jī)器間會(huì)相互地通過SSH訪問,每次訪問都輸入密碼是不現(xiàn)實(shí)的,所以要配置各個(gè)機(jī)器間的
所有虛擬機(jī)都要做
SSH是無密碼登錄的。
1). 在hadoop01上生成公鑰

    在/opt/modules/app/hadoop里輸入ssh-keygen -t rsa
    一路回車

2).把公鑰發(fā)給所有電腦(包括自己)

    yum install ssh-clients
    yum install -y openssh-clients
    [hadoop@hadoop01 hadoop]$ ssh-copy-id hadoop01
    [hadoop@hadoop02 hadoop]$ ssh-copy-id hadoop02
    [hadoop@hadoop03 hadoop]$ ssh-copy-id hadoop03

3). 設(shè)置hadoop02、hadoop03到其他機(jī)器的無密鑰登錄
同樣的在hadoop02、hadoop03上生成公鑰和私鑰后,將公鑰分發(fā)到三 臺(tái)機(jī)器上。
4).把上述1.2命令在其他虛擬機(jī)上再做一遍,分發(fā)公鑰

14.分發(fā)Hadoop文件

1、 首先在其他兩臺(tái)機(jī)器上創(chuàng)建存放Hadoop的目錄

[hadoop@hadoop02 ~]$ mkdir /opt/modules/app
[hadoop@hadoop03 ~]$ mkdir /opt/modules/app

2、 通過Scp分發(fā)

Hadoop根目錄下的share/doc目錄是存放的hadoop的文檔,文件相當(dāng)大,建議在分發(fā)之前將這個(gè)目錄刪除掉,可以節(jié)省硬盤空間并能提高分發(fā)的速度。

doc目錄大小有1.6G。

[hadoop@hadoop01 hadoop]$ du -sh /opt/modules/app/hadoop/share/doc
1.6G    
rm  -rf  /opt/modules/app/hadoop/share/doc
[hadoop@hadoop02 hadoop]$ scp -r /opt/modules/app/hadoop/ hadoop02:/opt/modules/app
[hadoop@hadoop03 hadoop]$ scp -r /opt/modules/app/hadoop/ hadoop03:/opt/modules/app

15.格式化NameNode

1).在NameNode機(jī)器上執(zhí)行格式化:

[hadoop@hadoop01 hadoop]$hdfs namenode -format

/opt/modules/app/hadoop-2.5.0/data/tmp
注意:

如果需要重新格式化NameNode,需要先將原來NameNode和DataNode下的文件全部刪除,不然會(huì)報(bào)錯(cuò),NameNode和DataNode所在目錄是在core-site.xml中hadoop.tmp.dir、dfs.namenode.name.dir、dfs.datanode.data.dir屬性配置的。

<property>
     <name>hadoop.tmp.dir</name>
     <value>/opt/modules/app/hadoop-2.5.0/data/tmp</value>
  </property>
<property>
     <name>dfs.namenode.name.dir</name>
     <value>file://${hadoop.tmp.dir}/dfs/name</value>
  </property>
<property>
     <name>dfs.datanode.data.dir</name>
     <value>file://${hadoop.tmp.dir}/dfs/data</value>
  </property>

因?yàn)槊看胃袷交?,默認(rèn)是創(chuàng)建一個(gè)集群ID,并寫入NameNode和DataNode的VERSION文件中(VERSION文件所在目錄為dfs/name/current 和 dfs/data/current),重新格式化時(shí),默認(rèn)會(huì)生成一個(gè)新的集群ID,如果不刪除原來的目錄,會(huì)導(dǎo)致namenode中的VERSION文件中是新的集群ID,而DataNode中是舊的集群ID,不一致時(shí)會(huì)報(bào)錯(cuò)。

另一種方法是格式化時(shí)指定集群ID參數(shù),指定為舊的集群ID。

16.啟動(dòng)hadoop集群

1)、 啟動(dòng)HDFS

[hadoop@hadoop01 hadoop]$ start-dfs.sh
image.png

2)、 啟動(dòng)YARN

[hadoop@hadoop01 hadoop]$ /opt/modules/app/hadoop/sbin/start-yarn.sh

在hadoop02上啟動(dòng)ResourceManager:

[hadoop@hadoop02 hadoop]$ sbin/yarn-daemon.sh start resourcemanager
image.png

3)、 啟動(dòng)日志服務(wù)器

因?yàn)槲覀円?guī)劃的是在hadoop01服務(wù)器上運(yùn)行MapReduce日志服務(wù),所以要在hadoop01上啟動(dòng)。

[hadoop@hadoop01 ~]$ /opt/modules/app/hadoop/sbin/mr-jobhistory-daemon.sh start historyserver
starting historyserver, logging to /opt/modules/app/hadoop/logs/mapred-hadoop-historyserver-hadoop01
[hadoop@bigdata-senior03 ~]$ jps
3570 Jps
3537 JobHistoryServer
3310 SecondaryNameNode
3213 DataNode
3392 NodeManager

4)、 查看HDFS Web頁面

http://hadoop01:50070/

5)、 查看YARN Web 頁面

http://hadoop02:8088/cluster

6).修改C:\Windows\System32\drivers\etc下的hosts文件
添加
192.168.121.140 hadoop01
192.168.121.141 hadoop02
192.168.121.142 hadoop03

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、系統(tǒng)參數(shù)配置優(yōu)化 1、系統(tǒng)內(nèi)核參數(shù)優(yōu)化配置 修改文件/etc/sysctl.conf,添加如下配置,然后執(zhí)行s...
    張偉科閱讀 3,923評(píng)論 0 14
  • 前言 Hadoop在大數(shù)據(jù)技術(shù)體系中的地位至關(guān)重要,Hadoop是大數(shù)據(jù)技術(shù)的基礎(chǔ),對(duì)Hadoop基礎(chǔ)知識(shí)的掌握的...
    piziyang12138閱讀 2,000評(píng)論 0 3
  • 1. Zookeeper介紹: 1.基本介紹: Zookeeper: 為分布式應(yīng)用提供分布式協(xié)作(協(xié)調(diào))服務(wù)。使用...
    奉先閱讀 4,718評(píng)論 0 10
  • 1.下載軟件 a. 下載VirtualBox http://download.virtualbox.org/vir...
    landy8530閱讀 3,751評(píng)論 3 11
  • 偽分布模式 設(shè)備: 一臺(tái) linux 特點(diǎn): 在單機(jī)上模擬分布式環(huán)境,擁有Hadoop所有功能 配置文件:hado...
    Ada54閱讀 2,019評(píng)論 0 2

友情鏈接更多精彩內(nèi)容