目錄

簡介

必要條件

需求

採用元件

背景資訊

Ultra自動化和監控引擎(UAME)

彈性服務控制器(ESC)

問題

恢復虛擬機器的過程

步驟1.從UAME檢查VM狀態。

步驟2.從ESC恢復VM。

步驟3.檢查恢復是否成功。

成功的恢復

恢復失敗

檢查ESC的恢復策略

步驟4.重新部署虛擬機器。

從UAME重新部署虛擬機器

檢查重新部署日誌

簡介

本文檔介紹有關如何恢復CNAT VM、CUPS VM和5G-UPF VM的高級資訊。

必要條件

需求

思科建議您瞭解以下主題：

- Cisco Ultra虛擬封包核心解決方案元件

- Ultra自動化和監控引擎(UAME)

- 彈性服務控制器(ESC)

- Openstack

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- USP 6.9.0

- UAME

- ESC:4.5.0(112

- StarOS:21.15.28(74825)

- 雲端 — Openstack 13（皇后區）

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

背景資訊

Ultra自動化和監控引擎(UAME)

UAME是一種新的Ultra自動化服務(UAS)軟體模組，它用於：

- 支援4G或5G虛擬化網路功能(VNF)和5G雲本地網路功能(CNF)的整合部署。

- 減少USP和UAS通常所需的虛擬機器(VM)數量，更換UEM、AutoIT、AutoDeploy和AutoVNF元件。

UAME為以下各項提供部署協調：

- 4GVNF :

- 基於CUPS的VNF:UAME與虛擬網路功能管理器(VNFM)一起部署VPC基於SI的控制平面(CP)和使用者平面(UP)VNF，以支援控制和使用者平面分離(CUPS)架構。

- 非CUPS型VNF:UAME向後相容，與VNFM一起為非CUPS 4G網關（基於VPC-DI）和4G策略和計費規則功能(PCRF)提供部署支援。

- 5G NF:

- 基於VNF的NF:UAME與VNFM一起部署基於VPC-SI的網路功能(NF)。

- 基於雲原生的NF:UAME與VNFM互動，以部署超雲核心使用者微服務基礎設施(SMI)。 然後SMI與VNFM一起在基於VM的Kubernetes（也稱為K8s）群集中部署NF。

彈性服務控制器(ESC)

ESC是本文中提到的VNFM，是目前唯一支援的平台。

問題

託管雲原生5G SMI虛擬機器的VM在ESC中處於「錯誤」狀態。

crucs502-cnat-cn_oam1_0_d7f90c1e-4401-4be9-87f6-f39ecf04ea3a   VM_ERROR_STATE

crucs502-cnat-cn_master_0_05487525-c86f-47e1-a07e-fd33720d114f VM_ERROR_STATE

crucs502-4g-CRPC_CRPCF5_0_ee07bf60-a8f8-405f-9a0d-cfa7363e32e7 VM_ERROR_STATE

恢復虛擬機器的過程

檢查UAME和ESC中的VM狀態。從ESC啟動恢復過程。如果ESC無法恢復VM，請繼續從UAME重新部署。

步驟1.從UAME檢查VM狀態。

登入到UAME，導航到confd cli，然後檢查狀態，如此處所示。

ubuntu@crucs502-uame-1:~$ /opt/cisco/usp/uas/confd-6.3.8/bin/confd_cli -u admin -C

Enter Password for 'admin':

elcome to the ConfD CLI

admin connected from 10.249.80.137 using ssh on crucs502-uame-1

crucs502-uame-1#

crucs502-uame-1#show vnfr state

VNFR ID STATE

---------------------------------

crucs502-4g-CRPCF504 alive

crucs502-4g-CRPCF505 alive

crucs502-4g-CRPCF506 alive

crucs502-4g-CRPCF507 error

crucs502-4g-CRPCF604 alive

crucs502-cnat-cnat error

步驟2.從ESC恢復VM。

嘗試手動從ESC恢復。

擾流器 （突出顯示讀取）

附註：完成恢復可能需要長達900秒（15分鐘）。

啟動時間300

recovery_wait_time 600

附註：完成恢復可能需要長達900秒（15分鐘）。bootup_time 300recovery_wait_time 600

登入到主ESC，檢查運行狀況，然後執行恢復命令，如下所示。

Last login: Wed May 13 02:07:42 2020 from 10.x.x.x

####################################################################

# ESC on crucs502-esc-vnf-esc-core-esc-1 is in MASTER state.

####################################################################

[admin@crucs502-esc-vnf-esc-core-esc-1 ~]$ health.sh

============== ESC HA (MASTER) with DRBD =================

vimmanager (pgid 14643) is running

monitor (pgid 14712) is running

mona (pgid 14768) is running

drbd (pgid 0) is master

snmp is disabled at startup

etsi is disabled at startup

pgsql (pgid 15119) is running

keepalived (pgid 14070) is running

portal is disabled at startup

confd (pgid 15016) is running

filesystem (pgid 0) is running

escmanager (pgid 15254) is running

=======================================

ESC HEALTH PASSED

/opt/cisco/esc/esc-confd/esc-cli/esc_nc_cli recovery-vm-action DO crucs502-cnat-cn_oam1_0_d7f90c1e-4401-4be9-87f6-f39ecf04ea3a

tail -50f /var/log/esc/yangesc.log

2020-05-05 02:29:01.534 WARN ===== SEND NOTIFICATION STARTS =====

2020-05-05 02:29:01.534 WARN Type: VM_RECOVERY_COMPLETE

2020-05-05 02:29:01.534 WARN Status: SUCCESS

2020-05-05 02:29:01.534 WARN Status Code: 200

2020-05-05 02:29:01.534 WARN Status Msg: Recovery: Successfully recovered VM [crucs502-cnat-cn_oam1_0_d7f90c1e-4401-4be9-87f6-f39ecf04ea3a].

2020-05-05 02:29:01.534 WARN Tenant: core

2020-05-05 02:29:01.534 WARN Deployment name: crucs502-cnat-cnat-core

2020-05-05 02:29:01.534 WARN VM group name: oam1

<output trimmed>

/opt/cisco/esc/esc-confd/esc-cli/esc_nc_cli recovery-vm-action DO crucs502-cnat-cn_master_0_05487525-c86f-47e1-a07e-fd33720d114f

tail -50f /var/log/esc/yangesc.log

2020-05-05 02:12:51.512 WARN ===== SEND NOTIFICATION STARTS =====

2020-05-05 02:12:51.512 WARN Type: VM_RECOVERY_COMPLETE

2020-05-05 02:12:51.512 WARN Status: SUCCESS

2020-05-05 02:12:51.512 WARN Status Code: 200

2020-05-05 02:12:51.512 WARN Status Msg: Recovery: Successfully recovered VM [crucs502-cnat-cn_master_0_05487525-c86f-47e1-a07e-fd33720d114f].

2020-05-05 02:12:51.512 WARN Tenant: core

2020-05-05 02:12:51.512 WARN Deployment name: crucs502-cnat-cnat-core

<output trimmed>

步驟3.檢查恢復是否成功。

檢查yangesc日誌(tail -50f /var/log/esc/yangesc.log)，然後查詢Status和Recovery，如上所示。如果成功，請導覽至confd cli並進行驗證。

[admin@crucs502-esc-vnf-esc-core-esc-1 ~]$ /opt/cisco/esc/confd/bin/confd_cli -u admin -C

admin connected from 10.249.80.137 using ssh on crucs502-esc-vnf-esc-core-esc-1

crucs502-esc-vnf-esc-core-esc-1# show esc_datamodel opdata tenants tenant | select deployments state_machine

NAME DEPLOYMENT NAME STATE VM NAME STATE

-------------------------------------------------------------------------------------------------------------------------------------------

<trucated output>

crucs502-cnat-cn_etcd2_0_7263c87c-ee62-4b81-8e1e-a0f5c463a5b5 VM_ALIVE_STATE

crucs502-cnat-cn_etcd3_0_512ef3c0-96a2-4a10-83b0-4c7d13805856 VM_ALIVE_STATE

crucs502-cnat-cn_master_0_05487525-c86f-47e1-a07e-fd33720d114f VM_ALIVE_STATE

crucs502-cnat-cn_master_0_8cf66daa-9dfe-4c7e-817e-36624f9c98c2 VM_ALIVE_STATE

crucs502-cnat-cn_master_0_dff4ad36-7982-4131-a737-ccb6c8eae348 VM_ALIVE_STATE

crucs502-cnat-cn_oam1_0_d7f90c1e-4401-4be9-87f6-f39ecf04ea3a VM_ALIVE_STATE

成功的恢復

When ESC shows VM_ALIVE_STATE, verify the status in UAME

crucs502-uame-1#show vnfr state

VNFR ID STATE

---------------------------------

crucs502-4g-CRPCF504 alive

crucs502-4g-CRPCF505 alive

crucs502-4g-CRPCF506 alive

crucs502-4g-CRPCF507 alive

crucs502-4g-CRPCF604 alive

crucs502-4g-CRPCF605 alive

crucs502-4g-CRPCF606 alive

crucs502-4g-CRPCF607 alive

crucs502-4g-CRPGW502 alive

crucs502-4g-CRPGW503 alive

crucs502-4g-CRPGW608 alive

crucs502-4g-CRPGW609 alive

crucs502-4g-CRPGW610 alive

crucs502-4g-CRPGW611 alive

crucs502-4g-CRPGW612 alive

crucs502-4g-CRPGW613 alive

crucs502-4g-CRPGW614 alive

crucs502-4g-CRPGW615 alive

crucs502-4g-CRSGW606 alive

crucs502-4g-CRSGW607 alive

crucs502-4g-CRSGW608 alive

crucs502-4g-CRSGW609 alive

crucs502-4g-CRSGW610 alive

crucs502-4g-CRSGW611 alive

crucs502-5g-upf-CRUPF014 alive

crucs502-5g-upf-CRUPF015 alive

crucs502-5g-upf-CRUPF016 alive

crucs502-5g-upf-CRUPF017 alive

crucs502-5g-upf-CRUPF018 alive

crucs502-5g-upf-CRUPF019 alive

crucs502-5g-upf-CRUPF020 alive

crucs502-5g-upf-CRUPF021 alive

crucs502-5g-upf-CRUPF022 alive

crucs502-5g-upf-CRUPF023 alive

crucs502-5g-upf-CRUPF024 alive

crucs502-5g-upf-CRUPF025 alive

crucs502-5g-upf-CRUPF026 alive

crucs502-5g-upf-CRUPF027 alive

crucs502-cnat-cnat alive

crucs502-cnat-smi-cm alive

crucs502-esc-vnf-esc alive

verify the same in openstack (source the correct overcloud rc file)

(crucs502) [stack@crucs502-ospd ~]$ nova list --fields name,status,host |egrep "CRPCF507|cnat"

<truncated output>

| 3eb43fe7-9f41-42d8-afe4-80f6fd62c385 | crucs502-4g-CRPCF507-core-CRPCF5071 | ACTIVE | crucs502-compute-11.localdomain |

| cc678283-2967-4404-a714-e4dd78000e82 | crucs502-cnat-cnat-core-etcd1 | ACTIVE | crucs502-osd-compute-0.localdomain |

| 711d6fcd-b816-49d4-a702-e993765757b0 | crucs502-cnat-cnat-core-master3 | ACTIVE | crucs502-osd-compute-3.localdomain |

| 46f64bde-a8db-48f2-bf3d-fe3b01295f2f | crucs502-cnat-cnat-core-oam1 | ACTIVE | crucs502-osd-compute-3.localdomain |

| f470ba3d-813e-434b-aac8-78bc646fda22 | crucs502-cnat-cnat-core-oam2 | ACTIVE | crucs502-osd-compute-2.localdomain |

恢復失敗

此示例顯示從ESC進行恢復失敗的情況。在這種情況下，會從UAME重新部署VM。

/opt/cisco/esc/esc-confd/esc-cli/esc_nc_cli recovery-vm-action DO crucs502-4g-CRPC_CRPCF5_0_ee07bf60-a8f8-405f-9a0d-cfa7363e32e7

此輸出顯示yangesc.log中的失敗消息

tail -50f /var/log/esc/yangesc.log

2020-05-05 02:57:21.143 WARN ===== SEND NOTIFICATION STARTS =====

2020-05-05 02:57:21.143 WARN Type: VM_RECOVERY_INIT

2020-05-05 02:57:21.143 WARN Status: SUCCESS

2020-05-05 02:57:21.143 WARN Status Code: 200

2020-05-05 02:57:21.143 WARN Status Msg: Recovery event for VM Generated ID [crucs502-4g-CRPC_CRPCF5_0_ee07bf60-a8f8-405f-9a0d-cfa7363e32e7] triggered.

2020-05-05 02:57:21.143 WARN Tenant: core

2020-05-05 02:57:21.143 WARN Deployment name: crucs502-4g-CRPCF507-core

2020-05-05 02:57:21.143 WARN VM group name: CRPCF5071

<output trimmed>

2020-05-05 02:57:21.144 WARN ===== SEND NOTIFICATION ENDS =====

2020-05-05 03:09:21.655 WARN

2020-05-05 03:09:21.655 WARN ===== SEND NOTIFICATION STARTS =====

2020-05-05 03:09:21.655 WARN Type: VM_RECOVERY_REBOOT

2020-05-05 03:09:21.655 WARN Status: SUCCESS

2020-05-05 03:09:21.655 WARN Status Code: 200

2020-05-05 03:09:21.655 WARN Status Msg: VM Generated ID [crucs502-4g-CRPC_CRPCF5_0_ee07bf60-a8f8-405f-9a0d-cfa7363e32e7] is rebooted.

2020-05-05 03:09:21.655 WARN Tenant: core

2020-05-05 03:09:21.655 WARN Deployment name: crucs502-4g-CRPCF507-core

2020-05-05 03:09:21.655 WARN VM group name: CRPCF5071

<output trimmed>

2020-05-05 03:09:21.656 WARN ===== SEND NOTIFICATION ENDS =====

2020-05-05 03:14:22.079 WARN

2020-05-05 03:14:22.079 WARN ===== SEND NOTIFICATION STARTS =====

2020-05-05 03:14:22.079 WARN Type: VM_RECOVERY_COMPLETE

2020-05-05 03:14:22.079 WARN Status: FAILURE

2020-05-05 03:14:22.079 WARN Status Code: 500

2020-05-05 03:14:22.079 WARN Status Msg: Recovery: Recovery completed with errors for VM: [crucs502-4g-CRPC_CRPCF5_0_ee07bf60-a8f8-405f-9a0d-cfa7363e32e7]

2020-05-05 03:14:22.079 WARN Tenant: core

2020-05-05 03:14:22.079 WARN Deployment name: crucs502-4g-CRPCF507-core

2020-05-05 03:14:22.079 WARN VM group name: CRPCF5071

<output trimmed>

檢查ESC的恢復策略

在ESC中，恢複方法僅重新啟動。這顯示重新啟動後無法恢復VM，需要重新部署。

crucs502-esc-vnf-esc-core-esc-1# show running-config | include recovery_policy

recovery_policy recovery_type AUTO

recovery_policy action_on_recovery REBOOT_ONLY

recovery_policy max_retries 1

重新確認UAME中的VM狀態

擾流器 （突出顯示讀取）

重要附註：  重新部署隨day0配置提供。需要單獨載入Day1配置。

重要附註：  重新部署隨day0配置提供。需要單獨載入Day1配置。

ubuntu@crucs502-uame-1:~$ /opt/cisco/usp/uas/confd-6.3.8/bin/confd_cli -u admin -C

Enter Password for 'admin':

elcome to the ConfD CLI

admin connected from 10.249.80.137 using ssh on crucs502-uame-1

crucs502-uame-1#

crucs502-uame-1#

crucs502-uame-1#show vnfr state

VNFR ID STATE

---------------------------------

crucs502-4g-CRPCF504 alive

crucs502-4g-CRPCF505 alive

crucs502-4g-CRPCF506 alive

crucs502-4g-CRPCF507 error

crucs502-4g-CRPCF604 alive

步驟4.重新部署虛擬機器。

從UAME重新部署虛擬機器

crucs502-uame-1# recover nsd-id crucs502-4g vnfd CRPCF507 recovery-action redeploy

檢查重新部署日誌

檢視UAME日誌以及ESC日誌，整個過程可能需要15分鐘。

UAME日誌：

tail -50f /var/log/upstart /uame/log

<truncated output>

2020-05-06 08:57:22,252 - | VM_RECOVERY_DEPLOYED | CRPCF5071 | SUCCESS | Waiting for: VM_RECOVERY_COMPLETE|

2020-05-06 08:57:22,255 - Timing out in 143 seconds

2020-05-06 08:57:48,227 - | VM_RECOVERY_COMPLETE | crucs502-4g-CRPC_CRPCF5_0_ee07bf60-a8f8-405f-9a0d-cfa7363e32e7 | SUCCESS | (1/1)

2020-05-06 08:57:48,229 - NETCONF transaction completed successfully!

2020-05-06 08:57:48,231 - Released lock: esc_vnf_req

2020-05-06 08:57:48,347 - Deployment recover-vnf-deployment: crucs502-4g succeeded

2020-05-06 08:57:48,354 - Send Deployment notification for: crucs502-4g-CRPCF507

ESC日誌：

tail -50f /var/log/esc/yangesc.log

2020-05-06 08:58:01.454 WARN Type: VM_RECOVERY_COMPLETE

2020-05-06 08:58:01.454 WARN Status: SUCCESS

2020-05-06 08:58:01.454 WARN Status Code: 200

2020-05-06 08:58:01.454 WARN Status Msg: Recovery: Successfully recovered VM [crucs502-4g-CRPC_CRPCF5_0_ee07bf60-a8f8-405f-9a0d-cfa7363e32e7].

2020-05-06 08:58:01.454 WARN Tenant: core

2020-05-06 08:58:01.454 WARN Deployment ID: 4f958c43-dfa4-45d4-a69d-76289620c337

2020-05-06 08:58:01.454 WARN Deployment name: crucs502-4g-CRPCF507-core

2020-05-06 08:58:01.454 WARN VM group name: CRPCF5071

<output trimmed>

驗證VM的狀態。請按照步驟3中的步驟操作。