2


DR 概念

本章說明在您嘗試使用 DR 前應瞭解的 DR 概念。

如果您計劃在高階伺服器的系統控制器 (SC) 上執行 DR 作業,請務必閱讀第 5 章SMS DR 程序 - 從系統控制器 (SC) 執行 (僅限高階)。本章內的某些資訊將會與第 5 章重複,不過所採用的視角並不相同。閱讀這兩章內容可以對 DR 功能有較透徹的瞭解。

本章節涵蓋以下主題:



備註 - UltraSPARC IV+ 板包括兩個核心 CPU。此文件中 CPU 或處理器的參照可能是指單一核心或雙核心類型,而且所有程序都可套用在這兩個類型上。




動態系統網域

Sun Fire 系統可被劃分為網域。每個網域以指定給網域的系統板插槽為基礎。此外,每個網域在硬體分割區中有各自的電源,如此當其中一個網域發生錯誤時,才不會影響到伺服器上的其他網域。

每個網域配置是由常駐在 SC 上的配置資料庫決定的。配置資料庫 - 在高階系統中,平台配置資料庫 (PCD) - 控制系統板插槽要如何邏輯分割至網域中。網域配置代表預定的網域配置。因此,網域配置包括空插槽及已插入之插槽。實體網域是由邏輯網域決定。

提供給網域的可用的插槽數目由 ACL 控制。ACL 是高階系統網域上可用元件清單,或是中階系統網域存取控制清單的簡稱。所有網域的 ACL 在 SC 上進行維護。在您可以變更其狀態前,在網域中必須指定插槽或是有可用的插槽。將插槽指定給網域後,在指定網域上可看到該插槽,但其他網域則無法看見它。反過來說,在您指定並將插槽連線至另一個網域前,必須先取消指定插槽,並中斷該插槽與原網域的連線。

邏輯網域由數個屬於網域的插槽組成。而實體網域則由數個實體上相互連接的板組成。插槽即使不是實體網域的一部分,也能成為邏輯網域的成員。啟動網域後,您可以選擇將主機板及空插槽指定給邏輯網域,或選擇取消指定;然而,直到作業系統的要求下,才能允許成為實體網域的一部分。未指定給任何網域的系統板或插槽可供所有網域使用。這些板可由平台管理員指定給網域,但是,ACL 可在 SC 上設定讓有適合權限的使用者指定可用板到網域中。


附接點

附接點是板或裝置的統稱,也就是固定板或裝置的插槽,以及任何在其中的元件。插槽有時稱為插座

Sun Fire 系統支援下列附接點:



備註 - 許多使用者只注意板及裝置狀況的變更。因此,為求簡要,此文件中某些程序所指之板附接點則簡稱為板、PCI 附接點則為 PCI 卡,而元件附接點則為 CPU 或記憶體模組。當簡稱可能引起混淆時,則使用適當的名稱。



佔取是指板與其附接裝置之組合,包括任何由介面電纜連接的外部儲存裝置。

板插槽可依照插槽編號命名或不命名 (例如在 SCSI 鏈中)。

DR 可辨識附接點名稱之類型:

要取得所有可用邏輯附接點清單,請使用以下網域中的指令:


# cfgadm -l

 

附接點類別

Sun Fire 系統支援下列附接點類別。兩個類別 DR 使用者需要知道的是 sbdpci

要檢視附接點清單與其相關的板類型,請以超級使用者的身份執行以下指令:


# cfgadm -s -a "cols=ap_id:class"

 

高階系統附接點

高階系統上實體附接點名稱之範例:


/devices/pseudo/dr@0:SBx (針對插槽 0 中的系統板)

/devices/pseudo/dr@0:IOx (針對插槽 1 中的 I/O 板)


 

其中 0 是節點 0 (零)、SB 是系統板、IO 是 I/O 板,而 x 代表板數目或特定板之擴展器數目。系統板與 I/O 板之數目為 0 至 17。



備註 - 系統板僅在插槽 0 安裝。I/O 板與 Max CPU 板僅安裝在插槽 1 中。



高階系統之邏輯附接點以下列兩種形式的其中一種呈現:


SBx (針對系統板)

IOx (針對 I/O 板或 Max CPU 板)


 

中階系統附接點

中階系統上實體附接點名稱之範例:


/devices/ssm@0,0:N0.SBx (針對系統板)

/devices/ssm@0,0:N0.IBx (針對 I/O 板)


 

其中 N0 是節點 0 (零)、SB 是系統板、IB 是 I/O 板,而 x 為槽編號 (系統板是 0 到 5,而 I/O 板為 6 到 9)。

中階系統上的邏輯附接點以下列兩種形式中的一種形式呈現:


N0.SBx (針對系統板)

N0.IBx (針對 I/O 板)


 

變更至附接點

您可以使用 cfgadm(1M) 指令變更附接點。您可以:

如需更多關於狀態之資訊,請參閱以下章節。如需更多附接點之相關資訊,請參閱 cfgadm(1M) 線上手冊。


狀態與情況

此節說明板、插槽、元件與附接點之狀態和情況。

cfgadm(1M) 指令可顯示九種狀態與情狀的類型。如需更多資訊,請參閱元件狀態元件情況



備註 - 下列關於板與板插槽之資訊也可套用在 PCI 卡和將其固定之 PCI 匯流排。



板與板插槽狀態

板插槽中沒有板時,其狀態為空缺。插槽中沒有板時,板的狀態可為中斷連線連線


表 2-1 板與板插槽狀態

狀態

說明

empty

插槽中沒有板。

disconnected

插槽中的板可從系統匯流排切斷連線。板可不需關閉電源即處於切斷連線狀態。然而,在將板從插槽移除前須先關閉板電源並切斷連線。新插入的板是中斷連線的狀態。

connected

啟動插槽中的板電源並連線到系統匯流排。您只能在連線狀態下檢視板的元件。


 

caution icon

注意 - 實體移除在連線狀態,或接上電源及中斷連線狀態中的板,會使作業系統當機,並會導致系統板永久損壞。



板在連線狀態可為配置取消配置。板在中斷連線下永遠為取消配置。


表 2-2 配置與取消配置板

名稱

說明

configured

可以在 Solaris 軟體下使用。

unconfigured

在 Solaris 軟體下不可使用。


 

下列狀態僅在 SC 上可以看見:


表 2-3 板狀態僅在 SC 上可看見

名稱

說明

Available

插槽,其中可能有或沒有板,且沒有指定到任何特定網域。

Assigned

插槽,其中可能有包含或沒有包含板,其屬於網域,但是未配置硬體使用它。

Active

指定給插槽中的板之網域正在使用板。您無法重新指定作用中的板。


 

板情況

板的情況會是以下三種狀況之一:未知、正常或錯誤。插槽可能指定為無法使用。


表 2-4 板與板插槽情況

名稱

說明

unknown

板未受測試。

ok

板可作業。

failed

板未通過測試。

unusable

板插槽無法使用。


 

元件狀態

和板不同,CPU 或記憶體模組不可以個別連線或中斷連線。因此,所有此類元件都在連線狀態。

連線元件可為配置或取消配置。


表 2-5 連線元件:配置或取消配置

名稱

說明

configured

元件可以在 Solaris 作業系統下使用。

unconfigured

元件不可以在 Solaris 作業系統下使用。


 

元件情況

CPU 或記憶體模組為未知、正常或錯誤。


表 2-6 CPU 或記憶體模組情況

名稱

說明

unknown

元件未受測試。

ok

元件可作業。

failed

元件未通過測試。


 


可分離性

可分離裝置要符合下列要項:

某些板無法分離,因為無法移動這些板的資源。例如,若網域只有一個 CPU 板,則無法分離該 CPU 板。如果 I/O 板控制啟動磁碟機,則為不可分離。

如果 I/O 板沒有替代路徑,您可以執行下列項目:



備註 - 如果您不確定裝置是否為可分離,請連絡您的 Sun 服務代表。




永久和非永久記憶體

在刪除板之前,作業系統須先空出板上的記憶體。空出板是指將其非永久記憶體的內容刷新至交換空間,並複製其永久記憶體的內容 (也就是核心和 OpenBoottrademark PROM 軟體) 到另一個記憶體板上。

欲重置永久記憶體,網域上的作業系統需暫時靜止。靜止的時間長短取決於網域 I/O 配置和執行的工作量。

欲使用永久記憶體來分離板只能在作業系統靜止時進行。因此,您應該清楚永久記憶體的常駐位置,以免嚴重影響到網域的作業。若要顯示永久記憶體的大小,請使用 cfgadm(1M) 指令及其 -av 選項。若要空出具有永久記憶體的板,作業系統必須找出相當大區塊的可用記憶體 (即目標記憶體),以複製永久記憶體的目前內容 (即來源記憶體)。

複製重新命名

使用者程序可將其分頁至交換裝置以釋放記憶體。但是 Solaris 核心常駐在永久記憶體中,所以無法釋放。反而,cfgadm 會使用複製重新命名技術來釋放記憶體。在作業系統辨別適合的目標板後 - 其有足夠記憶體可容納搬移的永久記憶體 - DR 軟體會執行以下步驟:

1. 將記憶體分頁至交換以空出目標板上的記憶體。

2. 靜止作業系統。

3. 從來源版複製內容 (永久記憶體) 至目標板。此為分割區的複製部份。

4. 重新編排硬體程式至來源與目標板之交換記憶體位址範圍。此為分割區的重新命名部份。

5. 從作業系統靜止的狀態中將其釋放。

記憶體交錯

如果系統記憶體與多個系統板交錯,系統板則無法動態重新配置。不論記憶體是否交錯,PCI 卡與 I/O 板都可動態重新配置。

如需更多關於高階系統中記憶體交錯之資訊,請參閱「Sun Fire 高階系統管理手冊」。關於中階系統,請參閱 setupdomain 指令的 interleave-scope 參數;該指令在「Sun Fire Midrange Systems Platform Administration Manual」「Sun Fire Midrange System Controller Command Reference Manual」

可修改之記憶體錯誤

可修改之記憶體錯誤是指系統板上的記憶體 - 其為一個或多個雙排記憶體模組 (DIMM),或硬體互連之分割區 - 可能有錯誤且須置換。當 SC 偵測到可修正之記憶體錯誤時,會啟動一個記錄停止傾印作業,以儲存診斷資料,這個操作會影響 DR 作業。

在因為可修正之記憶體錯誤而發生記錄停止時,可在啟動 DR 作業前完成記錄停止傾印。

如果錯誤元件引起可修改記憶體錯誤之重覆報告,SC 會執行多重記錄停止傾印。如果發生此情況,您應該暫時停用 SC 上的傾印偵測機器,讓目前的傾印完成,然後初始化 DR 作業。在完成 DR 作業後,請重新啟動傾印偵測。


靜止

在取消配置有永久記憶體 (OpenBoottrademark PROM 或核心記憶體) 之系統板上的作業時,作業系統會短暫中止,這種狀況稱為作業系統靜止。在此重要的作業階段中,網域上所有作業系統及裝置活動必須暫停幾秒鐘。

要判定板是否具有永久記憶體的快速方法可使用下列指令:


# cfgadm -av | grep permanent

 

系統會回應下列輸出,說明中接系統上的系統板 0 (零):


N0.SB0::memory connected configured ok base address 0x0, 4194304
 KBytes total, 668072 KBytes permanent

 

若作業系統無法達到靜止狀態,該環境會顯示無法靜止的原因,其中可能的原因如下:



備註 - 即時程序不會防礙靜止程序的執行。



導致程序暫停失敗的情況,一般是暫時的現象。請檢查任何錯誤的起因,如果作業系統面臨錯誤而中止程序,請再次嘗試作業。

在靜止期間,系統會停止不動並且不會回應外在事件,如網路封包。靜止的持續時間視下列兩個因素而定:需要停止多少 I/O 裝置和執行緒;需要複製多少記憶體。通常 I/O 裝置的數量會決定所需的靜止時間,因為 I/O 裝置必須暫停和取消暫停。靜止狀態通常會持續超過兩分鐘。

因為靜止具有顯著的影響,cfgadm 會先請求確認再實行靜止。若您輸入:


# cfgadm -c unconfigure N0.SB0

 

系統會回應下列提示以供確認:


System may be temporarily suspended, proceed (yes/no)?

 

如果您使用 Sun Management Center 來執行 DR 作業,快顯視窗則會顯示此提示:


輸入「Yes」確認靜止的影響是可接受的,然後繼續進行。

 


安全暫停和非安全暫停裝置

當 DR 暫停作業系統時,附接到作業系統的裝置驅動程式也必須暫停。若驅動程式無法暫停 (或接著恢復),DR 作業就會失敗。

當作業系統處於靜止狀態時,安全暫停裝置不會存取記憶體或中斷系統。若驅動程式支援作業系統的靜止 (如果可以暫停然後恢復) 功能,此驅動程式即可視為具有安全暫停的功能。此可安全暫停的驅動程式亦可保證:當暫停請求順利完成時,驅動程式所管理的裝置不會嘗試存取記憶體;即使在做出暫停請求時,該裝置為開啟狀態,它也不會嘗試存取記憶體。

當作業系統處於靜止狀態時,非安全暫停裝置具有記憶體存取或系統中斷的功能。

在高階系統上,DR 在 dr.conf 檔案中使用不安全的驅動程式清單以避免從記憶體存取不安全的裝置或是在 DR 作業期間中斷作業系統。dr.conf 檔案常駐在下列目錄中:/platform/SUNW,Sun-Fire-model_number/kernel/drv/,其中 model_number 為機器名稱,例如:15000。不安全的驅動程式清單是 dr.conf 檔案之特性,其格式如下:


unsupported-io-drivers="driver1","driver2","driver3";

 

DR 會在準備暫停作業系統時讀取此清單,則可以取消配置記憶體元件。如果 DR 在不安全的驅動程式清單中發現使用中的驅動程式,其會中斷 DR 作業並傳回錯誤訊息。訊息包括使用中、不安全的驅動程式之辨識。您必須手動移除裝置之使用,請執行下列一個或多個作業:

在您停止裝置之使用後,您可以重新嘗試 DR 作業。



備註 - 如果您不確定裝置是否為可安全中止,請連絡您的 Sun 服務代表。




I/O 板上的 DR

當您新增或移除具有 I/O 裝置板時必須格外小心。在您移除具有 I/O 裝置的板時,板上所有的裝置都必須關閉,其所有的檔案系統也都必須卸載。

如果您需要從網域暫時移除具有 I/O 裝置的板,然後在新增任何具有 I/O 裝置的板前把它重新加入的話,就不需要執行重新配置。在此清況下,連接板裝置的裝置路徑維持不變。但是如果您在移除第一個具有 I/O 裝置之板後要增加另一個,然後再增加第一個板,請重新配置因為到第一個板的裝置路徑已變更。



備註 - 嘗試在網域的 I/O 板上執行 DR 作業前,請確認到網域至少有兩個可使用的 CPU。此外,請確認其中至少一個 CPU 是位於系統板上,而且沒有連結程序。請參閱 pbind(1M) 線上手冊以了解更多有關板的程序。



高階系統 I/O 板、Golden IOSRAM、MaxCPU 與 hsPCI+

每個高階系統網域上的 I/O 板包含 IOSRAM 裝置。但是,只有一個 IOSRAM 裝置,是稱為 golden IOSRAM,是使用在 SC 到網域通訊。golden IOSRAM 包含「通道」,其使用在 SC 到網域通訊。因為 DR 可移除 I/O 板,其有時需要停止使用目前的 golden IOSRAM 讓另一個 IOSRAM 裝置成為 golden IOSRAM。此程序稱為「通道交換」,其發生在 DR 取消配置目前的 golden IOSRAM。啟動網域時,網域中編碼最小的 I/O 板通常會被選取為初始 golden IOSRAM。

DR 支援在高階系統 I/O 板上的 I/O 匯流排以及 PCI卡 MaxCPU 板。DR 也支援 hsPCI+ 卡的動態重新配置。每個 hsPCI+ 卡都包含兩個 XMITS ASIC 以及四個熱插式 hsPCI+ 插槽。

中階系統 I/O 組件、PCI 與 CompactPCI

在 Sun Fire 中階系統上,DR 不支援 SAI/P (錯誤 ID 4466378) 或 HIPPI/P。先前的發行版本不支援 SunHSI/P 驅動程式,但阻止支援的錯誤 4496362 已於 106922 (2.0) 和 109715 (3.0) 修補程式中修復。欲了解更多,請參閱 SunSolve 以及 devfsadm(1M) 線上手冊。



備註 - 您不可以使用 DR 連接和配置作業將 I/O 板增加至配有一個或多個 UltraSPARC IV+ 系統板之單一分割區中階系統的上的網域。此限制是由於可測試的 I/O 板上其第二個網域不存在。但是,您可以在此說明系統的 I/O 板上使用 DR 取消配置及中斷連線指令。詳情請參閱測試板和韌體版本說明 5.19.0 的「Sun Fire 中階系統平台管理手冊」。



CompactPCI 之說明

下列限制適用於包含 CompactPCI 組件的重新配置:

取消配置 CompactPCI 卡也會自動將其取消連接。若已啟用自動配置,連接 CompactPCI 卡也會將其配置。若已停用自動配置,您必須手動執行配置。


一般 DR 板作業

連接作業

在板連接作業期間,如果插槽系統板可使用且不是任何邏輯網域的一部份,DR 會嘗試指定板插槽至網域中。在指定插槽後,DR 會請求 SC 開啟電源並測試板。在測試板之後,DR 會請求 SC 連接板的電源至系統,其使板成為實體網域的一部份。作業系統會測試板上的元件。



備註 - 如果 cfgadm(1M) 指令在 DR 作業時執行失敗,板不會回復其原來的狀態。如果錯誤可以修復,您可以重新執行該指令。如果錯誤無法修復,您必須重新啟動網域才能使用板。



插入板之前的附接點狀態與情況為:

實體插入板後,狀態與情況為:

邏輯連接附接點之後,狀態與情況為:

配置作業

配置作業期間,如果板插槽狀態為中斷連線,DR 會嘗試連接板插槽。其會跨越在連接作業期間建立的裝置樹狀結構。(DR 建立 Solaris 作業系統裝置樹狀節點然後附接裝置驅動程式 (如果需要)。)

CPU 增加至 CPU 清單,且初始化記憶體然後增加至系統記憶體儲存池。成功完成配置功能後,CPU 與記憶體已準備就緒可使用。

至於 I/O 裝置,請在裝置可使用前先使用 mount(1M) 與 ifconfig(1M) 指令。

當您使用 cfgadm 配置板至網域時,其板會自動連及配置。

中斷連線作業

中斷連線作業期間,DR 架構與 SC 至程式之通訊會互連,所以系統板可從實體網域移除。其會嘗試執行與取消配置作業相關之作業。

板可在不關閉電源下呈現中斷連線狀態。然而,在將板從插槽移除前須先關閉板電源並中斷連線。

實體插入板前,狀態與情況為:

實體插入板後,狀態與情況為:

取消配置作業

依據永久記憶體之身份認證,取消配置作業可由單一作業或兩個分開的作業所構成。如果系統板內存在永久記憶體,則在取消配置作業 DR 之前,先將記憶體內容從指定板移動至網域中目標板上的可用記憶體。請參閱永久和非永久記憶體以取得更多關於板為永久記憶體的資訊。


DR 概念圖示

DR 可讓您不關閉系統電路就切斷並回復系統板連線。當系統持續作業時,您可以使用 DR 增加或移除系統資源。

下列範例是從 Sun Fire 高階系統而來,但是基本概念也可套用在中階系統中。



備註 - Sun Fire E25K 與 Sun Fire 15K 系統可同時支援最多 18 個系統板與 18 個 I/O 板,其編號為 0 到 17。



網域 A 包括系統板 0 和 2,以及 I/O 板 2。網域 B 包括系統板 1 和 3,以及 I/O 板 1、3 和 4。


圖 2-1 重新配置前的網域 A 與 B


要指定系統板 4 與 I/O 板 0 至網域 A,以及從網域 B 搬移 I/O 板 4 至網域 A,您可以使用 Sun Management Center 軟體的 GUI。或是您可以在每個網域使用 cfgadm(1M)。

1. 在網域 B 中使用以下指令中斷 I/O 板 4 之連線。


# cfgadm -c disconnect -o nopoweroff,unassign IO4

 

2. 在網域 A 中使用下列指令以指定、連接與配置系統板 4 和 I/O 板 0 及 4 到網域 A。


# cfgadm -c configure SB4 IO0 IO4

 

下列的系統配置就是結果。系統板唯一的連線方式已經改變,並非機櫃內系統板的實體佈局有所改變。


圖 2-2 重新配置後的網域 A 與 B