要調整網路時, 一定要記得把HA功能關掉, 不然很可能會發生慘劇: VM全都被shutdown了!!
原因是, HA功能中, 對於避免同時有兩個同樣的VM在運作, 自己發現斷線的那台ESX在預設上是直接將身上的VM都power off(也可設定成shotdown, 而雖可調整成維持power on, 但這樣就很有可能兩個同樣的VM同時運作中而造成衝IP等等問題)
而若調整線路時把ESX網路都斷掉, 那麼他們都會把自身的VM power-off/shutdown, 此時沒有其他台ESX能接手, 所以等於所有VM都被關機了.........
雖然HA是獨立於VC之外自行運作, 但調整線路時仍難保不會斷到ESX之間的連線, 故仍記得調整網路時一定要先關閉HA功能.
2011年7月20日 星期三
2011年7月7日 星期四
啟用vmware cluster的HA要注意的部份
vSphere4的HA要啟用, 除了大部分會注意到的之外, 還有很多很多因素都有可能導致啟用失敗, 或啟用成功但某台ESX重開機後又再度跟你抱怨HA啟動失敗, 因此稍微列一下要檢查的事項, 大致照明顯到比較難注意到的部份依序列出.
2011年7月5日 星期二
自製DNS load balance(正確說只有sharing)
前情提要: 因client DNS query是走UDP, 免費套件中比較好的load balance是HAproxy, 但只支援TCP, 所以只好自製. 作法大致上是用pf(pakcet filter)防火牆中的nat+rdr去達成分送後端的功能, 再配合table可動態增刪, 加上自製的一些shell script與一些小軟體, 即可做到DNS load balance server.
所需機器: 一台用作load balance server(簡稱LB), 三台DNS server(簡稱DNS-A, DNS-B, DNS-C), 當然後端要幾台是隨意...
架構: 類似NAT+private ip的網路
所需機器: 一台用作load balance server(簡稱LB), 三台DNS server(簡稱DNS-A, DNS-B, DNS-C), 當然後端要幾台是隨意...
架構: 類似NAT+private ip的網路
2011年7月4日 星期一
自動重啟動停掉的服務 shell script
rcd_service_mon.sh
程式碼:
#!/bin/sh
export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/root/bin
if [ "$1" = "local" ];
then
rcd="/usr/local/etc/rc.d"
service="$2"
else
rcd="/etc/rc.d"
service="$1"
fi
status=` $rcd/$service status|grep 'is not running' `
if [ "$status" ];
then
echo "$1 is not running, auto restart..."
$rcd/$1 start
fi
程式碼:
#!/bin/sh
export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/root/bin
if [ "$1" = "local" ];
then
rcd="/usr/local/etc/rc.d"
service="$2"
else
rcd="/etc/rc.d"
service="$1"
fi
status=` $rcd/$service status|grep 'is not running' `
if [ "$status" ];
then
echo "$1 is not running, auto restart..."
$rcd/$1 start
fi
用法:
rcd_service_mon.sh service_name 或 rcd_service_mon.sh local service_name
例:
1. 對named作用: rcd_service_mon.sh named
2. 對 apache 2.2 作用: rcd_service_mon.sh local apache22
詳細解說:
簡單說就是把手動的事情變成自動, 程式自動呼叫rc.d下的啟動用shell script, 並加上 status以得知狀態, 然後過濾輸出確認是否為沒在運作的狀況, 若沒在運作就嘗試啟動之.
2011年7月3日 星期日
免費文字辨識軟體-JOCR
公司網址:EverRex Software
讀取來源皆為畫面抓圖, 不讀取檔案的.
另外需要配合安裝office 2003以上的 Document Imaging 功能, 建議將之選為全部由硬碟執行,
office 2003的安裝圖解步驟如下:
unix epoch time 用date指令轉換
epoch time 是unix常用的一種時間, 為自從1970/1/1 0:0:0 開始到指定時間
所經過的秒數, 但閱讀不易, 可透過下面的指令轉換
date -j -f '%s' 1273075362 '+%Y/%m/%d %H:%M:%S'
顯示結果為
2010/05/06 00:02:42
其中
-j 不因執行此指令設定系統時間
-f '%s' 指定輸入的時間格式, 在此即為秒
1273075362 即為epoch time
'+%Y/%m/%d %H:%M:%S' 顯示的格式
所經過的秒數, 但閱讀不易, 可透過下面的指令轉換
date -j -f '%s' 1273075362 '+%Y/%m/%d %H:%M:%S'
顯示結果為
2010/05/06 00:02:42
其中
-j 不因執行此指令設定系統時間
-f '%s' 指定輸入的時間格式, 在此即為秒
1273075362 即為epoch time
'+%Y/%m/%d %H:%M:%S' 顯示的格式
被freebsd 7.X以前的版本的fdisk寫過dd(dangerously dedicated)的硬碟處理
昨日幫朋友重灌起來的系統在其他硬碟上重新建立資料碟, 發生了fdisk那關寫入成功但再次讀取卻啥都沒有的狀況,
經過一夜(?)思考後, 想到應該是mbr有什麼東西被dd模式改寫掉造成, 解決辦法是使用
fdisk -B /dev/adX
並於第一個問題回應 y 之後問要不要寫入當然也要回 y, 即可重寫mbr的boot code, 之後再去sysinstall的fdisk就可以看到之前切出來的partition,
且/dev/adXs1 s2也都跑出來了.
其他失敗的嘗試有
1.dd if=/dev/zero of=/dev/adX bs=1m count=10
無效, 因為存取mbr磁區需另外跟硬碟溝通
2. fdisk -i /dev/adX
無效, 後來發現跟這東西完全無關...
開機狀態的snapshot的VM不建議到其他機器上使用
經測試, 開機狀態的snapshot很難在不同型的機器上使用, 會出現cpu type要求不合的狀態, 然後該VM就被停在一個暫停模式下怎樣也開不起來, 調整什麼cpu mask等等都沒有用, 且就算是搬移回做snapshot的機器上也開不了, 這是比較麻煩的部份, 若沒有進ESX console或ssh去直接調整該VM狀態, 那這個VM就等於陣亡了, 除非有更早的power off狀態的snapshot可用, 不然在GUI介面僅就只能刪除掉該VM一途.
除了將VM搬家會遇到這狀況之外, 另外就是clone VM時也要注意是否有power on的snapshot, 有的話clone過去後建議刪除掉以免誤觸此問題. 若一定要用該snapshot, 請於clone前先用該power on的snapshot開機, 然後關機, 做一次power off的snapshot, 這樣到其他機器就依然可以用該snapshot.
其實開機狀態的snapshot在不同型機器上要使用本來就很容易出問題(如cpu不同->指令集不同), 但為何搬回原機器仍無法使用就很奇怪了, 這部份算是碎碎唸吧.
可以當做ESX 的 iscsi share storage 軟體
免費:
Open-E 的 DSS V6 Lite (一個帳號可申請10個serial), 容量限制2TB
付費:
StorMagic的 SvSAN (前一個版本還不用錢說...哭哭~)
很流行的 FreeNAS跟OpenFiler就不要考慮了, 他們沒辦法處理多台同時存取同一個iscsi LUN的狀況, 很可能是因為沒有實作 lock - queue - release 的機制, 所以同時存取同一個LUN就會把檔案系統搞爛掉.
其他的iscsi software有興趣測試的話, 請至少掛兩個ESX上同一個iscsi LUN, 然後放個測試用的VM上去, 並作VMotion, 沒問題的話就算是初步通過了測試, 通常不支援的iscsi target會在這步爛給你看.
然後再放一個VM上去(與前一個VM不同台ESX), 兩個VM同時在寫入檔案動作時同時做VMotion, 然後VM關機, ESX重開機(重掛iscsi測試), 再開啟VM測幾次VMotion, 仍沒問題才能信任.
Open-E 的 DSS V6 Lite (一個帳號可申請10個serial), 容量限制2TB
付費:
StorMagic的 SvSAN (前一個版本還不用錢說...哭哭~)
很流行的 FreeNAS跟OpenFiler就不要考慮了, 他們沒辦法處理多台同時存取同一個iscsi LUN的狀況, 很可能是因為沒有實作 lock - queue - release 的機制, 所以同時存取同一個LUN就會把檔案系統搞爛掉.
其他的iscsi software有興趣測試的話, 請至少掛兩個ESX上同一個iscsi LUN, 然後放個測試用的VM上去, 並作VMotion, 沒問題的話就算是初步通過了測試, 通常不支援的iscsi target會在這步爛給你看.
然後再放一個VM上去(與前一個VM不同台ESX), 兩個VM同時在寫入檔案動作時同時做VMotion, 然後VM關機, ESX重開機(重掛iscsi測試), 再開啟VM測幾次VMotion, 仍沒問題才能信任.
訂閱:
文章 (Atom)