Hadoop的使用命令

jopen 10年前發布 | 17K 次閱讀 Hadoop 分布式/云計算/大數據

啟動Hadoop

  • 進入HADOOP_HOME目錄。
  • 執行sh bin/start-all.sh
  • </ul> </div>

    關閉Hadoop

    • 進入HADOOP_HOME目錄。
    • 執行sh bin/stop-all.sh
    • </ul>

       

      1、查看指定目錄下內容

      hadoop dfs –ls [文件目錄]

      eg: hadoop dfs –ls /user/wangkai.pt

      2、打開某個已存在文件

      hadoop dfs –cat [file_path]

      eg:hadoop dfs -cat /user/wangkai.pt/data.txt

      3、將本地文件存儲至hadoop

      hadoop fs –put [本地地址] [hadoop目錄]

      hadoop fs –put /home/t/file.txt  /user/t   

      (file.txt是文件名)

      4、將本地文件夾存儲至hadoop

      hadoop fs –put [本地目錄] [hadoop目錄] 
      hadoop fs –put /home/t/dir_name /user/t

      (dir_name是文件夾名)

      5、將hadoop上某個文件down至本地已有目錄下

      hadoop fs -get [文件目錄] [本地目錄]

      hadoop fs –get /user/t/ok.txt /home/t

      6、刪除hadoop上指定文件

      hadoop fs –rm [文件地址]

      hadoop fs –rm /user/t/ok.txt

      7、刪除hadoop上指定文件夾(包含子目錄等)

      hadoop fs –rm [目錄地址]

      hadoop fs –rmr /user/t

      8、在hadoop指定目錄內創建新目錄

      hadoop fs –mkdir /user/t

      9、在hadoop指定目錄下新建一個空文件

      使用touchz命令:

      hadoop  fs  -touchz  /user/new.txt

      10、將hadoop上某個文件重命名

      使用mv命令:

      hadoop  fs  –mv  /user/test.txt  /user/ok.txt   (將test.txt重命名為ok.txt)

      11、將hadoop指定目錄下所有內容保存為一個文件,同時down至本地

      hadoop dfs –getmerge /user /home/t

      12、將正在運行的hadoop作業kill掉

      hadoop job –kill [job-id]

       

      管理命令hadoop集群管理員常用的命令。

      balancer

      運行集群平衡工具。管理員可以簡單的按Ctrl-C來停止平衡過程。參考Rebalancer了解更多。
      用法:hadoopbalancer[-threshold<threshold>]

      命令選項描述
      -threshold<threshold>磁盤容量的百分比。這會覆蓋缺省的閥值。

      daemonlog

      此Hadoop命令用來獲取或設置每個守護進程的日志級別。
      用法:hadoopdaemonlog-getlevel<host:port><name>
      用法:hadoopdaemonlog-setlevel<host:port><name><level>

      命令選項描述
      -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>

      datanode

      運行一個HDFS的datanode。
      用法:hadoop datanode[-rollback]

      命令選項描述
      -rollback將datanode回滾到前一個版本。這需要在停止datanode,分發老的hadoop版本之后使用。

      dfsadmin

      此Hadoop命令用來運行一個HDFS的dfsadmin客戶端。
      用法:hadoop dfsadmin[GENERIC_OPTIONS][-report][-safemodeenter|leave|get|wait][-refreshNodes][-finalizeUpgrade][-upgradeProgressstatus|details|force][-metasavefilename][-setQuota<quota><dirname>...<dirname>][-clrQuota<dirname>...<dirname>][-help[cmd]]

      命令選項描述
      -report報告文件系統的基本信息和統計信息。
      -safemodeenter|leave|get|wait安全模式維護命令。安全模式是Namenode的一個狀態,這種狀態下,Namenode
      1.不接受對名字空間的更改(只讀)
      2.不復制或刪除塊

      Namenode會在啟動時自動進入安全模式,當配置的塊最小百分比數滿足最小的副本數條件時,會自動離開安全模式。安全模式可以手動進入,但是這樣的話也必須手動關閉安全模式。
      -refreshNodes重新讀取hosts和exclude文件,更新允許連到Namenode的或那些需要退出或入編的Datanode的集合。
      -finalizeUpgrade終結HDFS的升級操作。Datanode刪除前一個版本的工作目錄,之后Namenode也這樣做。這個操作完結整個升級過程。
      -upgradeProgressstatus|details|force請求當前系統的升級狀態,狀態的細節,或者強制升級操作進行。
      -metasavefilename保存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]顯示給定命令的幫助信息,如果沒有給定命令,則顯示所有命令的幫助信息。

      jobtracker
      此Hadoop命令用來運行MapReducejobTracker節點。
      用法:hadoopjobtracker

      namenode
      運行namenode。有關升級,回滾,升級終結的更多信息請參考升級和回滾。
      用法:hadoopnamenode[-format]|[-upgrade]|[-rollback]|[-finalize]|[-importCheckpoint]

      命令選項描述
      -format格式化namenode。它啟動namenode,格式化namenode,之后關閉namenode。
      -upgrade分發新版本的hadoop后,namenode應以upgrade選項啟動。
      -rollback將namenode回滾到前一版本。這個選項要在停止集群,分發老的hadoop版本后使用。
      -finalizefinalize會刪除文件系統的前一狀態。最近的升級會被持久化,rollback選項將再不可用,升級終結操作之后,它會停掉namenode。
      -importCheckpoint從檢查點目錄裝載鏡像并保存到當前檢查點目錄,檢查點目錄由fs.checkpoint.dir指定。

      secondarynamenode
      運行HDFS的secondarynamenode。參考SecondaryNamenode了解更多。
      用法:hadoopsecondarynamenode[-checkpoint[force]]|[-geteditsize]

      命令選項描述
      -checkpoint[force]如果EditLog的大小>=fs.checkpoint.size,啟動Secondarynamenode的檢查點過程。如果使用了-force,將不考慮EditLog的大小。
      -geteditsize打印EditLog大小。
      tasktracker
      運行MapReduce的taskTracker節點。
      用法:hadooptasktracker。本節關于Hadoop命令使用方法介紹到這里。

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!