NutchEz V2 開發者網頁
國網中心自由軟體實驗室

一、開發注意事項 (編輯)

1.1 專案相關 (直接編輯)

專案網址  nutchez  http://code.google.com/p/nutchez/
專案下載  download me  http://code.google.com/p/nutchez/downloads/list

1.2 討論內容 (直接編輯)

第 14 次討論 (8/17) [last 3 weeks]

  • rock :
    • sourceforge 專案與英文說明建立
    • scp 到 sourceforge 的方法
    • 加入 sun-java 自動安裝的方法
    • 測試
  • waue :
    • xml parser 設定
    • readme, license, 英文安裝、使用、移除的文件
    • 測試nutch1.1
    • 測試opensuse
  • fafa :
    • 企劃書改寫,中文安裝、使用、移除的文件
    • fix /tmp/shell 的暫存檔bug & 安裝資訊顯示的bug
    • 測試 fedora

第 13 次討論 (8/6) [last 5 weeks]

  • crawlzilla 改名
  • coscup 會議報告準備

第 12 次討論 (7/23) [last 7 weeks]

  • 增加:change log 日誌系統
  • 解決:重複執行remove檔的錯誤
  • 增加:點兩下install 即可安裝
  • 增加:remove 刪除/tmp/ 下的 pid 檔案
  • 增加:iframe 自動reload最新狀態
  • 增加:點兩下 deploy.sh 無間斷執行程式
  • 增加:header.jsp 與 foot.jsp 減少程式碼重複
  • 增加:日誌系統
  • 刪除:已經被其他頁面整合的statistics.jsp頁面
  • 修改:減少reflash時間
  • 修改:減少手動切換成nutchuser 步驟
  • 修改:使用中與設定的整合
  • 修改:移除continue中斷
  • 修改:目錄擺放位置以符合自由軟體習慣
  • 解決:session被丟掉的問題
  • 解決:更新hosts中斷不繼續的問題
  • 解決:remove 找不到語系檔問題
  • 解決:client_deploy 無此檔案
  • 解決:client_remove 無完整刪除
  • 修改:整個jsp版面改版
  • 增加:提醒使用者root密碼是否有設定
  • 修改:go.sh 的功能
  • 增加:DB 操作狀態
  • 增加:go.sh 加入 $crawlname_from_jsp 程序狀態功能
  • 修改:tomcat restart

下次討論 (8/6) [last 5 weeks]

二、系統架構(編輯)

  • 安裝目錄說明
說明 路徑 擁有者身份
nutchez 家目錄 /opt/nutchez/ nutchuser
nutch 家目錄 /opt/nutchez/nutch nutchuser
nutch 工作目錄 /var/nutchez/nutch-nutchuser nutchuser
nutch 日誌檔 /var/nutchez/logs nutchuser
nutch 設定檔 /opt/nutchez/nutch/conf nutchuser
tomcat 家目錄 /opt/nutchez/tomcat nutchuser
nutchez 使用者目錄 /home/nutchuser/nutchez/ nutchuser
搜尋入口網址 /home/nutchuser/nutchez/urls/urls.txt
nutchez 索引資料庫 /home/nutchuser/nutchez/search/ 由nutch完成crawl後產生
  • 安裝 shell 檔

- install.sh 安裝程序
- remove.sh 移除 nutchez
- nutchez Nutchez 設定
| - cluster_setup 設置 datanode 與 tasktracker 節點 /opt/nutchez/nutch/bin/hadoop-daemon.sh start datanode
/opt/nutchez/nutch/bin/hadoop-daemon.sh start tasktracker
| - tomcat_switch 網站伺服器開關 /opt/nutchez/tomcat/bin/startup.sh
/opt/nutchez/tomcat/bin/shutdown.sh
| - tomcat_port 網站伺服器換port 修改 /opt/nutchez/tomcat/conf/server.xml
| - lang_switch 語言選擇
  • 網頁管理檔

admin.jsp 管理介面
| - login.jsp 帳號登入
| - crawl.jsp 抓取設定
| - statistics.jsp 搜尋資料庫統計資料
| - cluster_status.jsp hadoop叢集狀態

三、各元件流程圖 (編輯)

1. 安裝流程

1.1 流程解說

  1. 在 master node 下載 nutchez v0.2.tar.gz 檔,並解開壓縮檔
  2. 在 master node 執行 master_install 檔進行安裝 (詳細安裝步驟於1.2)
  3. 安裝成功會產生client_install 的安裝檔
  4. 在 slave node 上執行此 client_install 安裝檔 (詳細安裝步驟於1.3)
  5. 所有 slave node 都分別執行了此 client_install 皆正確無誤後,叢集安裝完成

1.2 Master Install 安裝細部流程圖

  • Master Install GraphViz image

1.3 Client Install 安裝細部流程圖

  • Client Install
GraphViz image

2. 管理設定介面

  • Nutchez 設定: nutchez
    • 設置叢集: cluster_setup
      • 設置 datanode 與 tasktracker 節點
    • 網頁伺服器開關: tomcat_switch
      • 自動開啟關閉tomcat
    • 網頁伺服器port 號改變:tomcat_port
GraphViz image

3. Nutch 網頁管理介面

  • 管理介面 admin.php
    • 管理帳號登入: login.php
    • 搜尋選項設定與啟動:crawl.php
      • 各種nutch 選項、crontab 排班、重新or繼上次搜尋
    • 統計資料:statistics.php
      • url 有多少列、網頁多少個、資料大小、搜尋工作時間
    • 叢集狀態:cluster_status.php
      • datanode , tasktracker 狀態

http://trac.nchc.org.tw/cloud/raw-attachment/wiki/waue/2010/nutchez2_procedure/NutchEz_Web_Flow.png

四、專案管理(編輯)

  • 第 0 步驟是第一次下載整個專案的時候執行
  • 1~3 步驟 是每次要讓專案同步時需要做的

0. 下載專案

  • 列出 svn 內有什麼資料夾
    svn ls https://trac.nchc.org.tw/svn/cloud/
    
    接著會問一大堆認證密碼什麼鬼的,密碼正確才可以列出檔案
  • 下載 nutchez 0.2 的專案
    cd /opt/svn_project/
    svn co https://trac.nchc.org.tw/svn/cloud/nutchez-0.2
    
  • 如果只是要 check out 原始碼,也可以從 public SVN 的網址下載,就不會問帳號密碼。
    svn ls http://trac.nchc.org.tw/pub/cloud/nutchez-0.2
    
    svn co http://trac.nchc.org.tw/pub/cloud/nutchez-0.2
    

1. 更新專案

cd nutchez-0.2
svn update

2. 加入檔案、資料夾的指令

svn mkdir aaa
svn add bbb.txt

3. 專案內容上傳

svn ci

五、時間表(編輯)

項目 預計 開始 完成
企劃書 5/3~5/4 5/3 5/5
survey 5/3~5/7 5/3
開發 5/10~9/1
試用與除錯 9/1~9/20
專案完成 9/20

六、相關連結(編輯)

6.1 相關

6.2 目標

Attachments