distccd on CentOS
作者: 不小心被逼到會 日期: 2007-10-08 19:55
distccd 筆記
一、簡介:
什麼是 distcc ?distccd 是一個可以將 make 做分散式架構運作的 Service,
主要的過程是把 compile 交給網路上面的 Server,再把結果丟回給自己,
可增快你 build 的速度...
參考連結1:distccd source 發佈網站
參考連結2:參考 linuxjournal.com 的介紹文章
還有一些其他的加速方案如 ccache,而且還可以跟 distcc 一起使用。
有空再玩囉!
二、開始安裝:
由於我最常使用的是 CentOS,所以當然就先找找看哪邊有 rpm 囉!
嗯,果然有...
DAG distcc RPM packages for Red Hat, CentOS and Fedora
當然要使用 tarball 安裝也是可以的,請到參考連結網站下載 source,
照著一般 configure, make, make install 的方式即可。
安裝需要先確認你是否有 gcc,以及各 Server glibc 版本都要相等:
CODE:
CODE:
三、編輯組態:
啟動前需要先編輯 distccd 組態,CentOS上面的路徑是:
/etc/sysconfig/distccd
CODE:
上面是我參考預設值略為修改成自己用的設定,job 可改大,allow 可更改網段,
可參考 man distcc 設定你想要的 OPTIONS.
另還有 hostlist 清單,這是 distcc 執行時,所需要參考的變數之一,
它一開始並不一定會存在,請自己建立一個,路徑為:
/root/.distcc/hosts
內容可以像這樣:
CODE:
請記住一定要有,不然即使服務成功啟動,也不會真的有用。
四、啟動服務:
CODE:
預設的 port 是 3632,若有 listen 即成功。
五、使用服務:
隨便下載個很大,要編譯很久的源碼,例如 MySQL 5.1
然後做完 configure 後, make 直接下參數即可:
CODE:
-j 參數是 job 數目,通常是 cpu 數目 + 1,
會參考 /root/.distcc/hosts 內的主機分散 make
若是該檔內只有 localhost 的話,就等於自己在 make 了。
經過實測,五台主機 make 完 MySQL 5.1 大約花費 3 分鐘..
可以用下面命令檢視情況:
CODE:
CPU 列表:
CPU1:Core2 Duo 2.0Ghz
CPU2:Xeon Core 2 Duo 1.8Ghz
CPU3:Athlon 3000+ (1800Mhz)
CPU4:Pentium4 3Ghz
CPU5:Pentium4 3Ghz
一、簡介:
什麼是 distcc ?distccd 是一個可以將 make 做分散式架構運作的 Service,
主要的過程是把 compile 交給網路上面的 Server,再把結果丟回給自己,
可增快你 build 的速度...
參考連結1:distccd source 發佈網站
參考連結2:參考 linuxjournal.com 的介紹文章
還有一些其他的加速方案如 ccache,而且還可以跟 distcc 一起使用。
有空再玩囉!
二、開始安裝:
由於我最常使用的是 CentOS,所以當然就先找找看哪邊有 rpm 囉!
嗯,果然有...
DAG distcc RPM packages for Red Hat, CentOS and Fedora
當然要使用 tarball 安裝也是可以的,請到參考連結網站下載 source,
照著一般 configure, make, make install 的方式即可。
安裝需要先確認你是否有 gcc,以及各 Server glibc 版本都要相等:
CODE:yum update glibc
CODE: rpm -ivh distcc-2.18.3-2.2.el4.rf.i386.rpm
distcc-server-2.18.3-2.2.el4.rf.i386.rpm三、編輯組態:
啟動前需要先編輯 distccd 組態,CentOS上面的路徑是:
/etc/sysconfig/distccd
CODE:OPTIONS="--nice 5 --jobs 5 --allow 192.168.0.0/16"
USER="distcc"上面是我參考預設值略為修改成自己用的設定,job 可改大,allow 可更改網段,
可參考 man distcc 設定你想要的 OPTIONS.
另還有 hostlist 清單,這是 distcc 執行時,所需要參考的變數之一,
它一開始並不一定會存在,請自己建立一個,路徑為:
/root/.distcc/hosts
內容可以像這樣:
CODE:192.168.0.1 192.168.0.2 localhost請記住一定要有,不然即使服務成功啟動,也不會真的有用。
四、啟動服務:
CODE:service distccd start預設的 port 是 3632,若有 listen 即成功。
五、使用服務:
隨便下載個很大,要編譯很久的源碼,例如 MySQL 5.1
然後做完 configure 後, make 直接下參數即可:
CODE:make -j8 CC=distcc-j 參數是 job 數目,通常是 cpu 數目 + 1,
會參考 /root/.distcc/hosts 內的主機分散 make
若是該檔內只有 localhost 的話,就等於自己在 make 了。
經過實測,五台主機 make 完 MySQL 5.1 大約花費 3 分鐘..
可以用下面命令檢視情況:
CODE: distccmon-text 5CPU 列表:
CPU1:Core2 Duo 2.0Ghz
CPU2:Xeon Core 2 Duo 1.8Ghz
CPU3:Athlon 3000+ (1800Mhz)
CPU4:Pentium4 3Ghz
CPU5:Pentium4 3Ghz
發表評論
訂閱
上一篇
返回
下一篇
標籤:
重新註冊所有dll (2008-02-19 10:19)
Grub 開機失敗解決 (2008-02-19 09:53)
把 tomcat 管理畫面洗掉 (2008-01-30 09:46)
RH 系列 Linux 自動 fsck (2008-01-03 14:41)
FreeBSD Ldap Client 端設定 (2007-12-05 17:44)
開啟 SuSE 10.1 Xmanager 遠端登入 (2007-11-27 15:47)
使用 telnet 連上 IRC Server (2007-11-22 01:02)