Hadoop 指令

1 篇文章 / 0 new
author
Hadoop 指令
        所有的Hadoop命令均由bin/hadoop腳本引發。不指定參數運行hadoop腳本會列印所有命令的描述。
The general command line syntax is:
hadoop [--config confdir][COMMAND][GENERIC_OPTIONS][COMMAND_OPTIONS]
命令選項描述:
命令選項 說明
--config confdir 覆蓋缺省配置目錄。缺省是${HADOOP_HOME}/conf
GENERIC_OPTIONS 多個命令都支援的通用選項。
COMMAND 各種各樣的命令被分為用戶命令和管理命令兩組。
Hadoop 有一個選項解析框架用於解析一般的選項和運行類。
1 常規選項
下面的選項被dfsadmin,fs,fsck,和job支持。應用程式要實現Tool介面來支援常規選項。
一般選項 說明
-conf<configuration file> 指定應用程式的配置檔
-D <property=value> 為指定property指定值value
-fs <local|namenode:port> 指定namenode
-jt <local|jobtracker:port> 指定job tracker,只適用於job
-files <逗號分隔的文件列表> 指定要拷貝到map reduce集群的檔的逗號分隔的列表,只是用與job
-libjars <逗號分隔的jar列表> 指定要包含到classpath中的jar檔的逗號分隔的列表。 只適用於job
-archives <逗號分隔的archive列表> 指定要被解壓到計算節點上的檔案檔的逗號分割的列表。 只適用於job
 
2 用戶命令
Hadoop集群用戶的常用命令
2.1 archive
用法編號 命令樣式 功能
1 hadoop archive –archiveName <src>* <dest> 創建一個hadoop檔案檔
 用法1:
命令選項 描述
-archiveName 要創建的檔案的名字
src 檔系統的路徑名,和通常含正則表達的一樣
Dest 保存檔案檔的目錄目標
2.2 distcp
用法編號 命令樣式 功能
2 hadoop distcp <srcurl>  <desturl> 遞迴地複製檔或目錄
用法2:
命令選項 描述
srcurl 檔或目錄的源url
desturl 檔或目錄的目標url
2.3 fs
用法編號 命令樣式 功能
3 hadoop fs [GENERIC_OPTIONS] [COMMAND_OPTIONS] 運行一個常規的檔系統用戶端
2.4 fsck
用法編號 命令樣式 功能
4 hadoop fsck [GENERIC_OPTIONS] <path> [-move | -delete | -openforwrite] [-files [-blocks [-locations | -racks]]] 運行HDFS檔系統檢查工具
用法4:
命令選項 描述
<path> 檢查的起始目錄
-move 移動受損文件到/lost+found
-delete 刪除受損檔
-openforwrite 列印出寫打開的檔
-files 列印出正被檢查的檔
-blocks 列印出塊資訊報告
-locations 列印出每個塊的位置資訊
-racks 列印出data-node的網路拓撲結構
2.5 jar
用法編號 命令樣式 功能
5 hadoop jar <jar> [mainClass] args 運行jar檔
用戶可以把他們的Map Reduce代碼捆綁到jar檔中,使用這個命令執行
2.6 job
用法編號 命令樣式 功能
6 hadoop job [GENERIC_OPTIONS] [-submit <job-file>] | [-status <job-id>] | [-counter <job-id> <group-name> <counter-name>] | [-kill <job-id>] | [-events <job-id> <from-event-#> <#-of-events>] | [-history [all] <jobOutputDir>] | [-list [all]] | [-kill-task <task-id>] | [-fail-task <task-id>] 運行jar檔
用法6
命令選項 描述
-submit <job-file> 提交作業
-status <job-id> 列印map和reduce完成百分比和所有計數器。
-counter <job-id> <group-name> <counter-name> 列印計數器的值。
-kill <job-id> 殺死指定作業。
-events <job-id> <from-event-#> <#-of-events> 列印給定範圍內jobtracker接收到的事件細節。
-history [all] <jobOutputDir> -history <jobOutputDir> 列印作業的細節、失敗及被殺死原因的細節。更多的關於一個作業的細節比如成功的任務,做過的任務嘗試等資訊可以通過指定[all]選項查看。
-list [all] -list all顯示所有作業。-list只顯示將要完成的作業。
-kill-task <task-id> 殺死任務。被殺死的任務不會不利於失敗嘗試。
-fail-task <task-id> 使任務失敗。被失敗的任務會對失敗嘗試不利。
2.7 pipes
用法編號 命令樣式 功能
7 hadoop pipes [-conf <path>] [-jobconf <key=value>, <key=value>, ...] [-input <path>] [-output <path>] [-jar <jar file>] [-inputformat <class>] [-map <class>] [-partitioner <class>] [-reduce <class>] [-writer <class>] [-program <executable>] [-reduces <num>] 運行pipes作業
用法7
命令選項 描述
-conf <path> 作業的配置
-jobconf <key=value>, <key=value>, ... 增加/覆蓋作業的配置項
-input <path> 輸入目錄
-output <path> 輸出目錄
-jar <jar file> Jar檔案名
-inputformat <class> InputFormat類
-map <class> Java Map類
-partitioner <class> Java Partitioner
-reduce <class> Java Reduce類
-writer <class> Java RecordWriter
-program <executable> 可執行程式的URI
-reduces <num> reduce個數
2.8 version
用法編號 命令樣式 功能
8 hadoop version 列印版本資訊
 
2.9 CLASSNAME
用法編號 命令樣式 功能
9 hadoop CLASSNAME hadoop腳本可用於調調用任何類
 
► 3 管理命令
hadoop集群管理員常用的命令。
3.1 balancer
用法編號 命令樣式 功能
10 hadoop balancer [-threshold <threshold>] 運行集群平衡工具
管理員可以簡單的按Ctrl-C來停止平衡過程。
用法10:
命令選項 描述
-threshold <threshold> 磁片容量的百分比。這會覆蓋缺省的閥值。
3.2 daemonlog
用法編號 命令樣式 功能
11 hadoop daemonlog -getlevel <host:port> <name> 獲取或設置每個守護進程的日誌級別
12 hadoop daemonlog -setlevel <host:port> <name> <level> 同上
用法11,,12:
命令選項 描述
-getlevel <host:port> <name> 列印運行在<host:port>的守護進程的日誌級別。這個命令內部會連接http://<host:port>/logLevel?log=<name>
-setlevel <host:port> <name> <level> 設置運行在<host:port>的守護進程的日誌級別。這個命令內部會連接http://<host:port>/logLevel?log=<name>
3.3 datanode
用法編號 命令樣式 功能
13 hadoop datanode [-rollback] 運行一個HDFS的datanode。
 
命令選項 描述
-rollback 將datanode回滾到前一個版本。這需要在停止datanode,分發老的hadoop版本之後使用。
3.4 dfsadmin
用法編號 命令樣式 功能
14 hadoop dfsadmin [GENERIC_OPTIONS] [-report] [-safemode enter | leave | get | wait] [-refreshNodes] [-finalizeUpgrade] [-upgradeProgress status | details | force] [-metasave filename] [-setQuota <quota> <dirname>...<dirname>] [-clrQuota <dirname>...<dirname>] [-help [cmd]] 運行一個HDFS的dfsadmin用戶端
 
命令選項 描述
- report 報告檔系統的基本資訊和統計資訊
-safemode enter| leave| get | wait
    enter: 進入safe mode
    get: 顯示系統是否進入safe mode
    wait: 一直等到safe mode結束
    leave: 離開safe mode
在開啟hadoop ,load namenode的時候,系統會先停在safe mode,使得data node在回報其資料完整性之前,data blocks不會提早做複製的動作。系統若在safe mode,則所有的blocks都是唯讀 (read only)屬性,不能做任何寫入或是修改。直到data node都做出正常回報之後,才會離開safe mode,進行data blocks的複製行為。
若hadoop因某些意外不正常啟動或是關閉,則系統會鎖在safe mode。使得你無法對HDFS做任何變更的動作。因此,如果你要離開safe mode,可下達以下指令:hadoop dfsadmin -safemode leave
-refreshNodes 重新讀取hosts和exclude檔,更新允許連到Namenode的或那些需要退出或入編的Datanode的集合。
-finalizeUpgrade 終結HDFS的升級操作。Datanode刪除前一個版本的工作目錄,之後Namenode也這樣做。這個操作完結整個升級過程。
-upgradeProgress status|details | force 請求當前系統的升級狀態,狀態的細節,或者強制升級操作進行。
-metasave filename 保存Namenode的主要資料結構到hadoop.log.dir屬性指定的目錄下的<filename>檔。對於下麵的每一項,<filename>中都會一行內容與之對應
1. Namenode收到的Datanode的心跳信號
2. 等待被複製的塊
3. 正在被複製的塊
4. 等待被刪除的塊
-setQuota <quota> <dirname>...<dirname> 為每個目錄 <dirname>設定配額<quota>。目錄配額是一個長整型整數,強制限定了目錄樹下的名字個數。
命令會在這個目錄上工作良好,以下情況會報錯:
1. N不是一個正整數,或者
2. 用戶不是管理員,或者
3. 這個目錄不存在或是檔,或者
4. 目錄會馬上超出新設定的配額。
-clrQuota <dirname>...<dirname> 為每一個目錄<dirname>清除配額設定。
命令會在這個目錄上工作良好,以下情況會報錯:
1. 這個目錄不存在或是檔,或者
2. 用戶不是管理員。
如果目錄原來沒有配額不會報錯。
-help [cmd] 顯示給定命令的幫助資訊,如果沒有給定命令,則顯示所有命令的幫助資訊。
3.5 jobtracker
用法編號 命令樣式 功能
15 hadoop jobtracker 運行MapReduce job Tracker節點
3.6 namenode
用法編號 命令樣式 功能
16 hadoop namenode [-format] | [-upgrade] | [-rollback] | [-finalize] | [-importCheckpoint] 運行namenode。有關升級,回滾,升級終結的更多資訊請參考升級和回滾
 
命令選項 描述
-format 格式化namenode。它啟動namenode,格式化namenode,之後關閉namenode。
-upgrade 分發新版本的hadoop後,namenode應以upgrade選項啟動。
-rollback 將namenode回滾到前一版本。這個選項要在停止集群,分發老的hadoop版本後使用。
-finalize finalize會刪除檔系統的前一狀態。最近的升級會被持久化,rollback選項將再不可用,升級終結操作之後,它會停掉namenode。
-importCheckpoint 從檢查點目錄裝載鏡像並保存到當前檢查點目錄,檢查點目錄由fs.checkpoint.dir指定。
3.7 secondarynamenode
用法編號 命令樣式 功能
17 hadoop secondarynamenode [-checkpoint [force]] | [-geteditsize] 運行HDFS的secondary namenode。
 
命令選項 描述
-checkpoint [force] 如果EditLog的大小 >= fs.checkpoint.size,啟動Secondary namenode的檢查點過程。 如果使用了-force,將不考慮EditLog的大小。
-geteditsize 列印EditLog大小。
3.8 tasktracker
用法編號 命令樣式 功能
18 hadoop tasktracker 運行MapReduce的task Tracker節點
Free Web Hosting