<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="http://blog.fhl.net/styles/rss.css" type="text/css"?>
<rdf:RDF 
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
  xmlns="http://my.netscape.com/rdf/simple/0.9/"
>

 <channel>
  <title>信望愛技術組部落格</title>
  <link>http://blog.fhl.net/blog/7</link>
  <description>&lt;p&gt;就是技術組用來開會紀錄與寫小抄的地方&lt;/p&gt;
</description>
 </channel>
    <item>
   <title>我有一點想把垃圾信都直接砍了</title>
   <description>最近殺信殺的煩死了，我已經有「自動砍信」設定了，還是覺得有點煩。某天睡覺突然想到有些人可能不會設定自動砍信，所以我想把信望愛站的信件凡標注「垃圾」的都直接砍掉。當然，這可能發生誤砍，所以我先在學校的機器上測試，如果成功（沒有太多誤砍）.....那我就要在信望愛站上動手了。</description>
   <link>http://blog.fhl.net/post/7/68</link>
      <pubDate>Sat, 27 Jan 2007 11:09:14 +0800</pubDate>   
  </item>
    <item>
   <title>雙專線DNS管理程式</title>
   <description>&lt;p&gt;信望愛站早就有雙專線備援的功能（透過routing table的設定），但是一直缺乏DNS的相關配套措施。導致某一條專線斷掉時，還需要手動更改DNS設定。為了解決這問題，這兩天我把相關的程式寫好。&lt;/p&gt;&lt;p&gt;要做到動態切換DNS，就必須降低TTL，減少使用者端與dns的cache時間，也要增加slave DNS來取資料的頻率。這些部份，我們全部使用 tag 替換的技術來處理。目前我已經把這套程式建置於life這台機器上，與自動偵測系統整合，當系統偵測到斷線，就會自動切換 routing table並切換DNS設定。 相關的程式在&lt;a id=&quot;res_15&quot; href=&quot;http://blog.fhl.net/get/7/named.1.0.tgz&quot; title=&quot;雙專線DNS管理系統&quot;&gt;named.1.0.tgz &lt;/a&gt;&lt;/p&gt;&lt;p&gt;技術人員請注意，以後修改DNS請不要針對標準的 /var/named 底下的檔案修改，而要針對/root/named/data底下的檔案修改，修改完執行dns.php 就可以自動更新 dns。至於最討厭的序號問題，程式已經幫大家解決了，嘿嘿！ &lt;/p&gt;</description>
   <link>http://blog.fhl.net/post/7/58</link>
      <pubDate>Wed, 03 Jan 2007 15:42:25 +0800</pubDate>   
  </item>
    <item>
   <title>自動錯誤回復</title>
   <description>&lt;p&gt;這個部份我們還不是做得很好，嚴重的錯誤還是要人跑到機房去處理，不過為了節省跑機房的時間，我們還是做了一些努力。&lt;/p&gt;&lt;p&gt;我們去買了一個可以用電話控制電力的裝置，當電話打進去之後，系統會詢問密碼，密碼正確以後就可以用電話按鈕選擇把四個port中的任何一個port打開或關閉。因此我們會把最容易當機的系統接在這個裝置上，透過關閉電源再打開來復原系統。我們通常都是用這招來對付ADSL的ATUR（小烏龜），說起來還蠻有效的，反正現在大家都有手機，收到系統回報網路斷線之後，就撥一撥號碼、按按幾個鍵，系統就自動恢復正常了，真是物超所值（好像才四千塊錢吧）。&lt;/p&gt;&lt;p&gt;&amp;nbsp;信望愛站為了系統的穩定，裝了兩條網路線，還分屬於不同的ISP ，因此理論上可以做到很好的fail over功能。目前我們是透過script去控制 default route自動偵測設定的方式來做到基本的斷線備援，但是DNS的fail over部份還沒有完成，目前還是得要靠人力手工來處理，未來應該會慢慢的把這部份納入系統之中。不過這部份真的是比較困難，要寫程式的話也必須寫得比較複雜，因此短期內可能還不會完成。&lt;/p&gt;</description>
   <link>http://blog.fhl.net/post/7/33</link>
      <pubDate>Wed, 29 Nov 2006 17:01:38 +0800</pubDate>   
  </item>
    <item>
   <title>自動錯誤偵測</title>
   <description>&lt;p&gt;當然，理想上最好系統能夠做到完整的自動錯誤偵測功能，不過事實上因為各樣的因素影響，我們都只會去偵測最重要的錯誤，然後進行回報罷了。&lt;/p&gt;&lt;p&gt;前一篇我已經談過了自動錯誤回報系統，現在來談談怎樣進行錯誤偵測。信望愛站的錯誤偵測功能，主要是針對主機的網路服務是否正常、線路是否暢通與UPS是否已經啟動這三部份來運作。至於偵測的方法，則是利用ping，以及開啟socket連線的方式來完成。&lt;/p&gt;&lt;p&gt;&amp;nbsp;主機的網路服務當然就是透過 socket連線的方式來偵測，網路暢通與否則是透過ping gateway的方式來偵測，至於UPS的話，我們是透過設定一台不連接UPS的IP分享器，然後定期去ping那台IP分享器，用以決定市電是不是已經停電了。這樣的方式比傳統利用RS-232或SNMP協定的方式更為簡單便宜，不需要購買特殊的UPS。&lt;/p&gt;&lt;p&gt;我們利用&amp;nbsp; php 寫成的&amp;nbsp; ping script: &lt;a id=&quot;res_12&quot; href=&quot;http://blog.fhl.net/resserver.php?blogId=7&amp;amp;resource=ping.txt&quot; title=&quot;ping script&quot;&gt;ping.txt&lt;/a&gt;&lt;/p&gt;&lt;p&gt;我們利用php寫成的 socket檢測程式：&lt;a id=&quot;res_13&quot; href=&quot;http://blog.fhl.net/resserver.php?blogId=7&amp;amp;resource=detser.txt&quot; title=&quot;open socket&quot;&gt;detser.txt&lt;/a&gt; &lt;/p&gt;&lt;p&gt;希望對大家有幫助。&amp;nbsp;&lt;/p&gt;</description>
   <link>http://blog.fhl.net/post/7/32</link>
      <pubDate>Wed, 29 Nov 2006 16:31:49 +0800</pubDate>   
  </item>
    <item>
   <title>來談談自動錯誤回報</title>
   <description>&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 信望愛站的狀況特殊，所有的技術人員都不在機器旁邊上班，所以我們非常需要系統能夠自動回報錯誤的狀況，並且能自遠端處理掉最常發生的棘手問題。因為時間的關係，我先講一下我們錯誤回報的機制。&lt;/p&gt;&lt;p&gt;我們是採用手機簡訊的方式來進行錯誤回報，本來我們是透過「智邦生活館」的簡訊服務，後來改用「台灣簡訊」的服務，途徑是透過我們自己撰寫的php程式來呼叫這兩個服務的網站。台灣簡訊的網站比較容易控制，智邦生活館的系統還需要先騙過asp程式才能運作。不過後來我們發現PHS的電子郵件可以用來發免費簡訊，因此我們在高雄的技術人員也開始利用PHS的電子郵件來進行自動錯誤回報的動作。不然有時候網路發生瞬斷，一下子就發出了好幾封簡訊，那我們可是會非常痛心的（每一通都是好幾塊錢台幣ㄟ！而且是自己的錢，不是公款）。&lt;/p&gt;&lt;p&gt;錯誤回報的方式，就是設定伺服器的Cron，每隔一段時間就去檢查某個功能是否能夠正確的運作，如果不能正常運作，就選定一條可以通的網路，把發簡訊的命令送往相關的伺服器。對了，為了經濟的因素，我們也還設定了「不准重複發送」的機制，免得技術人員虧本虧慘了。又因為我們常常是多個技術人員一起關心幾台機器，所以系統在檢查到機器由錯誤狀況復原後，也會發送「系統ok」簡訊給每一個技術人員，以免大家掛心或採取重複的維修工作。&lt;/p&gt;&lt;p&gt;台灣簡訊的發送 script 在 &lt;a id=&quot;res_7&quot; href=&quot;http://blog.fhl.net/resserver.php?blogId=7&amp;amp;resource=bbc.txt&quot; title=&quot;台灣簡訊的簡訊發送script&quot;&gt;bbc.txt &lt;/a&gt;&lt;/p&gt;&lt;p&gt;智邦生活館的發送 script 在 &lt;a id=&quot;res_6&quot; href=&quot;http://blog.fhl.net/resserver.php?blogId=7&amp;amp;resource=bbc_url.txt&quot; title=&quot;智邦生活館的簡訊發送程式&quot;&gt;bbc_url.txt&lt;/a&gt;&lt;/p&gt;&lt;p&gt;PHS 就用 /bin/mail -s &amp;quot;要送的簡訊&amp;quot;&amp;nbsp; xxxx@phs.com.tw&amp;nbsp; 就可以了&lt;/p&gt;&lt;p&gt;不過記得要先有那些服務的帳號才行 。&lt;/p&gt;</description>
   <link>http://blog.fhl.net/post/7/29</link>
      <pubDate>Wed, 22 Nov 2006 22:10:10 +0800</pubDate>   
  </item>
  </rdf:RDF>

