九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
hadoop安裝教程

Hadoop安裝教程分布式配置_CentOS6.5/Hadoop2.6.5

1  創(chuàng)建hadoop用戶

su # 上述提到的以 root 用戶登錄# useradd -m hadoop -s /bin/bash # 創(chuàng)建新用戶hadoop

如下圖所示,這條命令創(chuàng)建了可以登陸的 hadoop 用戶,并使用 /bin/bash 作為shell。

# passwd hadoop

修改用戶的密碼

# visudo

為用戶增加管理員權(quán)限

如下圖,找到 root ALL=(ALL) ALL 這行(應(yīng)該在第98行,可以先按一下鍵盤上的 ESC 鍵,然后輸入 :98 (按一下冒號(hào),接著輸入98,再按回車鍵),可以直接跳到第98行 ),然后在這行下面增加一行內(nèi)容:hadoop ALL=(ALL) ALL (當(dāng)中的間隔為tab),如下圖所示:

添加好內(nèi)容后,先按一下鍵盤上的 ESC 鍵,然后輸入 :wq (輸入冒號(hào)還有wq,這是vi/vim編輯器的保存方法),再按回車鍵保存退出就可以了。

最后注銷當(dāng)前用戶(點(diǎn)擊屏幕右上角的用戶名,選擇退出->注銷),在登陸界面使用剛創(chuàng)建的 hadoop 用戶進(jìn)行登陸。(如果已經(jīng)是 hadoop 用戶,且在終端中使用 su 登錄了 root 用戶,那么需要執(zhí)行 exit 退出 root 用戶狀態(tài))

2 安裝SSH、配置SSH無密碼登陸

CentOS 默認(rèn)已安裝了 SSH client、SSH server,打開終端執(zhí)行如下命令進(jìn)行檢驗(yàn)

# rpm -qa | grep ssh

如果返回的結(jié)果如下圖所示,包含了 SSH client 跟 SSH server,則不需要再安裝

若需要安裝,則可以通過 yum 進(jìn)行安裝(安裝過程中會(huì)讓你輸入 [y/N],輸入 y 即可):

$ sudo yum install openssh-clients$ sudo yum install openssh-server

接著執(zhí)行如下命令測(cè)試一下 SSH 是否可用:

$ ssh localhost

此時(shí)會(huì)有如下提示(SSH首次登陸提示),輸入 yes 。然后按提示輸入密碼 hadoop,這樣就登陸到本機(jī)了。

但這樣登陸是需要每次輸入密碼的,我們需要配置成SSH無密碼登陸比較方便。

首先輸入 exit 退出剛才的 ssh,就回到了我們?cè)鹊慕K端窗口,然后利用 ssh-keygen 生成密鑰,并將密鑰加入到授權(quán)中:

$ exit                           # 退出剛才的 ssh localhost$ cd ~/.ssh/                     # 若沒有該目錄,請(qǐng)先執(zhí)行一次ssh localhost$ ssh-keygen -t rsa              # 會(huì)有提示,都按回車就可以$ cat id_rsa.pub >> authorized_keys  # 加入授權(quán)$ chmod 600 ./authorized_keys    # 修改文件權(quán)限

此時(shí)再用 ssh localhost 命令,無需輸入密碼就可以直接登陸了,如下圖所示。

3 安裝Java環(huán)境

(1)卸載自帶OPENJDK
    用 java -version 命令查看當(dāng)前jdk版本信息

    #java -version

    用rpm -qa | grep java 命令查詢操作系統(tǒng)自身安裝的java

  #rpm -qa | grep java

    執(zhí)行結(jié)果如下

      python-javapackages-3.4.1-11.el7.noarch      java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64        java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64      tzdata-java-2015g-1.el7.noarch      javapackages-tools-3.4.1-11.el7.noarch      java-1.7.0-openjdk-headless-1.7.0.91-2.6.2.3.el7.x86_64      java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64

     用rpm命令卸載下面這些文件(操作系統(tǒng)自身帶的java相關(guān)文件)

  #rpm -e --nodeps java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64    #rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64  #rpm -e --nodeps tzdata-java-2015g-1.el7.noarch  #rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.91-2.6.2.3.el7.x86_64  #rpm -e --nodeps java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64

     如果卸載錯(cuò)了,可使用yum install 來安裝

(2)下載解壓jdk

$ sudo yum install java-1.7.0-openjdk java-1.7.0-openjdk-devel

Java 環(huán)境可選擇 Oracle 的 JDK,或是 OpenJDK,現(xiàn)在一般 Linux 系統(tǒng)默認(rèn)安裝的基本是 OpenJDK,如 CentOS 6.4 就默認(rèn)安裝了 OpenJDK 1.7。Hadoop 在 OpenJDK 1.7 下運(yùn)行是沒問題的。需要注意的是,CentOS 6.4 中默認(rèn)安裝的只是 Java JRE,而不是 JDK,為了開發(fā)方便,我們還是需要通過 yum 進(jìn)行安裝 JDK,安裝過程中會(huì)讓輸入 [y/N],輸入 y 即可:

通過上述命令安裝 OpenJDK,默認(rèn)安裝位置為 /usr/lib/jvm/java-1.7.0-openjdk(該路徑可以通過執(zhí)行 rpm -ql java-1.7.0-openjdk-devel | grep '/bin/javac' 命令確定,執(zhí)行后會(huì)輸出一個(gè)路徑,除去路徑末尾的 “/bin/javac”,剩下的就是正確的路徑了)。OpenJDK 安裝后就可以直接使用 java、javac 等命令了。

接著需要配置一下 JAVA_HOME 環(huán)境變量,為方便,我們?cè)?~/.bashrc 中進(jìn)行設(shè)置.

$ vim ~/.bashrc

在文件最后面添加如下單獨(dú)一行(指向 JDK 的安裝位置),并保存:

export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.171-2.6.13.0.el7_4.x86_64
$ source ~/.bashrc    # 使變量設(shè)置生效

設(shè)置好后我們來檢驗(yàn)一下是否設(shè)置正確:

$ echo $JAVA_HOME     # 檢驗(yàn)變量值$ java -version$ $JAVA_HOME/bin/java -version  # 與直接執(zhí)行 java -version 一樣

如果設(shè)置正確的話,$JAVA_HOME/bin/java -version 會(huì)輸出 java 的版本信息,且和 java -version 的輸出結(jié)果一樣

4 安裝 Hadoop 2.6.5

下載hadoop-2.6.5.tar.gz 解壓到

$ sudo tar -zxf ~/下載/hadoop-2.6.5.tar.gz -C /usr/local # 解壓到/usr/local中
$ cd /usr/local/
$ sudo mv ./hadoop-2.6.5/ ./hadoop # 將文件夾名改為hadoop
$ sudo chown -R hadoop:hadoop ./hadoop # 修改文件權(quán)限

Hadoop 解壓后即可使用。輸入如下命令來檢查 Hadoop 是否可用,成功則會(huì)顯示 Hadoop 版本信息 

$ cd /usr/local/hadoop$ ./bin/hadoop version

5 hadoop集群配置

 完成上面的基礎(chǔ)為配置hadoop集群的基礎(chǔ)。準(zhǔn)備兩臺(tái)機(jī)子Master(主節(jié)點(diǎn)),slave1(子節(jié)點(diǎn))在兩個(gè)節(jié)點(diǎn)上配置hadoop用戶,java環(huán)境,ssh無密碼登錄,hadoop安裝。

如果使用的是虛擬機(jī)安裝的系統(tǒng),那么需要更改網(wǎng)絡(luò)連接方式為橋接(Bridge)模式,才能實(shí)現(xiàn)多個(gè)節(jié)點(diǎn)互連,例如在 VirturalBox 中的設(shè)置如下圖。此外,如果節(jié)點(diǎn)的系統(tǒng)是在虛擬機(jī)中直接復(fù)制的,要確保各個(gè)節(jié)點(diǎn)的 Mac 地址不同(可以點(diǎn)右邊的按鈕隨機(jī)生成 MAC 地址,否則 IP 會(huì)沖突)

為了便于區(qū)分,可以修改各個(gè)節(jié)點(diǎn)的主機(jī)名(在終端標(biāo)題、命令行中可以看到主機(jī)名,以便區(qū)分)。在 Ubuntu/CentOS 7 中,我們?cè)?Master 節(jié)點(diǎn)上執(zhí)行如下命令修改主機(jī)名(即改為 Master,注意是區(qū)分大小寫的)

$ sudo vim /etc/hostname

如果是用 CentOS 6.x 系統(tǒng),則是修改 /etc/sysconfig/network 文件,改為 HOSTNAME=Master,如下圖所示:

然后執(zhí)行如下命令修改自己所用節(jié)點(diǎn)的IP映射:

$ sudo vim /etc/hosts

我們?cè)?/etc/hosts 中將該映射關(guān)系填寫上去即可,如下圖所示(一般該文件中只有一個(gè) 127.0.0.1,其對(duì)應(yīng)名為 localhost,如果有多余的應(yīng)刪除,特別是不能有 “127.0.0.1 Master” 這樣的記錄):

修改完成后需要重啟一下,重啟后在終端中才會(huì)看到機(jī)器名的變化。接下來的教程中請(qǐng)注意區(qū)分 Master 節(jié)點(diǎn)與 Slave 節(jié)點(diǎn)的操作。

 

配置好后需要在各個(gè)節(jié)點(diǎn)上執(zhí)行如下命令,測(cè)試是否相互 ping 得通,如果 ping 不通,后面就無法順利配置成功

ping Master -c 3   # 只ping 3次,否則要按 Ctrl+c 中斷ping Slave1 -c 3

例如我在 Master 節(jié)點(diǎn)上 ping Slave1,ping 通的話會(huì)顯示 time,顯示的結(jié)果如下圖所示

繼續(xù)下一步配置前,請(qǐng)先完成所有節(jié)點(diǎn)的網(wǎng)絡(luò)配置,修改過主機(jī)名的話需重啟才能生效。

   SSH無密碼登陸節(jié)點(diǎn)

這個(gè)操作是要讓 Master 節(jié)點(diǎn)可以無密碼 SSH 登陸到各個(gè) Slave 節(jié)點(diǎn)上。

首先生成 Master 節(jié)點(diǎn)的公匙,在 Master 節(jié)點(diǎn)的終端中執(zhí)行(因?yàn)楦倪^主機(jī)名,所以還需要?jiǎng)h掉原有的再重新生成一次)

$ cd ~/.ssh               # 如果沒有該目錄,先執(zhí)行一次ssh localhost$ rm ./id_rsa*            # 刪除之前生成的公匙(如果有)$ ssh-keygen -t rsa       # 一直按回車就可以

 讓 Master 節(jié)點(diǎn)需能無密碼 SSH 本機(jī),在 Master 節(jié)點(diǎn)上執(zhí)行:

cat ./id_rsa.pub >> ./authorized_keys

完成后可執(zhí)行 ssh Master 驗(yàn)證一下(可能需要輸入 yes,成功后執(zhí)行 exit 返回原來的終端)。接著在 Master 節(jié)點(diǎn)將上公匙傳輸?shù)?Slave1 節(jié)點(diǎn):

$ scp ~/.ssh/id_rsa.pub hadoop@Slave1:/home/hadoop/

scp 是 secure copy 的簡(jiǎn)寫,用于在 Linux 下進(jìn)行遠(yuǎn)程拷貝文件,類似于 cp 命令,不過 cp 只能在本機(jī)中拷貝。執(zhí)行 scp 時(shí)會(huì)要求輸入 Slave1 上 hadoop 用戶的密碼(hadoop),輸入完成后會(huì)提示傳輸完畢,如下圖所示:

接著在 Slave1 節(jié)點(diǎn)上,將 ssh 公匙加入授權(quán):

$ mkdir ~/.ssh       # 如果不存在該文件夾需先創(chuàng)建,若已存在則忽略$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys$ rm ~/id_rsa.pub    # 用完就可以刪掉了

如果有其他 Slave 節(jié)點(diǎn),也要執(zhí)行將 Master 公匙傳輸?shù)?Slave 節(jié)點(diǎn)、在 Slave 節(jié)點(diǎn)上加入授權(quán)這兩步。

這樣,在 Master 節(jié)點(diǎn)上就可以無密碼 SSH 到各個(gè) Slave 節(jié)點(diǎn)了,可在 Master 節(jié)點(diǎn)上執(zhí)行如下命令進(jìn)行檢驗(yàn),如下圖所示:

$ ssh Slave1

 

配置集群/分布式環(huán)境

集群/分布式模式需要修改 /usr/local/hadoop/etc/hadoop 中的5個(gè)配置文件,更多設(shè)置項(xiàng)可點(diǎn)擊查看官方說明,這里僅設(shè)置了正常啟動(dòng)所必須的設(shè)置項(xiàng): slaves、core-site.xml、hdfs-site.xml、mapred-site.xmlyarn-site.xml 。

1, 文件 slaves,將作為 DataNode 的主機(jī)名寫入該文件,每行一個(gè),默認(rèn)為 localhost,所以在偽分布式配置時(shí),節(jié)點(diǎn)即作為 NameNode 也作為 DataNode。分布式配置可以保留 localhost,也可以刪掉,讓 Master 節(jié)點(diǎn)僅作為 NameNode 使用。

本教程讓 Master 節(jié)點(diǎn)僅作為 NameNode 使用,因此將文件中原來的 localhost 刪除,只添加一行內(nèi)容:Slave1。

2, 文件 core-site.xml 改為下面的配置:

<configuration>        <property>                <name>fs.defaultFS</name>                <value>hdfs://Master:9000</value></property>        <property>                <name>hadoop.tmp.dir</name>                <value>file:/usr/local/hadoop/tmp</value>                <description>Abase for other temporary directories.</description>        </property></configuration>

3, 文件 hdfs-site.xml,dfs.replication 一般設(shè)為 3,但我們只有一個(gè) Slave 節(jié)點(diǎn),所以 dfs.replication 的值還是設(shè)為 1

<configuration>        <property>                <name>dfs.namenode.secondary.http-address</name>                <value>Master:50090</value>        </property>        <property>                <name>dfs.replication</name>                <value>1</value>        </property>        <property>                <name>dfs.namenode.name.dir</name>                <value>file:/usr/local/hadoop/tmp/dfs/name</value>        </property>        <property>                <name>dfs.datanode.data.dir</name>                <value>file:/usr/local/hadoop/tmp/dfs/data</value>        </property></configuration>

4, 文件 mapred-site.xml (可能需要先重命名,默認(rèn)文件名為 mapred-site.xml.template),然后配置修改如下:

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

5, 文件 yarn-site.xml

<configuration>        <property>                <name>yarn.resourcemanager.hostname</name>                <value>Master</value>        </property>        <property>                <name>yarn.nodemanager.aux-services</name>                <value>mapreduce_shuffle</value>        </property></configuration>

配置好后,將 Master 上的 /usr/local/Hadoop 文件夾復(fù)制到各個(gè)節(jié)點(diǎn)上。因?yàn)橹坝信苓^偽分布式模式,建議在切換到集群模式前先刪除之前的臨時(shí)文件。在 Master 節(jié)點(diǎn)上執(zhí)行:

$ cd /usr/local$ sudo rm -r ./hadoop/tmp     # 刪除 Hadoop 臨時(shí)文件$ sudo rm -r ./hadoop/logs/*   # 刪除日志文件$ tar -zcf ~/hadoop.master.tar.gz ./hadoop   # 先壓縮再復(fù)制$ cd ~$ scp ./hadoop.master.tar.gz Slave1:/home/hadoop

在 Slave1 節(jié)點(diǎn)上執(zhí)行:

$ sudo rm -r /usr/local/hadoop    # 刪掉舊的(如果存在)$ sudo tar -zxf ~/hadoop.master.tar.gz -C /usr/local$ sudo chown -R hadop /usr/local/hadoop

同樣,如果有其他 Slave 節(jié)點(diǎn),也要執(zhí)行將 hadoop.master.tar.gz 傳輸?shù)?Slave 節(jié)點(diǎn)、在 Slave 節(jié)點(diǎn)解壓文件的操作。

首次啟動(dòng)需要先在 Master 節(jié)點(diǎn)執(zhí)行 NameNode 的格式化:

$ hdfs namenode -format       # 首次運(yùn)行需要執(zhí)行初始化,之后不需要
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Ubuntu搭建云平臺(tái)
如何裝Hadoop?詳細(xì)點(diǎn)哈?
hadoop搭建的前期準(zhǔn)備
Hadoop分布式集群
Hadoop 2.7分布式集群環(huán)境搭建
Ubuntu14.04 hadoop2.5.2完全分布式集群搭建
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服