Sun Cluster 3.2 版本說明 (適用於 Solaris 作業系統)

升級

vxlufinish 程序檔在封裝根磁碟時傳回錯誤 (6448341)

問題摘要︰ 當原始磁碟被根封裝,而且嘗試從 Solaris 9 8/03 作業系統的 VxVM 3.5 即時升級到 Solaris 10 6/06 作業系統的 VxVM 5.0 時,才會看見此問題。vxlufinish 程序檔會失敗並出現以下錯誤。


#./vslufinish -u 5.10

    VERITAS Volume Manager VxVM 5.0
    Live Upgrade finish on the Solairs release <5.10>

    Enter the name of the alternate root diskgroup: altrootdg
ld.so.1: vxparms: fatal: libvxscsi.so: open failed: No such file or directory
ld.so.1: vxparms: fatal: libvxscsi.so: open failed: No such file or directory
Killed
ld.so.1: ugettxt: fatal: libvxscsi.so: open failed: No such file or directory
ERROR:vxlufinish Failed: /altroot.5.10/usr/lib/vxvm/bin/vxencap -d -C 10176
-c -p 5555 -g
    -g altrootdg rootdisk=c0t1d0s2
    Please install, if 5.0 or higher version of VxVM is not installed
    on alternate bootdisk.

解決方法︰ 請改而使用標準升級或雙分割區升級方法。

請連絡 Sun 支援或您的 Sun 業務代表,以得知近期是否可使用針對 VxVM 5.0 的 Sun Cluster 3.2 Live Upgrade 支援。

即時升級應支援從啟動磁碟掛載全域裝置 (6433728)

問題摘要︰ 在即時升級期間,lucreateluupgrade 指令無法變更對應至 /global/.devices/node@N 項目的替代啟動環境中的 DID 名稱。

解決方法︰ 在您開始即時升級以前,請在每個叢集節點執行以下步驟。

  1. 成為超級使用者。

  2. 備份 /etc/vfstab 檔案。


    # cp /etc/vfstab /etc/vfstab.old
    
  3. 請開啟 /etc/vfstab 檔案以進行編輯。

  4. 尋找對應至 /global/.device/node@N 的文字行。

  5. 編輯全域裝置項目。

    • 將 DID 名稱變更為實體名稱。

      變更 /dev/did/{r}dsk/dYsZ/dev/{r}dsk/cNtXdYs Z

    • 從項目中移除 global

    下列範例顯示對應至 /global/.devices/node@s 的 DID 裝置 d3s3 的名稱,已變更至其實體裝置名稱並移除 global 項目:


    原始的:
    /dev/did/dsk/d3s3    /dev/did/rdsk/d3s3    /global/.devices/node@2   ufs   2   no   global
    
    變更後:
    dev/dsk/c0t0d0s3     /dev/rdsk/c0t0d0s3    /global/.devices/node@2   ufs   2   no   -
  6. 在所有叢集節點上修改 /etc/vfstab 檔案後,請執行叢集即時升級,但請在從已升級的替代啟動環境重新啟動以前停止進一步動作。

  7. 在每個節點上,請在目前的、未升級的啟動環境上復原原始的 /etc/vfstab 檔案。


    # cp /etc/vstab.old /etc/vfstab
    
  8. 在替代啟動環境中,開啟 /etc/vfstab 檔案進行編輯。

  9. 尋找對應至 /global/.devices/node@N 的文字行,並在項目最後將橫線 (-) 替換為 global


    /dev/dsk/cNtXdYsZ    /dev/rdsk/cNtXdYsZ    /global/.devices/node@N   ufs   2   no   global
    
  10. 從已升級的替代啟動環境重新啟動節點。

    DID 名稱會在 /etc/vfstab 檔案中被自動替換。

vxlustart 程序檔無法在即時升級期間建立替代啟動環境 (6445430)

問題摘要︰ 在即時升級 Sun Cluster 期間升級 VERITAS Volume Manager (VxVM) 時,才會看見此問題。vxlustart 程序檔是用來升級舊版的 Solaris 作業系統和 VxVM。程序檔會失敗,並出現與以下內容類似的錯誤訊息:


# ./vxlustart -u 5.10 -d c0t1d0 -s OSimage

   VERITAS Volume Manager VxVM 5.0.
   Live Upgrade is now upgrading from 5.9 to <5.10>
…
ERROR: Unable to copy file systems from boot environment &lt;sorce.8876> to BE &lt;dest.8876>.
ERROR: Unable to populate file systems on boot environment &lt;dest.8876>.
ERROR: Cannot make file systems for boot environment &lt;dest.8876>.
ERROR: vxlustart: Failed: lucreate -c sorce.8876 -C /dev/dsk/c0t0d0s2 
-m -:/dev/dsk/c0t1d0s1:swap -m /:/dev/dsk/c0t1d0s0:ufs 
-m /globaldevices:/dev/dsk/c0t1d0s3:ufs -m /mc_metadb:/dev/dsk/c0t1d0s7:ufs 
-m /space:/dev/dsk/c0t1d0s4:ufs -n dest.8876

解決方法︰ 若要將叢集升級到 VxVM 5.0,請使用標準升級或雙分割區升級方法。

請連絡 Sun 支援或您的 Sun 業務代表,以得知近期是否可使用針對 VxVM 5.0 的 Sun Cluster 3.2 Live Upgrade 支援。

在封裝根磁碟時,節點間的 vxio 主要編號不同 (6445917)

問題摘要︰ 在執行 VERITAS Volume Manager (VxVM) 的叢集上,若已封裝根磁碟,則以下軟體的標準升級或雙分割區升級都會失敗:

叢集節點會當機,並不會在升級後啟動。這是因為在升級期間 VxVM 變更主要編號或次要編號所致。

解決方法︰ 在升級前,先解除封裝根磁碟。


注意 – 注意 –

若沒有正確遵照上述程序進行,就可能會在升級所有節點時遇到未預期的問題。而且,解除封裝和封裝根磁碟會導致節點的額外自動重新啟動 (每次),讓升級期間所需的重新啟動次數增加。


從 Solaris 9 的 Sun Cluster 版本 3.1 即時升級至 Solaris 10 的版本 3.2 後,無法使用區域 (6509958)

問題摘要︰ 從 Solaris 9 的 Sun Cluster 版本 3.1 即時升級至 Solaris 10 的版本 3.2 後, 無法在叢集軟體中適當地使用區域。問題在於 pspool 資料並非為 Sun Cluster 套裝軟體所建立。因此那些必須傳遞至非全域區域的套裝軟體 (例如 SUNWsczu) 並未正確地傳遞。

解決方法︰ 在使用 scinstall -R 指令升級 Sun Cluster 套裝軟體後 (但需在叢集啟動至叢集模式前),執行下列程序檔兩次:

Procedure使用程序檔的指示

開始之前

依下列其中一種方法準備並執行此程序檔:

  1. 成為超級使用者。

  2. 建立擁有以下內容的程序檔。

    #!/bin/ksh
    
    typeset PLATFORM=${PLATFORM:-`uname -p`}
    typeset PATHNAME=${PATHNAME:-/cdrom/cdrom0/Solaris_${PLATFORM}/Product/sun_cluster/Solaris_10/Packages}
    typeset BASEDIR=${BASEDIR:-/}
    
    cd $PATHNAME
    for i in *
    do
    	if pkginfo -R ${BASEDIR} $i >/dev/null 2>&1
    	then
    		mkdir -p ${BASEDIR}/var/sadm/pkg/$i/save/pspool
    		pkgadd -d . -R ${BASEDIR} -s ${BASEDIR}/var/sadm/pkg/$i/save/pspool $i
    	fi
    done
  3. 設定變數 PLATFORMPATHNAMEBASEDIR

    設定這些變數作為環境變數或直接在程序檔中修改值。

    PLATFORM

    平台名稱。例如:可以是 sparcx86。根據預設,PLATFORM 變數會設定為 uname -p 指令的輸出。

    PATHNAME

    可安裝 Sun Cluster 架構或資料服務套裝軟體的裝置路徑。此值對應至 pkgadd 指令中的 -d 選項。

    舉例說明,若為 Sun Cluster 架構套裝軟體,此值的格式如下:


    /cdrom/cdrom0/Solaris_${PLATFORM}/Product/sun_cluster/Solaris_10/Packages

    若為資料服務套裝軟體,此值的格式如下:


    /cdrom/cdrom0/Solaris_${PLATFORM}/Product/sun_cluster_agents/Solaris_10/Packages
    BASEDIR

    用作根路徑的目錄完整路徑名稱,對應至 pkgadd 指令中的 -R 選項。要進行即時升級,請將此值設定為 scinstall 指令中 -R 選項使用的根路徑。 根據預設, BASEDIR 變數設定為根 (/) 檔案系統。

  4. 執行程序檔,一次為 Sun Cluster 架構套裝軟體執行,一次為資料服務套裝軟體執行。

    執行程序檔後,您應會在每個套裝軟體的指令提示符號看到以下訊息:


    Transferring 套裝軟體名稱 package instance

    備註 –

    如果套裝軟體的 pspool 目錄已經存在,或針對相同的套裝軟體組執行兩次程序檔,指令提示符號中會顯示下列錯誤:


    Transferring 套裝軟體名稱 package instance
    pkgadd: ERROR: unable to complete package transfer
        - identical version of 套裝軟體名稱 already exists on destination device

    這是無害的訊息,您可以安心地忽略。


  5. 在您為架構套裝軟體和資料服務套裝軟體執行程序檔後,將您的節點啟動至叢集模式。

如果未對節點增加 Sun Cluster 3.2 核心修補程式,則無法增加該節點至現有已安裝修補程式的 Sun Cluster 3.2 叢集 (6554107)

問題摘要︰ 增加新叢集節點時,若沒有確認該節點與現有的叢集節點擁有相同的修補程式,可能會導致叢集節點當機。

解決方法︰ 在增加節點到叢集以前,請確認新的節點安裝了與現有叢集節點相同層級的修補程式。若未進行此動作可能會造成叢集節點當機。