欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
用Hadoop搭建分布式存儲和分布式運算集群

1. 列出使用的機器

普通PC,要求:
cpu: 750M-1G
mem: >128M
disk: >10G
不需要太昂貴的機器。

機器名:
finewine01
finewine02
finewine03

將finewine01設為主節點(diǎn),其它的機器為從節點(diǎn)。

2. 下載和生成

從這里checkout,我選擇trunk
http://svn.apache.org/repos/asf/lucene/hadoop/
使用ant進(jìn)行生成

3. 部署前的準備工作
在主節點(diǎn)的start-all.sh腳本執行后,主節點(diǎn)和從節點(diǎn)的所有服務(wù)運行。即這個(gè)腳本將啟動(dòng)主節點(diǎn)的服務(wù),并ssh到從所有的節點(diǎn),繼而啟動(dòng)從節點(diǎn)的服務(wù)。

start-all.sh這個(gè)腳本假定hadoop被安裝在所有機器的同一個(gè)位置,每一臺機器都用同一個(gè)路徑存放hadoop的數據。

我們需要在每臺機器上創(chuàng )建同樣的目錄結構。
/hadoop
/hadoop-install/hadoop-0.10.0 hadoop的0.10.0版的安裝位置
/filesystem hadoop文件系統的根
/home 用戶(hù)hadoop的主目錄

以root登錄到所有的機器,創(chuàng )建hadoop用戶(hù)和目錄結構。
ssh -l root finewine01
mkdir /hadoop
mkdir /hadoop/hadoop-install
mkdir /hadoop/filesystem
mkdir /hadoop/home
groupadd hadoop
useradd -d /hadoop/home -g hadoop hadoop
chown -R hadoop:hadoop /hadoop
passwd hadoop hadooppassword

start-all.sh腳本要啟動(dòng)所有機器的服務(wù),需要對所有的機器進(jìn)行ssh無(wú)密碼的登錄的能力。因此我們需要在每臺機器上創(chuàng )建一個(gè)ssh key。在這個(gè)例子中,主節點(diǎn)也需要啟動(dòng)自己的服務(wù),因此主節點(diǎn)同樣需要做無(wú)密碼的ssh登錄設置。

用vi編輯/hadoop/hadoop-install/hadoop-0.10.0/conf/hadoop-env.sh,將下面的環(huán)境變量設置:

export HADOOP_HOME=/hadoop/hadoop-install/hadoop-0.10.0
export JAVA_HOME=/usr/java/jdk1.5.0_06
export HADOOP_LOG_DIR=${HADOOP_HOME}/logs
export HADOOP_SLAVES=${HADOOP_HOME}/conf/slaves

這個(gè)文件還有很多變量,這些變量的設定影響hadoop的運行。比如你以后執行腳本時(shí)發(fā)生ssh錯誤,就需要調整其中的HADOOP_SSH_OPTS變量。
同時(shí)需要注意的是,在初始的拷貝操作后,需要在設置hadoop-env.sh文件中的HADOOP_MASTER變量,這樣程序才能通過(guò)rsync同步主節點(diǎn)的改變到所有的從節點(diǎn)上。

在主節點(diǎn)上創(chuàng )建ssh keys,然后復制到各個(gè)從節點(diǎn)上。這些操作必須由先前創(chuàng )建的hadoop用戶(hù)完成。不要su成hadoop用戶(hù)來(lái)做。開(kāi)啟一個(gè)新shell,以hadoop用戶(hù)的身份登錄來(lái)完成這些操作。
cd /hadoop/home
ssh-keygen -t rsa (Use empty responses for each prompt)
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /hadoop/home/.ssh/id_rsa.
Your public key has been saved in /hadoop/home/.ssh/id_rsa.pub.
The key fingerprint is:
a6:5c:c3:eb:18:94:0b:06:a1:a6:29:58:fa:80:0a:bc nutch@localhost

在主節點(diǎn)上,拷貝剛才創(chuàng )建的公共key到一個(gè)名為authorized_keys的文件:
cd /hadoop/home/.ssh
cp id_rsa.pub authorized_keys

只需在主節點(diǎn)上運行ssh-kegen程序。其他節點(diǎn)的目錄結構創(chuàng )建后,將剛才在主節點(diǎn)創(chuàng )建的keys通過(guò)scp拷貝到從節點(diǎn)的同樣的目錄上。
scp /hadoop/home/.ssh/authorized_keys hadoop@finewine02:/hadoop/home/.ssh/authorized_keys
第一次,你需要輸入hadoop用戶(hù)的密碼。第一次登錄到其他的機器上,ssh提示你是否選擇將機器加入到已知的機器列表中,選擇yes。這個(gè)keys文件拷貝后,以hadoop的身份從主節點(diǎn)到從節點(diǎn)的登錄就不需要密碼了。
可以從主節點(diǎn)上以hadoop的身份測試:
ssh finewine02
接下來(lái)一個(gè)命令提示符將直接出現,不需要密碼的。

一旦成功在所有機器上創(chuàng )建ssh keys后,就可以開(kāi)始在從節點(diǎn)上部署hadoop。

4. 部署hadoop到一個(gè)機器上

首先,我們部署hadoop到一個(gè)節點(diǎn)上(主節點(diǎn))。確保運行正常后,加入其他從節點(diǎn)。下面所有的操作都是由登錄后的hadoop用戶(hù)進(jìn)行的。
cp -R /path/to/build/* /hadoop/hadoop-install/hadoop-x.x.x

然后確保這些shell腳本文件都是unix格式,并且是可執行的(這些文件分別在/bin和/conf目錄中)。

一個(gè)hadoop-site.xml的例子:

fs.default.name
finewine01:9000

The name of the default file system. Either the literal string
“local” or a host:port for NDFS.

mapred.job.tracker
finewine01:9001

The host and port that the MapReduce job tracker runs at. If
“local”, then jobs are run in-process as a single map and
reduce task.

mapred.map.tasks
2

define mapred.map tasks to be number of slave hosts

mapred.reduce.tasks
2

define mapred.reduce tasks to be number of slave hosts

dfs.name.dir
/hadoop/filesystem/name
dfs.data.dir
/hadoop/filesystem/data
mapred.system.dir
/hadoop/filesystem/mapreduce/system
mapred.local.dir
/hadoop/filesystem/mapreduce/local
dfs.replication
1
fs.default.name // 缺省的文件系統 “local”或者”host:port”

hadoop包含兩個(gè)組件,分別是分布式文件系統和mapreduce功能。分布式文件系統允許你在多臺普通機器上存儲和復制文件。mapreduce可以讓你很容易就執行并行程序任務(wù)。

分布式文件系統包含名字節點(diǎn)和數據節點(diǎn)。當一個(gè)客戶(hù)想操作一個(gè)在文件系統上的文件時(shí),它首先和名字節點(diǎn)聯(lián)系,名字節點(diǎn)將告訴它在那個(gè)數據節點(diǎn)上可以取得文件。名字節點(diǎn)負責調度和保存那些數據塊保存和復制到在那些機器上。數據節點(diǎn)是數據倉庫,保存真實(shí)的文件數據塊。當你在同一臺機器上運行名字節點(diǎn)和數據節點(diǎn)的服務(wù)時(shí),它同樣會(huì )通過(guò)sockets來(lái)通訊,如同在不同機器上一樣。

mapreduce是一種分布式運算,就如分布式文件系統一樣,只不過(guò)分布的一個(gè)運算操作,而不是文件。負責mapreduce調度服務(wù)器叫做mapreduce job tracker。每一個(gè)執行運算操作的節點(diǎn)都有一個(gè)守護叫task tracker,task tracker運行并且和job tracker通信。

主節點(diǎn)和從節點(diǎn)的通信以連續的heartbeat(5-10秒)的方式進(jìn)行。如果從節點(diǎn)的heartbeat停止,主節點(diǎn)將假定該從節點(diǎn)失效并不再使用該節點(diǎn)。

mapredu.job.traker // mapreduce的主節點(diǎn),”local”或者”host:port”

mapred.map.tasks和mapred.reduce.tasks用于設定并行任務(wù)的數量。

dfs.name.dir // 名字節點(diǎn)用于存儲數據節點(diǎn)的跟蹤和調度信息

dfs.data.dir // 數據節點(diǎn)用于存儲實(shí)際的數據塊

mapred.system.dir // mapreduce tasker 存儲自己的數據,僅僅在tasker所在的機器上,不在mapreduce主機上

mpred.local.dir // mapreduce 在節點(diǎn)上存儲自己的本地數據。mapreduce使用巨大的本地空間來(lái)執行它的tasks。tasks退出時(shí),mapreduce產(chǎn)生的中間文件并沒(méi)有被刪除。在每個(gè)節點(diǎn)上,這個(gè)屬性是一樣的。

dfs.replication // 冗余,單個(gè)文件將被拷貝到多少機器上。這個(gè)值不能高于的所有的數據節點(diǎn)的數量。否則守護啟動(dòng)時(shí)會(huì )看見(jiàn)很多錯誤信息。

在你啟動(dòng)hadoop服務(wù)之前,確保格式化名字節點(diǎn)

bin/hadoop namenode -format

現在可以啟動(dòng)hadoop服務(wù)了

bin/start-all.sh

停止hadoop服務(wù)可以使用下面的命令

bin/stop-all.sh

如果設置正確,會(huì )看到正常的輸出信息

5. 部署Hadoop到多臺機器上

一旦你在一臺機器上成功運行hadoop,就可以將配置文件拷貝到其他的機器上。
如:
scp -r /hadoop/hadoop-install/hadoop-x.x.x hadoop@finewine02:/hadoop/hadoop-install/

對每臺從節點(diǎn)機器都執行這個(gè)操作。然后編輯slaves文件,增加每一個(gè)slave到這個(gè)文件中,每行一個(gè)。編輯hadoop-site.xml的值,修改map和reduce的task的數量。修改replication屬性。

6. 分布式搜索

產(chǎn)品系統一般每個(gè)索引庫存100萬(wàn)條記錄。50個(gè)服務(wù)器每秒處理20多個(gè)請求。
多處理器、多磁盤(pán)的系統,每個(gè)服務(wù)使用一個(gè)獨立的磁盤(pán)和索引,這樣機器的費用可以降低50%,電力解約到75%。一個(gè)多磁盤(pán)的機器并不能像單磁盤(pán)機器一樣每秒處理那么多查詢(xún),但是它能處理更大的索引數量,因此平均起來(lái)效率更高一些。

7. 同步代碼到從節點(diǎn)上

hadoop提供同步代碼到從節點(diǎn)的能力。這個(gè)功能是可選的,因為它會(huì )減慢服務(wù)啟動(dòng)的速度,并且有時(shí)候你并不想同步改變到從節點(diǎn)上。

雖然從節點(diǎn)可以和主節點(diǎn)同步,但在第一次,你仍然需要基本的安裝到從節點(diǎn)上,以至同步的腳本生效。這些工作上面我們在上面已經(jīng)做了,所以不需要做改變。

同步的啟動(dòng)是由主節點(diǎn)ssh到從節點(diǎn)上,并執行bin/hadoop-daemon.sh腳本。這個(gè)腳本調用rsync來(lái)同步主節點(diǎn)。這表示你需要能以無(wú)密碼的方式由從節點(diǎn)登錄到主節點(diǎn)。前面,我們設置了從主節點(diǎn)到從節點(diǎn)的無(wú)密碼登錄,現在則設置反向登錄。

如果是由于rsync選項引起了問(wèn)題,查看bin/hadoop-daemon.sh腳本,大約在82行有rsync的選項。

那么,首先第一件事情就是在conf/hadoop-env.sh文件中,設置hadoop主節點(diǎn)變量。如:
export HADOOP_MASTER=finewine01:/hadoop/hadoop-install/hadoop-x.x.x

然后拷貝到所有從節點(diǎn)上,scp /hadoop/hadoop-installl/hadoop-x.x.x/conf/hadoop-env.sh hadoop@finewine02:/hadoop/hadoop-install/hadoop-x.x.x/hadoop-env.sh

最終,你需要登錄到所有的從節點(diǎn)上,為每臺機器創(chuàng )建一個(gè)ssh key。然后拷貝回到主節點(diǎn),并追加到文件/hadoop/home/.ssh/authorized_keys文件中。在每個(gè)從節點(diǎn)上進(jìn)行如下操作:

ssh -l nutch finewine02
cd /hadoop/home/.ssh

ssh-keygen -t rsa (Use empty responses for each prompt)
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /hadoop/home/.ssh/id_rsa.
Your public key has been saved in /hadoop/home/.ssh/id_rsa.pub.
The key fingerprint is:
a6:5c:c3:eb:18:94:0b:06:a1:a6:29:58:fa:80:0a:bc nutch@localhost

scp id_rsa.pub hadoop@finewine01:/hadoop/home/finewine02.pub

在每臺從節點(diǎn)機器完成上面的操作后,追加所有的文件到主節點(diǎn)的authorized_keys文件。

cd /hadooop/home
cat finewine*.pub >> .ssh/authorized_keys

當這些操作完成后,每次運行bin/start-all.sh腳本,文件都會(huì )從主節點(diǎn)同步的每一個(gè)從節點(diǎn)。

8. 查看狀況

端口 : 50070
dfs的狀態(tài)

端口:50060
tracker狀態(tài)

50030
map/reduce管理

其他端口:
dfs.secondary.info.port 50090
dfs.datanode.port 50010
dfs.info.port 50070
mapred.job.tracker.info.port 50030
mapred.task.tracker.report.port 50050
tasktracker.http.port 50060

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Hadoop單機以及偽分布式和完全分布式的環(huán)境搭建詳細步驟
hadoop2.6.0版本搭建偽分布式環(huán)境
Hadoop安裝部署
HDFS+MapReduce+Hive+HBase十分鐘快速入門(mén)(轉)
Hadoop面試45個(gè)題目及答案
Hadoop 2.2.0 (YARN)搭建筆記
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久