Shall I use Zones or LDOMs ?
筆記一下
Shall I use Zones or LDOMs?
By Karoly Vegh on Feb 16, 2012
https://blogs.oracle.com/orasysat/entry/shall_i_use_zones_or
.
續 - Solaris 8 Brand Zone with VCS in Share Storage
前幾天提到 Solaris 8 Brand Zone with VCS in Share Storage
昨天 Veritas 有 patch 出來了
VERITAS Cluster Server 5.0 MP1 and MP3 Hot Fix Zone Agent Patch for Solaris 10 SPARC
實際測試的結果....非常慢... :(
從 initinal onlie 到 online 花了約 150 sec
有點讓人無法接受....
因為只是是將手動的流程,轉由 zone agent online 來處理
把 switch over to other node 當作 migration to new host 來處理而已
每次的 switchover/failover 就是一次 detach/attach/migration to new host .... *_*
導致 zone online 要花上不少時間
除此之外,還有一些對 vcs permission 的檢查
不過那花不了一秒鍾....
每次 migration to new host 實在是太耗時了
顯然 Sun 的做法並不是這樣子
Patch 126020-03 for HA_Container
126020-03/SUNWsczone/reloc/SUNWsczone/sczbt/bin/functions
brand zone on share disk 可以用 override hostid file 的做法
也印證了不必每次切換都 s8_p2v migration to new host
若在 VCS zone agent 使用 Sun Cluster 的方式
只要十秒內 Zone 就 online 了
.
昨天 Veritas 有 patch 出來了
VERITAS Cluster Server 5.0 MP1 and MP3 Hot Fix Zone Agent Patch for Solaris 10 SPARC
實際測試的結果....非常慢... :(
從 initinal onlie 到 online 花了約 150 sec
有點讓人無法接受....
因為只是是將手動的流程,轉由 zone agent online 來處理
把 switch over to other node 當作 migration to new host 來處理而已
每次的 switchover/failover 就是一次 detach/attach/migration to new host .... *_*
導致 zone online 要花上不少時間
除此之外,還有一些對 vcs permission 的檢查
不過那花不了一秒鍾....
每次 migration to new host 實在是太耗時了
顯然 Sun 的做法並不是這樣子
Patch 126020-03 for HA_Container
126020-03/SUNWsczone/reloc/SUNWsczone/sczbt/bin/functions
brand zone on share disk 可以用 override hostid file 的做法
也印證了不必每次切換都 s8_p2v migration to new host
若在 VCS zone agent 使用 Sun Cluster 的方式
只要十秒內 Zone 就 online 了
.
Workaround to access raw VxVM Volumes from Non-global zones
現在 Oracle 用 raw device 的不多了,大部分都是舊機器吧
在轉移到 Solaris 8 Container 的過程中,不可避免的也碰到了
需要在 local zone 中存取 raw device 的狀況
跟直接用 zonecfg 設定 raw device 給 zone 不太一樣
先確認 zone 執行中
global# zoneadm list -cv
確認 raw volume 的 major and minor numbers
global# ls -l /dev/vx/rdsk/dg02
在 local zone 中用 mknod 建立 volume
global# cd /s8zone/dev
global# mknod vol01 c 370 38001
因為是轉移舊系統,通常我把這兒路逕取的跟舊的一樣
global# mkdir -p /s8zone/dev/vx/rdsk/dg02
global# cd /s8zone/dev/vx/rdsk/dg02
global# mknod vol01 c 370 38001
登入 local zone 檢查一下
global# zlogin s8zone
[Connected to zone 's8zone' pts/2]
Last login: Mon Sep 29 02:07:42 on pts/2
Sun Microsystems Inc. SunOS 5.8 Generic Patch February 2004
Sourcing //.profile-EIS.....
root@s8zone # ls -l /dev/vx/rdsk/dg02
參考文件︰
Document ID: 285063
Workaround to access raw Veritas Volume Manager volumes from Non-global zones
.
在轉移到 Solaris 8 Container 的過程中,不可避免的也碰到了
需要在 local zone 中存取 raw device 的狀況
跟直接用 zonecfg 設定 raw device 給 zone 不太一樣
先確認 zone 執行中
global# zoneadm list -cv
ID NAME STATUS PATH 0 global running / 1 myzone running /s8zone
確認 raw volume 的 major and minor numbers
global# ls -l /dev/vx/rdsk/dg02
crw------- 1 root root 370, 38001 Aug 14 18:39 vol01
在 local zone 中用 mknod 建立 volume
global# cd /s8zone/dev
global# mknod vol01 c 370 38001
因為是轉移舊系統,通常我把這兒路逕取的跟舊的一樣
global# mkdir -p /s8zone/dev/vx/rdsk/dg02
global# cd /s8zone/dev/vx/rdsk/dg02
global# mknod vol01 c 370 38001
登入 local zone 檢查一下
global# zlogin s8zone
[Connected to zone 's8zone' pts/2]
Last login: Mon Sep 29 02:07:42 on pts/2
Sun Microsystems Inc. SunOS 5.8 Generic Patch February 2004
Sourcing //.profile-EIS.....
root@s8zone # ls -l /dev/vx/rdsk/dg02
crw------- 1 root root 370, 38001 Aug 14 18:39 vol01OK~可以開始玩了 :)
參考文件︰
Document ID: 285063
Workaround to access raw Veritas Volume Manager volumes from Non-global zones
.
Solaris 8 Brand Zone with VCS in Share Storage
繼上次測試 Oracle in Solaris 8 Container with VCS 成功後
這次測試可否將 zone root 放在 share storage 上
文件的部份只有 solaris 10 native zone 寫說可以
不幸滴,測試 solaris 8 zone 的結果是失敗的
-------------------------------------------------------
zoneadm: zone 's8': This zone has been migrated to a new host.
zoneadm: zone 's8':
zoneadm: zone 's8': Run "/usr/lib/brand/solaris8/s8_p2v s8" before booting.
zoneadm: zone 's8':
zoneadm: zone 's8': exec /usr/lib/brand/solaris8/s8_boot s8 /zone/clarify failed
zoneadm: zone 's8': call to zoneadmd failed
--------------------------------------------------------
切換到另一個 node 後,認為轉移到了新的 host
需要跑個 migration 程序,s8_p2v
之後就可以順利將 s8 zone 由 vcs zone agent 帶起來了
可是 cluster failover 總不能這樣子啊,要可以自動帶起來才行
找找找,看有沒有法子 bypass 這個檢查步驟....
原來在 s8_boot 這程序中,會去檢查主機的 hostid
比對 zone root/.host.orig 這個檔案的 hostid
只要不一樣,就認為是轉移主機了
需要執行 s8_p2v 這個 migration 程序後,才可以 boot
那那那... Sun Cluster 怎麼處理這個問題呢?
嘿,給我找到了... Patch 126020-03 for HA_Containers
畢竟 S8/S9 Container 是後來出來的玩意兒,不過 Sun 手腳也很快
上個 Patch 就解決了這個問題
將 126020-03 解開看看裡面到底改了什麼玩意兒?
SUNWsczone/sczbt/bin/functions 裡面加了些東西
一些判斷 zone type 是 solaris8/solaris9/lx
重點來了,執行 hostid > $zonepath/root/.host.orig
嗯嗯,我如法炮製
去修改 VCS Zone agent 的 online script
測試一下,嘿嘿﹋﹋ it works!!
經詢問的結果,聽說這幾天 VCS patch 會針對此狀況做處理
到時再補個 patch 吧
.
這次測試可否將 zone root 放在 share storage 上
文件的部份只有 solaris 10 native zone 寫說可以
不幸滴,測試 solaris 8 zone 的結果是失敗的
-------------------------------------------------------
zoneadm: zone 's8': This zone has been migrated to a new host.
zoneadm: zone 's8':
zoneadm: zone 's8': Run "/usr/lib/brand/solaris8/s8_p2v s8" before booting.
zoneadm: zone 's8':
zoneadm: zone 's8': exec /usr/lib/brand/solaris8/s8_boot s8 /zone/clarify failed
zoneadm: zone 's8': call to zoneadmd failed
--------------------------------------------------------
切換到另一個 node 後,認為轉移到了新的 host
需要跑個 migration 程序,s8_p2v
之後就可以順利將 s8 zone 由 vcs zone agent 帶起來了
可是 cluster failover 總不能這樣子啊,要可以自動帶起來才行
找找找,看有沒有法子 bypass 這個檢查步驟....
原來在 s8_boot 這程序中,會去檢查主機的 hostid
比對 zone root/.host.orig 這個檔案的 hostid
只要不一樣,就認為是轉移主機了
需要執行 s8_p2v 這個 migration 程序後,才可以 boot
那那那... Sun Cluster 怎麼處理這個問題呢?
嘿,給我找到了... Patch 126020-03 for HA_Containers
畢竟 S8/S9 Container 是後來出來的玩意兒,不過 Sun 手腳也很快
上個 Patch 就解決了這個問題
將 126020-03 解開看看裡面到底改了什麼玩意兒?
SUNWsczone/sczbt/bin/functions 裡面加了些東西
一些判斷 zone type 是 solaris8/solaris9/lx
重點來了,執行 hostid > $zonepath/root/.host.orig
嗯嗯,我如法炮製
去修改 VCS Zone agent 的 online script
測試一下,嘿嘿﹋﹋ it works!!
經詢問的結果,聽說這幾天 VCS patch 會針對此狀況做處理
到時再補個 patch 吧
.
VCS with Solaris 8 Zone
畢竟 Solaris 8 zone in Solaris 10 (S8MA) 這玩意兒出來的 VCS Zone support 晚,所以目前 VCS 文件中寫到的 zone,並沒有特別說明是哪種 zone。
現在看來,當然指的都是 Solaris 10 native zone
由文件中看來,zone agent 對 local zone 的動作很單純,online 就是 zoneadm boot,offline 就是 zoneadm halt,對 Solaris 8 Zone 的 online/offline 應該沒什麼問題,但是其他要進去 local zone monitor 的 agent 呢?
在安裝 VCS 或建立 Solaris 10 native zone 時
有部份 VRTS 檔案是會自動從 global zone 複製到 native zone 的
就像 pkgadd or patchadd 時,若不加 -G 參數(Global only)
預設是會 apply 到所有的 running native zone
這兒我看來最重要的是那些 VCS agent 了
因為 global/local zone 都是 solaris 10 沒問題
但在 Solaris 8 zone 就有問題了...
check engin_A.log :
2008/01/13 18:56:16 VCS INFO V-16-2-13001 (node-2) Resource(ora8): Output of the completed operation (online) sh: /opt/VRTSvcs/bin/Oracle/online: not found
2008/01/13 19:33:35 VCS INFO V-16-2-13001 (node-2) Resource(ora8): Output of the completed operation (offline) sh: /opt/VRTSvcs/bin/Oracle/offline: not found
為什麼 not found ?原來是去用 local zone 中的 agent 了
因為不是 native zone,所以安裝時(pkgadd)不會複製這些檔案
導致 agent 無法正確的 monitor zone 中的 AP
我的偷吃步就是看有哪些 VRTS 檔案會被安裝到 native zone 中
就照樣複製這些檔案到 Solaris 8 zone 中
還有另一個問題
VCS WARNING V-16-1-52529 Login Incorrect, Invalid username/password
Agnet 在 global/local zone 中怎麼溝通?這兒需要設定一個 cluster user 讓他有 Group Administor 權限就ok了
在 native zone 中沒有這些問題,安裝時都會自動設好
但在 p2v zone 中,我們只好手動來把這些設定做完了
ok! It works !!
參考文件:
Veritas Cluster White Paper
Implementing Solaris™ Zones with Veritas™ Cluster Server
by Symantec
July 2006
Eric Hennessey
Group Technical Product Manager
Unix Clustering Solutions
現在看來,當然指的都是 Solaris 10 native zone
由文件中看來,zone agent 對 local zone 的動作很單純,online 就是 zoneadm boot,offline 就是 zoneadm halt,對 Solaris 8 Zone 的 online/offline 應該沒什麼問題,但是其他要進去 local zone monitor 的 agent 呢?
在安裝 VCS 或建立 Solaris 10 native zone 時
有部份 VRTS 檔案是會自動從 global zone 複製到 native zone 的
就像 pkgadd or patchadd 時,若不加 -G 參數(Global only)
預設是會 apply 到所有的 running native zone
這兒我看來最重要的是那些 VCS agent 了
因為 global/local zone 都是 solaris 10 沒問題
但在 Solaris 8 zone 就有問題了...
check engin_A.log :
2008/01/13 18:56:16 VCS INFO V-16-2-13001 (node-2) Resource(ora8): Output of the completed operation (online) sh: /opt/VRTSvcs/bin/Oracle/online: not found
2008/01/13 19:33:35 VCS INFO V-16-2-13001 (node-2) Resource(ora8): Output of the completed operation (offline) sh: /opt/VRTSvcs/bin/Oracle/offline: not found
為什麼 not found ?原來是去用 local zone 中的 agent 了
因為不是 native zone,所以安裝時(pkgadd)不會複製這些檔案
導致 agent 無法正確的 monitor zone 中的 AP
我的偷吃步就是看有哪些 VRTS 檔案會被安裝到 native zone 中
就照樣複製這些檔案到 Solaris 8 zone 中
還有另一個問題
VCS WARNING V-16-1-52529 Login Incorrect, Invalid username/password
Agnet 在 global/local zone 中怎麼溝通?這兒需要設定一個 cluster user 讓他有 Group Administor 權限就ok了
在 native zone 中沒有這些問題,安裝時都會自動設好
但在 p2v zone 中,我們只好手動來把這些設定做完了
ok! It works !!
參考文件:
Veritas Cluster White Paper
Implementing Solaris™ Zones with Veritas™ Cluster Server
by Symantec
July 2006
Eric Hennessey
Group Technical Product Manager
Unix Clustering Solutions
Sun Cluster with Solaris 8 Migration Assistant
from: New Open HA Cluster Agent source code and Solaris Cluster Express 10/07 released
文中提到 Sun Cluster 3.1 的 Patch 120590-06 已加強對 zone 的支援,可監控 Solaris 8 zone 了,但 Sun Cluster 3.2 尚未支援,不過應該也快了
文中提到 Sun Cluster 3.1 的 Patch 120590-06 已加強對 zone 的支援,可監控 Solaris 8 zone 了,但 Sun Cluster 3.2 尚未支援,不過應該也快了
Status: RELEASED Patch Id: 120590-06 Keywords: sunwsczone Summary: Sun Cluster 3.1/3.1_x86: HA for Solaris Containers Date: Oct/19/2007 Problem Description: 6604747 HA Container agent should support solaris8 zones on sparc (from 120590-05) 6488338 HA Container agent should support BrandZ lx zones with Solaris 10 Update 4 6554262 validate() for sczbt should check ip-type=exclusive and then only allow SC_NETWORK=false VCS 呢?下回分解
訂閱:
文章 (Atom)