wiki:waue/0918

hadoop jps 開發

說明

開發出一個 hadoop all view 的網頁於 50000 port

修改

  • 用 svn co 方式將hadoop 0.18 專案抓下來
  • 將 src/webapps/ 內的dfs、job 的jsp檔都複製到 src/webapps/all
  • 修改 src/webapps/all/index.html
  • 將 src/mapred/org/apache/hadoop/mapred/ 複製到 src/core/org/apache/hadoop/all
  • 將 src/hdfs/org/apache/hadoop/dfs 複製到 src/core/org/apache/hadoop/all
  • 由於 all 內的java 檔 package, import 都是原本的mapred或dfs,因此要更正成 all這個資料夾
           find ./ -name "*.java" | xargs sed -i 's/org.apache.hadoop.mapred/org.apache.hadoop.all/g'
    
  • 修改 taskrunner.java
           String[] ulimitCmd = Shell.getAllUlimitMemoryCommand(conf);
    
  • 修改 org.apache.hadoop.util 的 Shell.java ,增加一個 getAllUlimitMemoryCommand 方法,方法內容複製 getUlimitMemoryCommand
           public static String[] getAllUlimitMemoryCommand(org.apache.hadoop.all.JobConf job) {
    
  • 修改 build.xml內,加入all的 jsp-compile的資訊,以及其他相關內容。如
        <jsp-compile
         uriroot="${src.webapps}/all"
         outputdir="${build.src}"
         package="org.apache.hadoop.all"
         webxml="${build.webapps}/all/WEB-INF/web.xml">
        </jsp-compile>
    
  • 在 conf/hadoop-default.xml 內 添加 all.http.server 為 50000
  • 修改 all 資料夾內 http.server 成 all.http.server

目前

  • ant tar 可以正確編譯完成,不過卻沒有在localhost 開 50000 port

core/org/apache/hadoop/all 資料夾內 有用到 StatusHttpServer? 來開 jetty_server 的有

DataNode?.java

FSNamesystem.java

JobTracker.java

SecondaryNameNode?.java

TaskTracker.java

Last modified 15 years ago Last modified on Sep 18, 2009, 4:49:16 PM