2013年11月12日 星期二

調整ESXi5.5的硬體要求限制

硬體要求檢查僅在安裝時進行, 因此於安裝時修改即可避開, 安裝好之後能不能正常運作就不得而知, 不過其實安裝時載入運作的系統其實跟要安裝的系統根本一樣, 所以基本上你能看得到安裝畫面就代表基本上的運作應該沒有問題.


  1. 開始安裝時的第一個畫面不要管他, 按ALT+F1用root與無密碼直接登入
  2. cd /usr/lib/vmware/weasel/utils
  3. 找到一個叫做upgrade_precheck.py的檔案, 這是我們的目標
  4. 先刪除掉 upgrade_precheck.pyc, 這是一個複製檔
  5. 因為一些系統旗標的關係, 無法修改我們要動手腳的檔案, 且此精簡OS沒有修改旗標的執行檔, 故用另一種手法處理掉.
    1. mv upgrade_precheck.py upgrade_precheck.py.old 
    2. cp upgrade_precheck.py.old upgrade_precheck.py
  6. 使用vi 編輯目標檔案, 應該可以找到錯誤訊息的前幾個關鍵字, 像是CPU_CORES、MEMORY_SIZE之類的,找尋第二次出現此關鍵字的地方, 修改需求值例如XXX_MIN= ? 之類的, 存檔離開
  7. ps -c | grep weasel 找到正在執行中的安裝指令, kill掉
  8. 此時ALT+F2會重新執行安裝程式, 應就能順利安裝。
附註: ESXi 5.5 hypervisor OS 就要吃掉1095MB的記憶體, 因此請不要試圖安裝於低於此記憶體大小的機器上,會慢得想揍人或運作不正常。

2012年12月24日 星期一

FreeBSD with vmtools in vsphere VM 收到shutdown guest沒有進行ACPI off關機的解決方式

修改 /usr/local/etc/rc.d/vmware-tools.sh, 加上紅色字串部分即可


# Start the guest OS daemon
vmware_start_guestd() {
  cd "$vmdb_answer_SBINDIR" && "$vmdb_answer_SBINDIR"/vmware-guestd \
    --background "$GUESTD_PID_FILE" --halt-command "/sbin/halt -p"
}

2011年7月20日 星期三

Vsphere啟用HA的cluster要調整網路時一定要記得先關閉HA

要調整網路時, 一定要記得把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月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的網路


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

用法:
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的安裝圖解步驟如下: