2015年7月8日 星期三

BBU/SuperCAP進入充放電時,效能大不同。

先必須了解什麼是 Write-Back 與 Write-Through 模式。

LSI/Avago在手冊有其簡易定義。如果要了解更精闢或是更詳細說明,可以搜尋一下網路上很多文章討論。

今天所要探討的是:再搭配 BBU 設定 Write-Back 或 Write-Through,這兩個模式的效能是一樣的嗎
LSI/Avago並沒有說明這點。但說了,當在進入 Learn Cycle DRT模式時,控制器會被切換成 Write-Through cache 模式


有何影響?
我在硬碟壓力測試下,讓 LSI/Avago 控制器進行切換 Write-Back 與 Write-Through。發現差異頗大。


在切換至 Write-Through 模式後,系統的整體效能掉了下來。而切換回去 Write-Back模式,效能又回來了

當然,你也可以寫 script,每隔一段時間就去確認是否被改成Write-Through模式。但是一旦你改成 Write-Back 又沒有電池在保護,如果此時斷電,那很有可能就 Data Lost。
因此採用 MPIO 來分流,避免大量IO讀寫時,系統進入 Write-Through 導致過度負載,而降低整體應用效能。

2015年7月6日 星期一

關閉Skype佔用 80及445 埠

如果常常會需要安裝http、apache、ASP/PHP/JSP等網頁伺服器套件時,會發現有port 80被佔用了。

除了確認是否有大型軟體,例如 能透過網站方式管理的VMware、Supermicro SSM這類型軟體,也不要忘記大家常用的通訊軟體Skype,預設也會佔用 80/445 (http/https)。

關閉Skype使用80/445埠方式,至功能->設定選項->進階->連線,然後把 "使用 80 何 445 連接埠做為額外連入連線" 給取消。然後設定其他可對外使用的連接埠。

note: 如果公司有封閉連接埠,還需要與你的MIS確認哪個是可以使用的,不然Skype會無法使用!

2015年7月3日 星期五

monitorix圖形化監控軟體 - 修改圖像顯示從1天(1day)至1小時(1hour)

monitorix 是採用 rrdtool 圖像顯示模組來產生報表。
如果套用的模組是經過壓密後,或非文字模式顯示,那麼要修改其資料結構或是資料庫是有困難的。
但 monitorix 有一個很奇妙的地方。預設的顯示是1day, 1month, 1year,也就是
使用者能選擇要顯示的報表模式可以是 1天,1個月,1年為基準。但是往往我們在看 performance效能圖,都需要看到 每1秒、每1分鐘、每1小時,那要怎麼改?

monitorix 目前只支援到 1hour,而且需要為 v2.4.1 版本後才能支援。

接著,如果你有注意看monitorix網址的內容,你會發現已下內容
http://IP地址/monitorix-cgi/monitorix.cgi?mode=localhost&graph=all&when=1day&color=black

沒錯,如果要用hour的方式顯示,此時不是改成 when=1hour 喔,是改成 when=hour
http://IP地址/monitorix-cgi/monitorix.cgi?mode=localhost&graph=all&when=hour&color=black

那麼就會得到以下內容,看到沒?單位變成 hour 顯示了。
那可不可以修改首頁內容,方便直接選 hour 的選項?

答案是:可以,但是有限制
為何可以但是又有限制?因為當 monitorix 重啟後,或是系統重新開機,你會發現 index.html 被重新覆蓋掉了

那如何修改 index.html?
修改:
vi /var/lib/monitorix/www/index.html

找到 input type="radio" checked 這字串,複製 <td></td>內的整串內容。
把 value="xxx" 換成 value="hour"
如果要讓預設就直接選取到,請加入 checked 在 name="when"之前。checked請不要重複在1day, 1week, 1year的input內,切記!
示範圖,如下:
修改完成後,重新讀取網頁就會看到 Hourly 的選項了。
點擊OK就可以看到,監控變成每小時顯示模式。



再來,驗證 index.html 是否會因為重啟而回歸原始設定內容。(如果有修改,請先備份 index.html 吧!)

service monitorix restart

再次reload網頁,發現真的會被回歸設定。

其實,也有應對方法。可以透過 crontab 進行每日排程比對檔案大小 ( du )。
只要檔案大小不對,就 cp 之前修改的檔案至 /var/lib/monitorix/www/index.html 進行覆蓋。
如果之後有發現更好的方法,日後會再提供嚕。

2015年7月2日 星期四

monitorix圖形化監控軟體 - 設定監控項目

在安裝完畢後,有些預設的項目可能不是我們所需要的。 此時可以透過修改 monitorix設定檔,來達到我們所需要被監控的裝置或是系統狀態。例如我要顯示特定掛載磁碟的IO狀態。

1. 先查看掛載的磁碟

df
假設要監控 /dev/sda1 的硬碟,查詢 官方文件 的 Filesystem usage and I/O activity 說明,那麼我們需要更動一些設定。

這是預設監控硬碟的內容。


首先,至 monitorix 設定檔案: (預設在  /etc/monitorix/monitorix.conf )

找到 <fs> 設定區域。

<list></list> 之間,有沒有發現為  0 =/, swap, /boot
這就是預先設定監控的項目。此時我們可以加入所要監控的磁區。

加入完成後,重新啟動服務。

service monitorix restart

這時候再回去看看 Filesystem usage and I/O activity,就會出現你所設定的項目在監控中。如圖:

其他設定及修改都大同小異。當然如果覺得圖片格式太小,也可以修改pixel尺寸,但是修改的內容要對應RRDtool設定,避免修改後會出現圖像錯亂的問題。有關rrdtool,可以參考 這裡

(備註: monitorix的預設顯示單位是 1 day,如果要讓它計量單位為 每小時, 每x小時,那麼就要自行修改)。如何修改,請參考這篇,monitorix圖形化監控軟體 - 修改圖像顯示從1天(1day)至1小時(1hour)

2015年7月1日 星期三

monitorix圖形化監控軟體 - 安裝篇

測試人員在撰寫測試報告時候,通常會提供一連串數據資料。
但是如果能用圖片說明,再把data當成reference,那麼就會使報告看起來簡單許多,而不會太多繁瑣文字敘述。

Linux有許多圖形化監控軟體,如 Monitorix、OpenNMP、Observium、Zabbix、Cacti、Collectd、MRTG等。市面上大多免費軟體都是透過 SNMP 方式去監控、也有部分是使用 client agent 然後需要安裝一套 centralize / consolidation 軟體套件去做管理。

首先,先把所需套件安裝起來。
yum install rrdtool rrdtool-perl perl-libwww-perl perl-MailTools perl-MIME-Lite perl-CGI perl-DBI perl-XML-Simple perl-Config-General perl-HTTP-Server-Simple perl-IO-Socket-SSL
這是從官網上的截圖,所需要的套件如下:
說明: 這裡注意一下,有些套件是在DVD2裡。如果出現這個錯誤,可能是你沒有把套件丟去PXE server或是你只有把DVD1的檔案copy到系統,而在做yum install時候找不到。



↓ 下載並且直接進行安裝。
rpm -ivh http://www.monitorix.org/monitorix-3.7.0-1.noarch.rpm

↓ 編輯 httpd 並新增virtualhost。

vim /etc/httpd/conf/httpd.conf
↓ 加入

重新啟動 httpd 與 monitorix 服務
service httpd restart 

service monitorix restart
使用 IE、Firefox、Chrome等,網路閱覽器進行登入。
IP: http://IP_ADDR:8080/monitorix