共8個配置檔案
(namenode位址,hadoop執行產生檔案儲存位址)
core-cite.xml # 設定後本地模式不可用,因為namenode位址修改為hdfs了,預設是file:///
fs.defaultfs
hdfs://localhost102:9000
hadoop.tmp.dir
/opt/module/hadoop-2.7.2/data/tmp
(secondarynamenode位址,副本數)
(resourcemanager位址,reducer獲取資料方式,歷史伺服器的日誌聚集)
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.resourcemanager.hostname
localhost103
yarn.log-aggregation-enable
true
yarn.log-aggregation.retain-seconds
604800
(jobhistory server配置,mr執行在yarn上)
mapreduce.framework.name
yarn
mapreduce.jobhistory.address
localhost103:10020
localhost103:19888
102(執行namenode)、102root(很多操作需要root使用者完成)、103(執行resourcemanager)都需要設定ssh免密登入
xsync etc/hadoop 分發指令碼,其他指令碼
#!/bin/bash
#1 獲取輸入引數個數,如果沒有引數,直接退出
pcount=$#
if((pcount==0)); then
echo no args;
exit;fi
#2 獲取檔名稱
p1=$1
fname=`basename $p1`
echo fname=$fname
#3 獲取上級目錄到絕對路徑
pdir=`cd -p $(dirname $p1); pwd`
echo pdir=$pdir
#4 獲取當前使用者名稱
user=`whoami`
#5 迴圈
for((host=103; host<105; host++)); do
echo ------------------- localhost$host --------------
rsync -rvl $pdir/$fname $user@localhost$host:$pdir
done
## 配置hdfs-site.xml 注意新掛載磁碟的訪問許可權問題
dfs.datanode.data.dir
file:///$/dfs/data1,file:///hd2/dfs/
data2,file:///hd3/dfs/data3,file:///hd4/dfs/data4
## 開啟資料均衡命令 引數10表示各個磁碟利用率相差不超過10%
bin/start-balancer.sh –threshold 10
## 停止資料均衡命令
bin/stop-balancer.sh
hadoop 本身並不支援lzo 壓縮,故需要使用twitter提供的hadoop-lzo開源元件進行編譯,使用編譯後的hadoop-lzo.jar
## 將編譯後的jar拷貝到hadoop-2.7.2/share/hadoop/common/目錄
## 配置core-site.xml支援lzo壓縮
io.compression.codecs
org.apache.hadoop.io.compress.gzipcodec,
org.apache.hadoop.io.compress.defaultcodec,
org.apache.hadoop.io.compress.bzip2codec,
com.hadoop.compression.lzo.lzocodec,
com.hadoop.compression.lzo.lzopcodec
io.compression.codec.lzo.class
com.hadoop.compression.lzo.lzocodec
## 注意分發jar包和配置檔案 生效需要重啟集群
## lzo建立索引 lzo可切片特性依賴於索引檔案 故需要手動建立索引
hadoop jar /path/to/your/hadoop-lzo.jar com.hadoop.compression.lzo.distributedlzoindexer /path/to/file.lzo
## hdfs寫效能測試
hadoop jar /opt/module/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.2-tests.jar testdfsio -write -nrfiles 10 -filesize 128mb
## hdfs讀效能測試
hadoop jar /opt/module/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.2-tests.jar testdfsio -read -nrfiles 10 -filesize 128mb
## 刪除測試資料
hadoop jar /opt/module/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.2-tests.jar testdfsio -clean
## 使用randomwriter來產生隨機數,每個節點執行10 個map任務,每個map產生大約1g 大小的二進位制隨機數
hadoop jar /opt/module/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar randomwriter random-data
## 執行sort程式
hadoop jar /opt/module/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar sort random-data sorted-data
## 驗證資料是否真正排好序了
hadoop jar /opt/module/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.2-tests.jar testmapredsort -sortinput random-data -sortoutput sorted-data
## hdfs-site.xml
dfs.namenode.handler.count
## yarn-site.xml
yarn.nodemanager.resource.memory-mb # 單節點yarn可使用的物理記憶體 預設8g
yarn.scheduler.maximum-allocation-mb # 單個任務可申請的物理記憶體 預設8g
Hadoop 配置檔案簡介
1 core site.xml檔案 這是乙個描述集群中namenode結點的uri 統一資源識別符號 包括協議,主機名稱,埠號 集群裡面的每一台機器都需要知道 namenode的位址。datanode結點會先在namenode上註冊,這樣它們的資料才可以被利用。獨立的客戶端程式通過這個uri跟 da...
hadoop集群配置檔案
配置檔案與功能對應 修改core site.xml檔案 fs.defaultfs hdfs hadoop01 8020 在哪一台配,namenode就在哪一台啟動 io.file.buffer.size 4096 hadoop.tmp.dir home hadoop hadoop 2.6.0 had...
Hadoop配置檔案同步指令碼
同步hadoop的配置檔案,總是scp,這很麻煩,現在寫了乙個同步指令碼 這個指令碼會先備份遠端伺服器的配置檔案,然後再同步 如果同步的次數多了,可以按照日誌刪除配置檔案比如 find name 20150604 xargs rm f 指令碼內容如下 bin bash 用於同步配置檔案 配置檔案路徑...