本產品的文件集力求使用無偏見用語。針對本文件集的目的,無偏見係定義為未根據年齡、身心障礙、性別、種族身分、民族身分、性別傾向、社會經濟地位及交織性表示歧視的用語。由於本產品軟體使用者介面中硬式編碼的語言、根據 RFP 文件使用的語言,或引用第三方產品的語言,因此本文件中可能會出現例外狀況。深入瞭解思科如何使用包容性用語。
思科已使用電腦和人工技術翻譯本文件,讓全世界的使用者能夠以自己的語言理解支援內容。請注意,即使是最佳機器翻譯,也不如專業譯者翻譯的內容準確。Cisco Systems, Inc. 對這些翻譯的準確度概不負責,並建議一律查看原始英文文件(提供連結)。
本文檔介紹恢復部署在Ultra-M/OpenStack環境中的虛擬思科策略和計費規則功能(vPCRF)例項的過程。
思科建議您瞭解以下主題:
本文件所述內容不限於特定軟體和硬體版本。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
必須每月備份ESC-HA中的配置,在對VNF執行任何擴大或縮小操作之前/之後,以及在ESC配置更改之前/之後。必須進行備份才能有效執行ESC的災難恢復。
ESC以XML形式開啟資料
按照以下步驟將ESC opdata匯出為XML:
1.使用管理員憑據登入到ESC。
2.將opdata導出到XML:
/opt/cisco/esc/confd/bin/netconf-console --host 127.0.0.1 --port 830 -u <admin-user> -p <admin-password> --get-config > /home/admin/ESC_config.xml
3.將此檔案下載到本地電腦ftp/sftp,並下載到雲之外的伺服器。
4.部署XML中引用的所有指令碼和使用者資料檔案。從上一步匯出的opdata中查詢所有VNF的部署XML中引用的所有使用者資料檔案。
grep "file://" /home/admin/ESC_config.xml | sort | uniq
輸出示例:
<file>file://opt/cisco/esc/cisco-cps/config/gr/cfg/std/pcrf-cm_cloud.cfg</file> <file>file://opt/cisco/esc/cisco-cps/config/gr/cfg/std/pcrf-oam_cloud.cfg</file> <file>file://opt/cisco/esc/cisco-cps/config/gr/cfg/std/pcrf-pd_cloud.cfg</file> <file>file://opt/cisco/esc/cisco-cps/config/gr/cfg/std/pcrf-qns_cloud.cfg</file> <file>file://opt/cisco/esc/cisco-cps/config/gr/cfg/std/pcrf-sm_cloud.cfg</file>
5.查詢用於傳送CPS協調API的所有部署後指令碼。
6. ESC opdata中post_deploy腳本的示例片段
輸出示例:
<policies> <policy> <name>PCRF_POST_DEPLOYMENT</name> <conditions> <condition> <name>LCS::POST_DEPLOY_ALIVE</name> </condition> </conditions> <actions> <action> <name>FINISH_PCRF_INSTALLATION</name> <type>SCRIPT</type> <properties> ---------- <property> <name>script_filename</name> <value>/opt/cisco/esc/cisco-cps/config/gr/tmo/cfg/../cps_init.py</value> </property> <property> <name>script_timeout</name> <value>3600</value> </property> </properties> </action> </actions> </policy> </policies>
示例2:
<policy> <name>PCRF_POST_DEPLOYMENT</name> <conditions> <condition> <name>LCS::POST_DEPLOY_ALIVE</name> </condition> </conditions> <actions> <action> <name>FINISH_PCRF_INSTALLATION</name> <type>SCRIPT</type> <properties> <property> <name>CLUMAN_MGMT_ADDRESS</name> <value>10.174.132.46</value> </property> <property> <name>CLUMAN_YAML_FILE</name> <value>/opt/cisco/esc/cisco-cps/config/vpcrf01/ cluman_orch_config.yaml</value> </property> <property> <name>script_filename</name> <value>/opt/cisco/esc/cisco-cps/config/vpcrf01/vpcrf_cluman_post_deployment.py</value> </property> <property> <name>wait_max_timeout</name> <value>3600</value> </property> </properties> </action> </actions> </policy>
如果部署ESC opdata(在上一步中提取)包含任何突出顯示的檔案,請使用此命令進行備份。
tar –zcf esc_files_backup.tgz /opt/cisco/esc/cisco-cps/config/
將此檔案下載到本地電腦ftp/sftp,並下載到雲外部的伺服器。
附註:雖然opdata在ESC主用和備用之間同步,但包含使用者資料、XML和部署後指令碼的目錄不會在兩個例項之間同步。建議客戶使用SCP或SFTP推送包含這些檔案的目錄內容,這些檔案應在ESC-Primary和ESC-Standby之間保持恆定,以便在部署時為主的ESC VM不可用時恢復部署。
建議的備份計畫(ESC)
建議在ESC主和ESC備用中新增root使用者的crontab條目。但是,您可以根據小時/天/月的要求和網路更改頻率對其進行修改。
30 01 * * * tar –zcf /home/admin/esc_files_backup_$(date +"\%Y-\%m-\%d").tgz /opt/cisco/esc/cisco-cps/config/ 00 02 * * * /opt/cisco/esc/confd/bin/netconf-console --host 127.0.0.1 --port 830 -u <admin-user> -p <admin-password> --get-config > /home/admin/ESC_config_$(date +"\%Y-\%m-\%d").xml
集群管理器充當一個CPS集群的傀儡主節點。因此,有必要對此例項製作快照。此外,思科提供的備份和恢復實用程式可用於收集mongoDB、策略配置、grafana DB、使用者、網路及其他pcrf配置檔案的備份。這些檔案應經常使用CPS備份實用程式進行備份,並儲存在Ultra-M雲之外的位置。
Cluster Manager VM的快照
必須每月備份一次群集管理器例項快照,備份時間也是在任何配置更改、修補程式更新和升級之前和之後。在成功執行活動後可以刪除舊快照以節省磁碟空間。以下過程介紹了將群集管理器例項作為快照進行備份的步驟:
1.此命令用於檢視nova例項並記下群集管理器VM例項的名稱:
nova list
2.建立一個新快照映像,如下所示:
nova image-create --poll <cluman_instance_name> <cluman_snapshot_name>
輸出示例:
Server snapshotting... 100% complete
Finished
附註:確保有足夠的磁碟空間用於快照。建立快照時,Cluster Manager有時會變得不可訪問,並在建立快照後恢復自身。如果即使在快照過程完成之後例項仍保持不可訪問,請使用nova list命令檢查VM的狀態。如果處於SHUTOFF狀態,則需要使用nova start命令手動啟動VM。
3.確保使用此命令建立快照映像。
glance image-list
輸出示例:
+--------------------------------------+-------------------------------------+ | ID | Name | +--------------------------------------+-------------------------------------+ | 1683d05f-2a9f-46d8-877d-10982ee819e1 | cluman_backup_image | | 30f2ece1-6438-4ef7-b4cf-44a0e7de183e | CPS_13.1.1.release.iso | | d38321a1-27c1-4c47-bc0f-24aedab5867a | CPS_13.1.1_Base | +--------------------------------------+-------------------------------------+
4.當您執行任何可能影響Ceph的平台更改時,始終建議將Cluster Manager的快照轉換為QCOW檔案並將其儲存到某個遠端位置。
glance image-download --file /var/Pcrf/cluman_snapshot.raw <image-id of the snapshot>
5.將此檔案下載到ftp/sftp本地計算機並下載到雲外部的伺服器。
CPS配置和資料庫的備份
1.為了備份CPS配置和資料庫內容,CPS平台中內建了config_br.py實用程式。有關使用config_br.py實用程式的詳細資訊,請參閱《CPS備份和還原指南》。這是群集管理器中的crontab示例,用於每天凌晨1點備份所有配置和資料庫。
00 01 * * * /var/platform/modules/config_br.py -a export -–all /mnt/backup/backup_$(date +\%Y-\%m-\%d).tar
2. MongoDB也可以使用mongodump進行備份。
30 01 * * * mongodump --host sessionmgr01 –port 27721 --out /mnt/backup/mongo_admin_27721_$(date +\%Y-\%m-\%d)/ 30 01 * * * mongodump --host sessionmgr01 –port 27720 --out /mnt/backup/mongo_spr_27720_$(date +\%Y-\%m-\%d)/ 30 01 * * * mongodump --host sessionmgr01 –port 27718 --out /mnt/backup/mongo_bal_27718_$(date +\%Y-\%m-\%d)/ 30 01 * * * mongodump --host sessionmgr01 –port 27719 --out /mnt/backup/mongo_report_27721_$(date +\%Y-\%m-\%d)/
3.備份協調YAML。
curl -i -X GET http://<Cluster Manager IP>:8458/api/system/config -H "Content-Type: application/yaml" > /mnt/backup/CPS_orc_$(date +\%Y-\%m-\%d).yaml
如果使用CPS協調API配置系統,則建議同時備份此配置。
附註:所有備份都必須在CPS VNF之外儲存/傳輸,最好在部署CPS的雲之外。
CPS VNF例項恢復過程
從SHUTOFF狀態開啟任何例項。
如果任何例項由於計畫關閉或其他原因而處於SHUTOFF狀態,請使用此過程啟動該例項,並啟用ESC中的監視。
1.通過OpenStack檢查例項的狀態。
source /home/stack/destackovsrc-Pcrf nova list --fields name,host,status | grep cm | c5e4ebd4-803d-45c1-bd96-fd6e459b7ed6 | cm_0_170d9c14-0221-4609-87e3-d752e636f57f| destackovs-compute-2 | SHUTOFF|
2.檢查「計算」是否可用,並確保狀態為up。
source /home/stack/destackovsrc-Pcrf nova list --fields name,host,status | grep cm | c5e4ebd4-803d-45c1-bd96-fd6e459b7ed6 | cm_0_170d9c14-0221-4609-87e3-d752e636f57f| destackovs-compute-2 | SHUTOFF|
3.以管理員使用者身份登入到ESC主節點,然後檢查opdata中例項的狀態。
echo "show esc_datamodel opdata tenants tenant Pcrf deployments * state_machine | tab" | /opt/cisco/esc/confd/bin/confd_cli -u admin –C | grep cm cm_0_170d9c14-0221-4609-87e3-d752e636f57f VM_ERROR_STATE
4.從OpenStack開啟例項電源。
source /home/stack/destackovsrc-Pcrf nova start cm_0_170d9c14-0221-4609-87e3-d752e636f57f
5.等待五分鐘,以便例項啟動並進入ACTIVE狀態。
source /home/stack/destackovsrc-Pcrf nova list --fields name,status | grep cm | c5e4ebd4-803d-45c1-bd96-fd6e459b7ed6 |cm_0_170d9c14-0221-4609-87e3-d752e636f57f| ACTIVE |
6.在例項處於ACTIVE狀態後,在ESC中啟用VM監視器。
/opt/cisco/esc/esc-confd/esc-cli/esc_nc_cli vm-action ENABLE_MONITOR cm_0_170d9c14-0221-4609-87e3-d752e636f57f
有關例項配置的進一步恢復,請參閱此處提供的例項型別特定過程。
從錯誤狀態中恢復任何例項
如果OpenStack中CPS例項的狀態為ERROR,可以使用以下過程:
1.檢查OpenStack中例項的狀態。
source /home/stack/destackovsrc-Pcrf nova list --fields name,host,status | grep cm | c5e4ebd4-803d-45c1-bd96-fd6e459b7ed6 | cm_0_170d9c14-0221-4609-87e3-d752e636f57f| destackovs-compute-2Â | ERROR|
2.檢查「計算」是否可用且運行正常。
source /home/stack/destackovsrc-Pcrf nova list --fields name,host,status | grep cm | c5e4ebd4-803d-45c1-bd96-fd6e459b7ed6 | cm_0_170d9c14-0221-4609-87e3-d752e636f57f| destackovs-compute-2 | ERROR|
3.以管理員使用者身份登入到ESC主節點,然後檢查opdata中例項的狀態。
echo "show esc_datamodel opdata tenants tenant Pcrf deployments * state_machine | tab" | /opt/cisco/esc/confd/bin/confd_cli -u admin –C | grep cm cm_0_170d9c14-0221-4609-87e3-d752e636f57f VM_ERROR_STATE
4.重置例項的狀態以強制例項返回到ACTIVE狀態而不是錯誤狀態。完成後,重新啟動您的例項。
source /home/stack/destackovsrc-Pcrf nova reset-state –active cm_0_170d9c14-0221-4609-87e3-d752e636f57f nova reboot –-hard cm_0_170d9c14-0221-4609-87e3-d752e636f57f
5.等待五分鐘,讓例項啟動並進入ACTIVE狀態。
source /home/stack/destackovsrc-Pcrf nova list –fields name,status | grep cm | c5e4ebd4-803d-45c1-bd96-fd6e459b7ed6 |cm_0_170d9c14-0221-4609-87e3-d752e636f57f| ACTIVE |
6.如果重新啟動後Cluster Manager將狀態更改為ACTIVE,請在ESC中啟用VM Monitor。
/opt/cisco/esc/esc-confd/esc-cli/esc_nc_cli vm-action ENABLE_MONITOR
cm_0_170d9c14-0221-4609-87e3-d752e636f57f
7.恢復到RUNNING/ACTIVE狀態後,請參閱例項型別特定的過程,以便從備份中恢復配置/資料。