昨晚在 魯米爺咖啡 的 Tossg 聚會分享了一點架設 dot 的心得。
說是分享,其實只是漫談。稍微介紹了現在的 Debian.org.tw 的伺服架構,其實我一向很討厭巨細靡遺的介紹「如何作」這種事情,因為通常沒有 Google 大神不知道的事情,而且重新整理敘述那些步驟,遠比順利的話數分鐘內可以設定完成的工作量要大多了,絲毫沒有意願作這種差事。尤其我通常使用那些穩定、資料充足的自由軟體,在一堆高手前面獻寶實在丟臉,真正有意義的事情是或許提供方向與經驗吧。
我是那種動手之前,會先構想好基本需求與架構的傢伙。現在的 Debian.org.tw 機器是原本設於 ccu.debian.org.tw 上得服務移植過來的,舊的 ccu.debian.org.tw 是一台非常緩慢的機器,當時只有 AMD-K6 400Mhz 512MB 記憶體,這種等級的機器,往往使服務週休二日。每到週末人多的時候,mysql 就吃不消當機了。後來 Andrwe 特別商請廠商捐贈了一台 2U 的伺服器。而且募了一筆錢,補買了 CPU、Memory、RAID Card、SATA Hard Disk。所以就組成一台有雙 Xeon 2.80GHz、2G Memory、500G Storage 的新機器。
目前 Debian.org.tw 上獨立跑了十幾個伺服器與各式服務,而且只有一台機器和一個公開的 IP。建設 Debian.org.tw 時,基本的幾個考慮是
- 安全安全安全安全安全
- 多伺服器可被分別管理
- 可提供帳號與個人網站
- 方便升級維護各伺服器
- 備份備份備份備份備份
為了能夠達成以上的目的,又鼓勵並提供想貢獻社群的人有足夠的權限可以在沙箱實驗或維護各自的服務。所以我想了一些方法,讓只有在一台伺服器一個 IP 的狀況下可以達到這種目的,而且每個人都有足夠的自主可以玩弄他的虛擬機器。簡單說起來就如下圖
基本就是把 shoreawll、vserver、squid、bind、bacula、OpenVPN兜成基礎架構,然後再各自疊上不同的軟體,像是 Apache、Mysql、phpbb、mediawiki、wildfire 等等。接下來我要做的就是把 Ping 想要的 Scientific Linux 塞進這台 Debian 裡面。;-)