您可以從備份中還原 VMware Integrated OpenStack 部署。
- 在此程序中建立的暫存組態檔包含純文字格式的 vCenter Server 認證。為安全起見,請在備份完成後刪除此檔案。
- 請勿同時執行多個還原作業。如果還原作業的設定不正確,請等待作業失敗或逾時,然後再試一次。
- 除非目前資料庫已損毀,或者存在其他需要舊版的重要原因,否則應備份目前資料庫並將其用於還原控制平面。使用舊版備份進行還原可能會導致潛在的資料遺失。
必要條件
程序
- 以
root
使用者身分登入 Integrated OpenStack Manager。ssh root@mgmt-server-ip
- 在文字編輯器中,以 YAML 格式建立還原組態檔。
-
如果您想要在現有的控制平面上還原 VMware Integrated OpenStack,請使用下列範本:
--- name: backup-file-name description: restore-description source: kind: contentLibrary contentLibrary: name: content-library-name datastore: control-plane-storage
參數如下所示。
選項 說明 backup-file-name
輸入要還原的備份檔案的名稱。
restore-description
輸入還原工作的說明。
content-library-name
輸入包含備份檔案的內容程式庫的名稱。
control-plane-storage
(選擇性) 輸入要在其上儲存控制平面資訊的資料存放區的名稱。
若要使用 GUI 在現有控制平面上還原部署,您可以執行以下步驟:- 以
admin
使用者身分登入 Integrated OpenStack Manager。 - 在 OpenStack 部署中,按一下部署名稱,然後開啟管理索引標籤。
- 在設定索引標籤上,按一下備份,然後選擇備份,並按一下還原。
- 以
-
如果您想要在新的控制平面上還原您的 VMware Integrated OpenStack,請使用下列範本:
--- cluster: network_info: - networkName: mgmt-network-name type: management static_config: ip_ranges: - mgmt-ip-range-begin, mgmt-ip-range-end netmask: mgmt-subnet-mask gateway: mgmt-gateway-address dns: - mgmt-dns-server - networkName: api-network-name type: api static_config: ip_ranges: - api-ip-range-begin, api-ip-range-end netmask: api-subnet-mask gateway: api-gateway-address dns: - api-dns-server - networkName: trunk-network-name type: dvs_trunk_network static_config: ip_ranges: - trunk-ip-range-begin, trunk-ip-range-end --- datacenter: datacenter-name datastore: datastore-name resourcePool: resource-pool-name count: controller-count size: controller-size --- name: backup-file-name description: restore-description source: kind: contentLibrary contentLibrary: name: content-library-name datastore: control-plane-storage
參數如下所示。
表 1. 管理網路組態 選項 說明 mgmt-network-name
輸入管理網路的名稱。
您還可以使用 GUI 在新的控制平面上還原 OpenStack 部署。如需詳細資訊,請參閱還原 OpenStack 部署。
如果您的管理網路使用靜態 IP 位址而非 DHCP,請輸入下列值。DHCP 網路不需要這些值。
選項 說明 mgmt-ip-range-begin, mgmt-ip-range-end
以小數點十進位格式輸入管理網路上的 IP 位址範圍 (以逗號分隔)。例如,192.0.2.10, 192.0.2.50。
mgmt-subnet-mask
輸入用於管理網路的子網路遮罩。
mgmt-gateway-address
輸入用於管理網路的網路閘道的 IP 位址。
mgmt-dns-server
輸入用於管理網路的一或多個 DNS 伺服器的 IP 位址。在單獨的行中分別輸入每個 IP 位址。例如:
- 192.0.2.1
- 192.0.2.100
表 2. API 存取網路組態 選項 說明 api-network-name
輸入 API 存取網路的名稱。
如果您的 API 存取網路使用靜態 IP 位址而非 DHCP,請輸入下列值。DHCP 網路不需要這些值。
選項 說明 api-ip-range-begin, api-ip-range-end
以小數點十進位格式輸入 API 存取網路上的 IP 位址範圍 (以逗號分隔)。例如,198.51.100.10, 198.51.100.50。
api-subnet-mask
輸入用於 API 存取網路的子網路遮罩。
api-gateway-address
輸入用於 API 存取網路的網路閘道的 IP 位址。
api-dns-server
輸入用於 API 存取網路的一或多個 DNS 伺服器的 IP 位址。在單獨的行中分別輸入每個 IP 位址。例如:
- 198.51.100.1
- 198.51.100.100
如果您的部署使用 VDS 網路,請輸入下列值。NSX 部署不需要這些值。
表 3. 主幹網路組態 選項 說明 trunk-network-name
輸入主幹網路的名稱。
trunk-ip-range-begin, trunk-ip-range-end
以小數點十進位格式輸入主幹網路上的 IP 位址範圍 (以逗號分隔)。例如,169.254.0.1,169.254.0.254。
針對所有部署類型輸入下列資訊。
表 4. 控制平面組態 選項 說明 datacenter-name
輸入要在其中建立 VMware Integrated OpenStack 控制平面的 vSphere 資料中心的名稱。
datastore-name
輸入 VMware Integrated OpenStack 控制平面的資料存放區的名稱。
resource-pool-name
輸入 VMware Integrated OpenStack 控制平面的資源集區的名稱。
controller-count
指定要建立的控制器數目。
controller-size
指定控制器的大小。接受下列值:
- small (4 個 vCPU 和 16 GB 的 RAM)
- medium (8 個 vCPU 和 32 GB 的 RAM)
- large (12 個 vCPU 和 32 GB 的 RAM)
表 5. 備份組態 選項 說明 backup-file-name
輸入要還原的備份檔案的名稱。
restore-description
輸入還原工作的說明。
content-library-name
輸入包含備份檔案的內容程式庫的名稱。
如果您的內容程式庫和 VMware Integrated OpenStack 位於單獨的 vCenter Server 執行個體中,請輸入包含內容程式庫的 vCenter Server 執行個體的組態。如果您的內容程式庫和控制平面位於相同的 vCenter Server 執行個體中,則不需要下列值。
表 6. 內容程式庫組態 選項 說明 control-plane-storage
(選擇性) 輸入要在其上儲存控制平面資訊的資料存放區的名稱。
-
- 指定用於還原 VMware Integrated OpenStack 部署的 vCenter Server。
viocli create vcenter --vc_hostname <host> --vc_password <password> --vc_username <user>
或者,使用 Kubernetes 命令列公用程式的別名從部署中取得 vCenter Server。osctl get vcenter
- 使用組態檔還原您的部署,並指定要還原部署的目的地 vCenter Server。
viocli restore deployment -f <configuration-file> --destination-vcenter=<vcenter-name> [--skip-control-plane] [--content-vcenter=<vcenter-name>]
如果已設定 --skip-control-plane 旗標,請將包含要還原之備份檔案的 vCenter Server 包括在內,以還原您的部署。
viocli restore deployment -f <configuration-file> --destination-vcenter=<vcenter-name> --skip-control-plane --content-vcenter=<vcenter-name>
如果還原成功,則顯示以下訊息: 下載已完成、 準備執行和 還原已成功。
結果
OpenStack 部署會還原至備份的狀態。
- 若要還原憑證,則必須在還原後對憑證進行重新簽署並重新套用。否則,必須執行以下步驟:
- 儲存原始部署中的憑證密碼。
osctl get secret certs -oyaml > certs.yaml
- 還原後,在新的 VMware Integrated OpenStack 部署中,將憑證密碼中的 private_key 和 vio_certificate 值取代為上一步中的資料。
- 使用
viocli
停止和啟動服務。
- 儲存原始部署中的憑證密碼。
-
如需還原授權的相關資訊,請參閱〈指派 VMware Integrated OpenStack 授權金鑰〉。