目錄

簡介

背景資訊

獲取配置備份檔案

1. 設定裝置備份首選項

2. 配置裝置配置檔案的檢索頻率

3. 從EPNM下載配置檔案

4. 設定外部伺服器

5. 在EPNM (Cisco IOS)中配置目標儲存庫

6. 在EPNM (GUI)中配置目標儲存庫

7. 在EPNM GUI中排定匯出工作

8. 使用REST API獲取配置檔案

配置存檔收集故障排除

逾時

EMS在NCS2000中未啟用為「安全」

找不到裝置ID

結論

參考資料

簡介

本文檔介紹演化的可程式設計網路管理器(EPNM)如何從其中心位置管理裝置的備份配置檔案。

背景資訊

- 本檔案是根據EPNM 6.1.1版撰寫的

- 對於運行版本5.1.x的系統，將應用思科漏洞ID CSCvz12497並阻止從作業控制台編輯「裝置配置備份-外部」作業

獲取配置備份檔案

從EPNM資料庫中的裝置儲存備份的過程稱為「配置存檔」，可以調整為定期運行。

方框圖顯示配置EPNM以從網路裝置獲取備份檔案的步驟，以及從EPNM檢索這些檔案的3個選項。

在步驟1中，定義了關於如何透過EPNM處理配置檔案集合的總體首選項。例如，您可以選擇每台裝置儲存多少配置檔案，以及發生配置更改時是否觸發備份。

之後，在步驟2中配置了EPNM輪詢網路裝置以獲取配置檔案的頻率。

檔案進入EPNM資料庫後，有3個選項可用於檢索它們：

1. 直接從EPNM下載配置檔案(方框圖中的步驟3)

2. 將配置檔案導出到外部伺服器，在這種情況下，需要設定外部伺服器並將其配置為EPNM中的儲存庫(步驟4、5、6和7)

3. 使用REST API檢索配置檔案(步驟8)。此方法不適用於使用資料庫格式配置檔案的NCS2000裝置

1. 設定裝置備份首選項

這定義了存檔收集的預設行為，例如當觸發存檔時、每個裝置保留的檔案數目，以及當裝置新增至網路時，是否立即自動建立備份組態檔。

程式

步驟 1

在Administration > Settings > System Settings下，然後在Inventory > Configuration Archive下，定義存檔收集的預設行為。

2. 配置裝置配置檔案的檢索頻率

在此步驟中，定義了EPNM從網路中的裝置獲取配置檔案的頻率。保留在資料庫中的檔案數取決於步驟1中定義的內容。

程式

步驟 1

定義「存檔收集」的引數：

依次選擇Administration > Device Management > Configuration Archive，然後在Devices頁籤下選擇需要為其收集配置的裝置，點選Schedule Archive Collection，並完成Recurrence區域中的Schedule Settings。您可以一次選擇多個裝置（並為集合定義一個通用名稱）或為每個裝置建立一個作業（並指定與裝置本身相關的作業名稱，如圖所示）。

如果要在大量裝置上執行操作，請將存檔安排在最不可能影響生產的一段時間。

步驟 2

檢查配置存檔收集作業：

每次觸發此進程時，都會建立一個配置存檔收集作業並將其關聯到該進程，您可以在Administration > Dashboards > Job Dashboard下檢查其狀態，然後轉至User Jobs > Configuration Archive Collection。

如果特定節點的收集存檔失敗，則為每台裝置使用一個作業可以更輕鬆地對「配置存檔收集」作業進行故障排除：

步驟 3

檢查是否存在任何故障：

配置存檔收集失敗的原因可能不同。一些示例（適用於NCS2000）列在此過程後面的故障排除配置存檔部分收集中。

3. 從EPNM下載配置檔案

程式

步驟 1

選擇資產 > 裝置管理 > 配置存檔

步驟 2

選中要下載配置檔案的裝置旁的覈取方塊。

步驟 3

在「匯出最新存檔」下拉式清單中，選取以下其中一個選項來下載組態檔：

1. Sanitized -在下載的檔案中遮蔽裝置憑據密碼。

2. Unsanitized -在下載的檔案中可以看到裝置憑據密碼。

Unsanitized選項會根據基於角色的訪問控制(RBAC)中設定的使用者許可權顯示。這與NCS2000備份檔案無關，因為它們不是基於文本的檔案。

根據裝置支援的不同，此過程會提示您下載包含啟動配置運行配置或資料庫配置的.zip檔案。

4. 設定外部伺服器

支援的資料庫包括FTP、SSH FTP (SFTP)和網路檔案系統(NFS)。在示例中，假設SFTP伺服器是使用CentOS Linux版本8伺服器構建的。建立伺服器的程式不在本文的討論範圍之內。

5. 在EPNM中配置目標儲存庫(Cisco IOS)

在此步驟中，外部伺服器的引數在EPNM cars shell中進行定義。

程式

步驟 1

以Cisco EPN Manager CLI管理員使用者身份登入伺服器。請參閱建立與Cisco EPN Manager伺服器的SSH會話。

步驟 2

在EPNM中，進入配置模式：

epnm/admin# configure terminal

Enter configuration commands, one per line.  End with CNTL/Z.

epnm/admin(config)#

步驟 3

在EPNM中為使用者sftpuser建立儲存庫：

epnm6/admin# conf t

Enter configuration commands, one per line.  End with CNTL/Z.

epnm6/admin(config)# repository external_config_backup

epnm6/admin(config-Repository-external_config_backup)# url sftp://

//home/sftpuser

epnm6/admin(config-Repository-external_config_backup)# user sftpuser password plain xxxx

epnm6/admin(config-Repository-external_config_backup)# end

epnm6/admin# write memory

Generating configuration...

epnm6/admin#

本示例用於透過外部伺服器上的SFTP備份裝置配置。

- 使用您在第4 -設定外部伺服器項中定義的密碼替換xxxx。

- 外部伺服器IP地址後面的雙欄「//」表示SFTP伺服器的「/」目錄。要定義sftpuser目錄/home/sftpuser，只需在雙欄後增加home/sftpuser。

步驟 4

您可以使用show命令測試儲存庫是否可在外部伺服器上訪問：

epnm/admin# show repository external_config_backup

% Repository is empty

步驟 5

如果EPNM系統配置為高可用性，請在非活動伺服器中重複步驟3。

6. 在EPNM (GUI)中配置目標儲存庫

在此步驟中，在EPNM GUI中定義外部伺服器的引數。

程式

步驟 1

選擇「資產」> Device Management > Configuration Archive，然後按一下Devices頁籤上的Backup to Repository按鈕。

從備份到資料檔案庫下拉選單中，選擇先前在配置資料檔案庫部分中配置的external_config_backup 資料檔案庫：

Backup Repository(備份儲存庫)窗口中還包含2個覈取方塊：

- 僅匯出最新的組態：如果您只想要最新的檔案，請按一下此選項。否則，EPNM將導出存檔頁籤中列出的所有檔案。

- 使用GnuPG加密匯出的檔案：您也可以選擇使用GnuPG加密匯出的檔案（GNU Privacy Guard是一種免費且開放原始碼軟體工具，提供加密隱私權與驗證）。如果您選擇使用GnuPG加密，則必須提供加密密碼。

步驟 2

或者，也可以按一下Run立即開始導出過程。否則，要計畫和定義週期，請參閱專案7。在EPNM GUI稍後的過程中排定匯出工作。

每次觸發此進程時，都會建立裝置配置備份-外部作業並將其關聯到該進程，您可以在Administration > Dashboards > Job Dashboard下檢查其狀態，然後進入System Jobs > Infrastructure下。

7. 在EPNM GUI中排定匯出工作

在此步驟中，在EPNM GUI中定義將配置檔案導出到外部伺服器的工作。

程式

步驟 1

選擇管理>控制台> 作業控制台，然後轉至系統作業> 基礎設施。

步驟 2

點選Device Config Backup-External旁邊的覈取方塊，點選Edit Schedule按鈕並填寫時間表。

步驟 3

按一下Submit按鈕。

步驟 4

透過按一下Device Configuration Backup-External超連結檢查作業是否成功完成。

8. 使用REST API獲取配置檔案

組態檔有多種服務選項可供使用（例如，差異、大量匯出和版本作業）。本節顯示如何根據ip位址為x.x.x.x的裝置擷取備份檔案的基本範例

首先，您需要查詢裝置以獲取所需配置檔案的欄位。此操作可使用GET配置版本端點[2]完成：

GET https://

/webacs/api/v4/data/ConfigVersions?.full=true&deviceIpAddress=x.x.x.x

請注意，從JSON響應中，此裝置既可以使用啟動配置，也可以使用運行配置。在此案例中，「差異型別」也是OUT_OF_SYNC，這表示如果與組態檔案的先前版本比較，此版本會有所不同：

{

"queryResponse": {

"@last": 0,

"@first": 0,

"@count": 1,

"@type": "ConfigVersions",

"@domain": "ROOT-DOMAIN",

"@requestUrl": "https://

/webacs/api/v4/data/ConfigVersions?.full=true&deviceIpAddress=x.x.x.x", "@responseType": "listEntityInstances", "@rootUrl": "https://

/webacs/api/v4/data", "entity": [ { "@dtoType": "configVersionsDTO", "@type": "ConfigVersions", "@url": "https://

/webacs/api/v4/data/ConfigVersions/5029722742", "configVersionsDTO": { "@displayName": "5029722742", "@id": 5029722742, "comments": "Archived By Job Name: Job_Configuration_Archive_Collection_10_10_00_021_AM_8_28_2024, Run Id: 6333919609", "createdAt": "2024-08-28T13:10:07.112Z", "createdBy": "root", "deviceIpAddress": "x.x.x.x", "deviceName": "CBR8", "diffType": "OUT_OF_SYNC", "fileInfos": { "fileInfo": [ { "fileId": 5029723744, "fileState": "STARTUPCONFIG", "fileType": "TEXT" }, { "fileId": 5029723743, "fileState": "RUNNINGCONFIG", "fileType": "TEXT" } ] }, "isFirst": true, "isLast": true, "outOfBand": true } } ] } }

然後，您可以使用上一步中的檔案ID下載配置檔案。如果要下載運行配置，可以使用終端：

GET https://

/webacs/api/v4/op/configArchiveService/extractUnsanitizedFile?fileId=5029723743

響應包含文本格式的運行配置。

{

"mgmtResponse": {

"@domain": "ROOT-DOMAIN",

"@requestUrl": "https://

/webacs/api/v4/op/configArchiveService/extractUnsanitizedFile?fileId=5029723743", "@responseType": "operation", "@rootUrl": "https://

/webacs/api/v4/op", "extractFileResult": [ { "fileData":"!\n! Last configuration change at 18:12:00 EDT Sun Aug 25 2024 by rtp1\n!\nno issu config-sync policy bulk prc\nversion 16.12\nservice timestamps debug datetime msec\nservice timestamps log datetime localtime show-timezone\nservice password-encryption\nservice internal\nservice udp-small-servers\nservice sequence-

tcp\nnetconf-yang\nnetconf-yang cisco-ia snmp-community-string testing-mib-yang\nnetconf-yang ssh port 57000\nrestconf\nend" } ] } }

請記住，由於格式不同(DATABASE)，此方法無法檢索NCS2000配置檔案。

配置存檔收集故障排除

逾時

相關錯誤訊息：使用https從裝置備份資料庫失敗。執行HTTP要求期間的通訊端逾時：讀取逾時

根本原因：在EPNM能夠從裝置獲取資料庫之前發生超時。

Configuration Archive（配置存檔）任務使用每個提取活動的Device CLI Timeout值。單一「組態查扣」工作需要1到5個檔案。因此，總體作業超時值是使用邏輯確定的：總體作業超時 = 檔案數*裝置CLI超時。 要配置CLI超時值，請選擇資產 > 裝置管理 > 網路裝置，點選編輯裝置圖示，選擇Telnet/SSH選項，然後在超時欄位中輸入值。

EMS在NCS2000中未啟用為「安全」

相關錯誤消息：「使用https從裝置備份資料庫失敗。無法建立到裝置的telnet連線-原因：連線被拒絕或超時。

根本原因：NCS2000中的EMS訪問引數（透過CTC工具進行訪問）設定為非安全。 需要將其設定為Secure。

要解決此問題，請使用CTC工具訪問NCS2000，轉至Node view， Provisioning tab， Security，然後Access頁籤，並將EMS Access下的Access State更改為Secure。

找不到裝置ID

相關錯誤消息：「Device archive(s) was not be found.裝置的ID可能無效，或者可能已從系統中刪除。」

根本原因：如果NCS2000裝置已在EPNM中刪除，則其在EPNM資料庫中的裝置ID將更改。但是，Configuration Archive Collection作業仍引用舊ID，因此失敗。解決方法是刪除並重新建立相關裝置的配置存檔收集作業。

結論

本文檔詳細介紹了如何從儲存在EPNM資料庫中的網路裝置訪問配置檔案。

提供三個選項來存取檔案：直接透過EPNM、匯出至外部伺服器及透過REST API。這些方法可用於自動執行可由EPNM北向介面連線的系統執行的任務。此外，還提供了從裝置檢索配置檔案的一些故障排除提示。

參考資料

[1] EPNM配置指南

https://www.cisco.com/c/en/us/td/docs/net_mgmt/epn_manager/5_1_3/user/guide/bk-cisco-evolved-programmable-network-manager-5-1-3-user-and-administrator-guide1/bk_CiscoEPNManager_4_0_UserAndAdministratorGuide_chapter_011.html#task_1237296

[2] EPNM REST API聯機參考

https://<EPNM IP位址>/webacs/api/v1/index?_docs