簡介
本文檔介紹在思科策略套件(CPS)副本集中修改因子引數值的過程。
必要條件
需求
思科建議您瞭解以下主題:
思科建議您必須具有對CPS CLI的Root訪問許可權。
採用元件
本文中的資訊係根據以下軟體和硬體版本:
- CPS 20.2
- MongoDB v3.6.17
- UCS-B
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
背景資訊
Facter是Puppet的跨平台系統配置檔案庫。它發現並報告每個節點的事實,這些事實在Puppet清單中作為變數提供。Puppet支援將多個值保持為環境變數。Puppet中通過使用更快的速度支援此功能。在Puppet中,facter是儲存環境級別變數的獨立工具。可以認為它類似於Bash或Linux的env變數。有時,儲存在事實中的資訊與機器的環境變數之間可能存在重疊。在Puppet中,key-value對稱為「fact」。每個資源都有自己的事實,在Puppet中,使用者可以利用這些事實構建自己的自定義事實。
命令因子可用於列出所有不同的環境變數及其相關值。
因子對於Puppet很重要的原因在於,因子和事實在整個Puppet代碼中作為一個全域性變數是可用的,這意味著它們可以在代碼中的任何時間點使用,而無需任何其他引用。
問題
假定CPS指令碼在某些用途上使用因子引數值,例如設定用於生成警報的閾值,如果要根據網路微調閾值,則必須相應地修改各自的因子引數值。
考慮示例CPS指令碼/var/qps/install/20.2.0/scripts/bin/support/snmp-traps/process-traps/gen-gx-drop-trap.sh和alert Gx average Message CCR-X processing increased。
您可以看到,如果進行了配置,指令碼首先會使用因子值。
# If threshold configured in facter, get that value, else use default 20ms
TRAP_AVG_LEVEL=200
因此,在這裡,指令碼不考慮提供的輸入TRAP_AVG_LEVEL=200",而是考慮因子值20ms。
從pcrfclient運行此命令以顯示相應的因子引數值。
#facter | grep ccr
gx_alarm_ccr_i_avg_threshold => 20
gx_alarm_ccr_t_avg_threshold => 20
gx_alarm_ccr_u_avg_threshold => 20
修改因子引數值的過程
以下是將facter引數值修改為200ms的步驟。
1.在OpenStack中託管CPS的方法。
步驟1.備份當前工廠配置。
從群集管理器運行此命令(確保目錄/mnt/backup存在)。
# curl -X GET http://installer:8458/api/system/config/config/ -o /mnt/backup/ facter-config_$(date +%Y-%m-%d).yaml
步驟2.使用正確的閾值引數值準備YAML檔案。在ClusterManager中準備.yaml檔案。
# vi gx_alarm_threshold.yaml
gxAlarmCcrIAvgThreshold: "200"
gxAlarmCcrUAvgThreshold: "200"
gxAlarmCcrTAvgThreshold: "200"
步驟3.從集群管理器運行此命令以更新閾值引數。
附註:此命令必須從放置gx_alarm_threshold.yaml檔案的同一目錄執行。這裡是/tmp。
[root@installer tmp]# curl -i -X PATCH http://installer:8458/api/system/config/config -H "Content-Type: application/yaml" --data-binary "@gx_alarm_threshold.yaml"
HTTP/1.1 200 OK
Date: Fri, 21 Jan 2022 06:45:20 GMT
Content-Length: 0
[root@installer tmp]
步驟4.檢驗閾值引數值的變化。從pcrfclient運行此命令。
#facter | grep ccr
Expected Output:
gx_alarm_ccr_i_avg_threshold => 200
gx_alarm_ccr_t_avg_threshold => 200
gx_alarm_ccr_u_avg_threshold => 200
2.在VMWare中託管的CPS的方法。
步驟1 。登入到ClusterManager並修改/var/qps/config/deploy/csv/Configuration.csv中必需的引數的值。請考慮使用以下當前值為20的示例引數。
[root@installer ~]# cat /var/qps/config/deploy/csv/Configuration.csv | grep ccr
gx_alarm_ccr_i_avg_threshold,20,
gx_alarm_ccr_t_avg_threshold,20,
gx_alarm_ccr_u_avg_threshold,20,
[root@installer ~]#
運行此命令並修改Configuration.csv檔案中的示例引數值。
[root@installer ~]#vi /var/qps/config/deploy/csv/Configuration.csv
運行此命令以檢查Configuration.csv檔案中是否更改了值。
[root@installer ~]# cat /var/qps/config/deploy/csv/Configuration.csv|grep ccr
gx_alarm_ccr_i_avg_threshold,200,
gx_alarm_ccr_t_avg_threshold,200,
gx_alarm_ccr_u_avg_threshold,200,
[root@installer ~]#
步驟2.運行此命令以將新配置匯入到ClusterManager。
[root@installer ~]# /var/qps/install/current/scripts/import/import_deploy.sh
步驟3.運行此命令以驗證ClusterManager因子值的更改。
[root@installer ~]# facter | grep -i ccr
gx_alarm_ccr_i_avg_threshold => 200
gx_alarm_ccr_t_avg_threshold => 200
gx_alarm_ccr_u_avg_threshold => 200
[root@installer ~]#
步驟4.運行此命令重建CPS包。
[root@installer ~]# /var/qps/install/current/scripts/build_all.sh
步驟5.運行此命令可下載所有Puppet指令碼、CPS軟體/etc/hosts文件,並使用Cluster Manager中的新軟體更新每台VM。
[root@installer ~]# /var/qps/install/current/scripts/upgrade/reinit.sh
步驟6.登入到pcrfclient並運行此命令以驗證因子值的更改。
[root@dc1-pcrfclient01 ~]# facter | grep ccr
gx_alarm_ccr_i_avg_threshold => 200
gx_alarm_ccr_t_avg_threshold => 200
gx_alarm_ccr_u_avg_threshold => 200
[root@dc1-pcrfclient01 ~]#