expandarray

請使用 expandarray 指令將新的磁碟機容量新增至現有分散式陣列 MDisk。

語法

讀取語法圖表略過語法圖表 expandarray -totaldrivecount resulting_drive_count -driveclassdrive_class_id-totalrebuildareasresulting_rebuild_area_countmdisk_idmdisk_name

參數

totaldrivecount
(必要)擴充完成之後產生的磁碟機計數。此值必須是 5 至 128 範圍內的整數。
driveclass
(選用)要用於選取新成員磁碟機的磁碟機類別(如 lsdriveclass 指定)。如果您未指定磁碟機類別,則對於分散式陣列,預設磁碟機類別為 lsarray 中所引用的磁碟機類別。
totalrebuildareas
(選用)擴充完成之後產生的重建區域計數。totaldrivecount 中必須包含額外的重建區域值。此值必須是 1 至 4 範圍內 的整數。如果未指定值,則陣列的重建區域計數會保持不變,即使磁碟機總數超出臨界值亦如此。在此情況下,預設陣列建立 行為會導致建立額外的重建區域。
mdisk_id
(選用)陣列 MDisk 的身分。如果未指定 mdisk_name,則為必要。
mdisk_name
(選用)陣列 MDisk 的名稱。如果未指定 mdisk_id,則為必要。

說明

此指令會啟動陣列擴充作業。

重要: -totaldrivecount 值包括新增為重建區域的任何額外磁碟機。
下列清單說明在擴充陣列時要注意的部分項目:
  • 未配置多重擴充且不會將其排入佇列。系統中的作用中擴充數目上限為 4,且儲存區中一次只能有一個作用中擴充。
  • 此指令使用 totaldrivecount/totalrebuildareas 來確保在發生錯誤的情況下輸入現行陣列大小時,此指令不起作用。
  • 如果未指定磁碟機類別,則會使用您正在擴充的陣列的磁碟機類別。如果已指定磁碟機類別,則會驗證該類別,以確保它等於或優於您正在擴充之陣列的磁碟機類別。
  • 陣列必須沒有使用中的重建區域或背景作業在進行中,否則指令會失敗。
  • 可以使用 lsarrayexpansionprogress 指令來監視擴充進度。
  • 無法取消擴充。
  • 在進行擴充移轉時,從擴充 MDisk 配置的使用循序 (seq) 原則的磁區副本會變更為分段式。
  • 在負載超過 50% 的陣列上執行擴充,會影響主機效能及延遲。
如果存在下列任何狀況,則會暫停擴充:
  • 擴充 MDisk 離線。
  • 執行移轉活動期間發生讀取錯誤。
  • 必須(但無法)記錄虛擬媒體錯誤。
  • 在用作擴充移轉目標的 MDisk 上發生空間不足狀況。

呼叫範例

svctask expandarray -totaldrivecount 8 mdisk3                      // Expand mdisk3 to 8 drives from the array's driveclass
svctask expandarray -totaldrivecount 6 -totalrebuildareas 2 32     // Expand mdisk 32 to 6 drives, 2 of which being rebuild areas
svctask expandarray -driveclass 0 -totaldrivecount 16 48           // Expand mdisk 48 to 16 drives from drive class 0

結果輸出: