您可以將 vCenter Server 從一個 vSphere 網域移至另一個 vSphere 網域。標記和授權等服務會保留並移轉至新的網域。

支援下列使用案例:

在沒有複寫合作夥伴的情況下,將單一 vCenter Server 節點重新指向現有網域

您可以在沒有複寫合作夥伴的情況下,將單一 vCenter Server 從一個 Single Sign-On 網域重新指向另一個現有 Single Sign-On 網域。每個 Single Sign-On 網域只包含一個 vCenter Server

如需將單一 vCenter Server 從一個網域重新指向另一個現有網域的範例,請參閱 將單一 vCenter Server 從一個網域重新指向另一個現有網域。這是建立增強型連結模式節點的多種方法之一。在此情況下,沒有任何複寫。
圖 1. 將單一 vCenter Server 從一個網域重新指向另一個現有網域
從一個網域重新指向現有網域之前和之後的 vCenter Server 節點。

必要條件

  • vCenter Server 6.7 Update 1 及更新版本支援重新指向。
  • 您必須重新指向相同版本的 vCenter Server,以及具有相同版本和組建編號的節點。
  • 若要確保不遺失任何資料,請為每個節點建立以檔案為基礎的備份,然後繼續重新指向 vCenter Server

程序

  1. 在開始重新指向程序之前,請確保兩個 vCenter Server 節點均已開啟電源。
  2. (選擇性) 執行預先檢查模式命令。預先檢查模式會從 vCenter Server 擷取標記 (標籤和類別) 和授權 (角色和權限) 資料。預先檢查不會移轉任何資料,但會檢查來源和目的地 vCenter Server 之間的衝突。例如,使用下列 CLI 執行預先檢查:
    cmsso-util domain-repoint -m pre-check --src-emb-admin Administrator --replication-partner-fqdn FQDN_of_destination_node --replication-partner-admin PSC_Admin_of_destination_node --dest-domain-name destination_PSC_domain
    備註: 如果複寫合作夥伴不存在 (重新指向新建立的網域),則不需要預先檢查。
    如需 cmsso-util domain-repoint 命令的引數定義,請參閱 網域重新指向命令的語法
    預先檢查會將衝突寫入 /storage/domain-data 目錄中。
  3. (選擇性) 檢閱衝突,然後套用適用於所有衝突的解決方案或針對每個衝突套用不同的解決方案。
    衝突解決方案如下所述:
    • 複製:針對目標網域中的資料建立複本。
    • 略過:略過複製目標網域中的資料。
    • 合併:合併衝突而不建立重複項目。
    備註: 標籤和授權衝突的預設解決方案模式為「複製」,除非在預先檢查期間產生的衝突檔案中已覆寫。
  4. 執行 execute 命令。在執行模式下,會讀取預先檢查模式期間產生的資料並將其匯入目標節點。然後,vCenter Server 會重新指向目標網域。例如,在沒有複寫合作夥伴的情況下重新指向時,執行具有下列內容的 execute 命令:
    cmsso-util domain-repoint -m execute --src-emb-admin Administrator --replication-partner-fqdn FQDN_of_destination_node --replication-partner-admin PSC_Admin_of_destination_node --dest-domain-name destination_PSC_domain
    如需 cmsso-util domain-repoint 命令的引數定義,請參閱 網域重新指向命令的語法

使用複寫合作夥伴將 vCenter Server 節點重新指向現有網域

您可以使用複寫合作夥伴,將 vCenter Server 從一個 Single Sign-On 網域重新指向另一個現有網域。

如需重新指向現有網域的範例,請參閱 將 vCenter Server 從一個網域重新指向另一個現有網域。在此情況下,具有複寫。
圖 2. 將 vCenter Server 從一個網域重新指向另一個現有網域
從一個網域重新指向具有複寫合作夥伴的現有網域之前和之後的 vCenter Server 節點。

必要條件

  • vCenter Server 6.7 Update 1 及更新版本支援重新指向。
  • 您必須重新指向相同版本的 vCenter Server,以及具有相同版本和組建編號的節點。
  • 若要確保不遺失任何資料,請為每個節點建立以檔案為基礎的備份,然後繼續重新指向 vCenter Server

程序

  1. 關閉正在重新指向 (移至不同網域) 的節點 (例如,節點 C)。
  2. 解除委任正在重新指向的 vCenter Server 節點。例如,若要解除委任節點 C,請登入節點 B (位於原始網域),並執行下列命令:
    cmsso-util unregister --node-pnid Node_C_FQDN --username Node_B_sso_administrator@sso_domain.com --passwd Node_B_sso_adminuser_password
    在取消登錄節點 C 之後,會重新啟動服務。從節點 B 以及與原始網域上的節點 C 連結的任何其他節點中刪除節點 C 的參考。
  3. 開啟節點 C 的電源,以開始重新指向程序。
  4. (選擇性) 執行預先檢查模式命令。預先檢查模式會從 vCenter Server 擷取標記 (標籤和類別) 和授權 (角色和權限) 資料。預先檢查不會移轉任何資料,但會檢查來源和目的地 vCenter Server 之間的衝突。例如,使用下列 CLI 執行預先檢查:
    cmsso-util domain-repoint -m pre-check --src-emb-admin Administrator --replication-partner-fqdn FQDN_of_destination_node --replication-partner-admin PSC_Admin_of_destination_node --dest-domain-name destination_PSC_domain
    備註: 如果複寫合作夥伴不存在 (重新指向新建立的網域),則不需要預先檢查。
    如需 cmsso-util domain-repoint 命令的引數定義,請參閱 網域重新指向命令的語法
    預先檢查會將衝突寫入 /storage/domain-data 目錄中。
  5. (選擇性) 檢查衝突,然後套用適用於所有衝突的解決方案或針對每個衝突套用不同的解決方案。
    衝突解決方案如下所述:
    • 複製:針對目標網域中的資料建立複本。
    • 略過:略過複製目標網域中的資料。
    • 合併:合併衝突而不建立重複項目。
    備註: 標籤和授權衝突的預設解決方案模式為「複製」,除非在預先檢查期間產生的衝突檔案中已覆寫。
  6. 執行此執行命令。在執行模式下,會讀取預先檢查模式期間產生的資料並將其匯入目標節點。然後,vCenter Server 會重新指向目標網域。例如,透過下列內容執行此執行命令:
    cmsso-util domain-repoint -m execute --src-emb-admin Administrator --replication-partner-fqdn FQDN _of_destination_node --replication-partner-admin destination_node_PSC_Admin_user_name --dest-domain-name destination_PSC_domain
    如需 cmsso-util domain-repoint 命令的引數定義,請參閱 網域重新指向命令的語法

vCenter Server 節點重新指向新網域

您可以將 vCenter Server 從現有網域重新指向新建立的網域。

如需重新指向新網域的範例,請參閱 將 vCenter Server 從一個網域重新指向新網域。在此情況下,沒有任何複寫合作夥伴。
圖 3. 將 vCenter Server 從一個網域重新指向新網域
從一個網域重新指向沒有複寫合作夥伴的新網域之前和之後的 vCenter Server 節點。

必要條件

  • vCenter Server 6.7 Update 1 及更新版本支援重新指向。
  • 您必須重新指向相同版本的 vCenter Server,以及具有相同版本和組建編號的節點。
  • 為確保不發生資料遺失的情況,請在每個節點的關閉電源狀態下進行以檔案為基礎的備份並建立快照,然後再繼續對 vCenter Server 執行重新指向。

程序

  1. 關閉正在重新指向 (移至不同網域) 的節點 (例如,節點 C)。
    備註:

    如果 vCenter Server 屬於 vCenter Server HA 叢集,請先移除 vCenter Server HA 組態,然後再繼續進行網域重新指向。如需詳細資訊,請參閱《vSphere 可用性》

  2. 解除委任正在重新指向的 vCenter Server 節點。例如,若要解除委任節點 C,請登入節點 B (位於原始網域),並執行下列命令:
    cmsso-util unregister --node-pnid Node_C_FQDN --username Node_B_sso_administrator@sso_domain.com --passwd Node_B_sso_adminuser_password
    在取消登錄節點 C 之後,會重新啟動服務。從節點 B 以及與原始網域上的節點 C 連結的任何其他節點中刪除節點 C 的參考。
  3. 開啟節點 C 的電源,以開始重新指向程序。
  4. 執行此執行命令。在執行模式下,會讀取預先檢查模式期間產生的資料並將其匯入目標節點。然後,vCenter Server 會重新指向目標網域。例如,如果在沒有複寫合作夥伴的情況下重新指向 (重新指向新網域),請透過下列內容執行此執行命令:
    cmsso-util domain-repoint -m execute --src-emb-admin Administrator  --dest-domain-name destination_PSC_domain
    如需 cmsso-util domain-repoint 命令的引數定義,請參閱 網域重新指向命令的語法

網域重新指向命令的語法

您可以使用命令引數設定網域重新指向命令的執行參數。

cmsso-util domain-repoint CLI 會將 vCenter Server 從一個網域重新指向另一個網域。

您可將以空格分隔的引數清單新增至 CLI 重新指向命令

使用下列命令將 vCenter Server 重新指向另一個 vCenter Server 節點:
cmsso-util domain-repoint -m execute --src-emb-admin Administrator --replication-partner-fqdn FQDN _of_destination_node --replication-partner-admin destination_node_PSC_Admin_user_name --dest-domain-name destination_PSC_domain
引數 說明
-m, --mode mode 可以是 pre-checkexecutepre-check 引數在預先檢查模式下執行命令。execute 引數在執行模式下執行命令。
-spa, --src-psc-admin 來源 vCenter Server 的 SSO 管理員使用者名稱。不附加 @domain
-dpf, --dest-psc-fqdn 要重新指向的 vCenter Server 的 FQDN。
-dpa, --dest-psc-admin 目的地 vCenter Server 的 SSO 管理員使用者名稱。不附加 @domain
-ddn, --dest-domain-name 目的地 vCenter Server 的 SSO 網域名稱。
-dpr, --dest-psc-rhttps (可選) 目的地 vCenter Server 的 HTTPS 連接埠。如果未設定,會使用預設值 443
-dvf, --dest-vc-fqdn 指向目的地 vCenter ServervCenter Server 的 FQDN。vCenter Server 用來檢查預先檢查模式中下是否有元件資料衝突。如果未提供,會略過衝突檢查,並且針對在匯入程序期間找到的任何衝突套用預設解決方案 (COPY)。
備註: 僅當目的地網域沒有 vCenter Server 時,此引數才是可選的。如果 vCenter Server 存在於目的地網域中,此引數是必要的。
-sea, --src-emb-admin 含內嵌式 vCenter ServervCenter Server 的管理員。請勿將 @domain 附加到管理員識別碼。
-rpf, --replication-partner-fqdn (可選) 已複寫 vCenter Server 的複寫合作夥伴節點的 FQDN。
-rpr, --replication-partner-rhttps (可選) 複寫節點的 HTTPS 連接埠。如果未設定,預設值為 443
-rpa, --replication-partner-admin (可選) 複寫合作夥伴 vCenter Server 的 SSO 管理員使用者名稱。
-dvr, --dest-vc-rhttps (可選) 指向目的地 vCenter ServervCenter Server 的 HTTPS 連接埠。如果未設定,會使用預設值 443
--ignore-snapshot (可選) 忽略快照警告。
--no-check-certs (可選) 忽略憑證驗證。
--debug (可選) 擷取命令執行詳細資料。
-h, --help (可選) 顯示 cmsso-util domain repoint 命令的說明訊息。

瞭解標記和授權衝突

當您在預先檢查模式下執行網域重新指向命令時,將從 vCenter Server 匯出、檢查資料,且會將衝突寫入檔案。

會將下列資料匯出至 /storage/domain-data/ProgramData/VMWare/vCenterServerdata/domain-data 資料夾:

  • All_Privileges.json
  • All_Roles.json
  • All_TagCategories.json
  • All_Tags.json

這些檔案包含來自執行此命令所在之 vCenter Server 的所有資料 (授權與標記)。

如果使用 -dvf --dest-vc-fqdn 選項提供次要 vCenter Server,則任何衝突也會匯出到相同的資料夾:

  • Conflicts_Roles.json
  • Conflicts_TagCategories.json
  • Conflicts_Tags.json

以下是範例衝突檔案:

<---- Sample Conflict file code block --->
	 {
  "global" : {
    "resolution" : "MERGE|SKIP|COPY",
    "description" : "Default resolution option used to resolve Role Conflicts is COPY. The 
conflicts list describes the differences between Role entities on source and target vCenter Server. If 
the source information represents an empty JSON array, it simply means that all the entity 
attributes from source and target are identical. If the source lists few entries, it means 
that only these entity attributes are missing from the target. If the target lists few entries, 
it means that only these entity attributes are missing from the source. Though a global resolution 
can be set, it can also be overridden at each conflict level by providing individual resolution 
mode."
  },
  "conflicts-count" : 1,
  "conflicts-list" : {
    "NoCryptoAdmin" : {
      "source" : {
        "privileges" : "[]"
      },
      "target" : {
        "privileges" : "[Group-1.SamplePriv-1, Group-1.SamplePriv-4, Group-2.SamplePriv-10, 
Group-2.SamplePriv-3, Group-2.SamplePriv-7, Group-3.SamplePriv-2, Group-3.SamplePriv-9]"
      },
      "resolution" : ""
    }
}
<----- End of code block --->

範例衝突檔案的部分如下:

  • description.提供如何閱讀並瞭解各自衝突檔案的詳細資料。
  • sourcetarget。僅列出來源和目標 vCenter Server 物件之間差異的 JSON 物件。
  • resolution.使用者會提供一個有效解決方案。有效解決方案為 MERGECOPYSKIP

若要指定處理衝突的解決方案,您可以在 "global": "resolution" = "MERGE|SKIP|COPY" 區段中提供所有衝突的預設解決方案選項。如果未針對 resolution 提供有效的全域解決方案類型或將其保留為未編輯,系統會使用 COPY 做為預設解決方案選項。

您也可以透過在每個衝突層級編輯 resolution 內容,來覆寫全域解決方案選項,從而為每個衝突提供有效的解決方案選項。

衝突類型中列出了衝突類型。

表 1. 衝突類型
衝突 用於比較類別物件的內容 衝突類型 衝突內容 衝突解決方案選項
角色衝突
  • name:類別的名稱。
  • privilegeId:角色的權限清單。

匯入角色時,若具有相同名稱但具有不同權限的角色存在於目標 vCenter Server 中,則會發生 RoleName 衝突。

針對 RoleName 衝突類型可能衝突的內容可以是 Privileges
  • COPY.會在目標 vCenter Server 中建立衝突角色的複本,角色名稱後面會附加 –-copy。建立的新角色具有新角色識別碼,且具有同一組權限識別碼。會在 VPX_ACCESS 資料表中更新新角色識別碼。新角色識別碼適用於角色名稱衝突和角色識別碼衝突。
    備註:
    可解決角色衝突的預設解決方案選項是 COPY
  • MERGE。會依下列順序決定 MERGE 選項:
    1. 如果來源 vCenter Server 擁有一個角色,其與目標 vCenter Server 中的某個角色具有相同的名稱和權限清單,但是角色識別碼不同,將使用目標 vCenter Server 中的角色識別碼,並在 VPX_ACCESS 資料表中更新。
    2. 如果來源 vCenter Server 擁有一個角色,其與目標 vCenter Server 中的某個角色具有相同的名稱,但具有不同的權限清單,則會合併兩個角色的權限清單。
  • SKIP.不執行任何動作。會略過特定角色。

標記類別衝突:在 vCenter Server 中,類別名稱必須是唯一的。
  • name:類別的名稱。
  • cardinality:類別的基數,單一或多個。
  • associableEntityType:可與此類別的標記相關聯的 vCenter Server 物件清單。All值指示所有 vCenter Server 物件。
匯入標記類別時,僅可看到一種類型的衝突,即 CategoryName 衝突。發生此衝突表示目標 vCenter Server 中存在名稱相同但內容不同 (cardinalityassociableEntityType) 的類別。 針對衝突類型 CategoryName 可能衝突的內容可以是至少兩種類型之一:CardinalityAssociableTypes
  • COPY.會在目標 vCenter Server 中建立衝突類別的複本,類別名稱後面會附加 –-copy。會在來源 vCenter Server 中建立具有相同內容名稱的新類別。將在新建立的 CategoryCopy 下匯入已存在於此類別下的所有標記。
    備註:
    用於解決 CategoryName 衝突的預設解決方案選項是 COPY
  • MERGE.衝突內容會與 SSO 中已有的類別合併。將按如下所示合併內容:
    1. Description.使用已存在的說明。
    2. Cardinality.基數無法縮小。如果存在基數衝突,則將基數設定為 multiple。無法將其減小為單一。
    3. AssociableTypes。如果 associableEntityType 值為 Null,則將其設定為 Null。否則,會合併 Objects 類型。
  • SKIP.不執行任何動作。會將所有標記匯入到已存在的類別下。

標記衝突:tag 物件永遠屬於 category 物件。標記名稱必須僅在一個類別中是唯一的。
  • name
  • description
匯入標記時,僅可看到一種類型的衝突:TagName 衝突。發生此衝突表示目標 vCenter Server 中的同一類別下存在名稱相同但內容不同的標記。 針對衝突類型 TagName 可能衝突的內容可以是 Description
  • COPY.會在目標 vCenter Server 中建立衝突標記的複本,標記名稱後面會附加 –-copy。如有必要,請使用新建立標記的 MoRef (內部標記識別碼),然後更新標記關聯。
    備註:
    用於解決 CategoryName 衝突的預設解決方案選項是 COPY
  • MERGE。保留現有說明。如有必要,請使用 MoRef (內部標記識別碼),然後更新一或多個標記關聯。

  • SKIP.不執行任何動作。不會建立此標記。清理任何標記關聯。

vCenter Server 網域重新指向授權注意事項

重新指向網域時,會將授權金鑰複製到新的網域。複製授權金鑰可確保重新指向後保留所有資產的有效授權。

vCenter Server針對每個網域追蹤授權使用率。如果將某個金鑰用於多個網域,您必須確保該金鑰的彙總使用率不超過其容量。若要簡化授權管理,請移除複製到第二個網域的每個授權,然後將新的授權指派給資產。

請考慮下列兩個案例:
  • 原始網域中在重新指向後不再使用的授權金鑰 (即,已指派給資產)。
  • 多個網域中正在使用的授權金鑰 (即,已指派給資產)。

網域中未使用的授權金鑰

如果在完成重新指向後授權金鑰顯示在多個網域中,但在某些網域中未使用,您可以從任何網域移除未使用的授權金鑰。如需如何在 vCenter Server 中移除這些授權的相關指示,請參閱 vCenter Server 和主機管理中的〈移除授權〉。

多個網域中正在使用的授權金鑰

如果在完成重新指向後授權金鑰已在多個網域中使用 (即,已指派給資產),若要從某個網域之外的所有其他網域中移除授權金鑰,則必須先將不同的授權金鑰指派給將從中移除授權金鑰之網域中的每個資產。兩種常見方法:
  • 如果您有其他授權金鑰具有足夠的未使用容量可用,可以使用這些其他金鑰來取代要移除的授權金鑰。請參閱 vCenter Server 和主機管理中的〈將授權指派給多個資產〉以指派 vCenter Server 中的授權。
  • 您可以將用於多個網域的授權金鑰分為單獨的授權金鑰,每個網域對應一個授權金鑰。若要分割授權金鑰,請參閱 VMware 知識庫文章,網址為 http://kb.vmware.com/kb/2006972。若要確定原始金鑰所分割的各個授權金鑰中將包含的容量,請參閱 vCenter Server 和主機管理中的〈檢視授權資訊〉,以檢視 vCenter Server 中針對各個網域的授權金鑰使用率。

    然後,每個產生的授權金鑰可新增到不同的網域,並在 vCenter Server 中指派給先前已獲得原始授權金鑰授權的資產。請參閱 vCenter Server 和主機管理中的〈建立新授權〉以建立授權,以及 vCenter Server 和主機管理中的〈將授權指派給多個資產〉來將授權指派給多個資產。

    將不同的授權指派給所有資產後,可以使用 vCenter Server 從所有網域移除已不再有效的原始授權金鑰。請參閱 vCenter Server 和主機管理中的〈移除授權〉。