はじめに
このドキュメントでは、Cisco Policy Suite(CPS)クラスタでVMの必要なシステム負荷の平均しきい値を設定するために必要な永続的な変更について説明します。
前提条件
要件
このドキュメントに関する固有の要件はありません。
次の項目に関する知識があることが推奨されます。
- Linux
- CPSプラットフォームとCPSクラスタアーキテクチャ
- ポリシー/課金ルール機能(PCRF)
- Viエディタコマンド
使用するコンポーネント
このドキュメントの情報は、CPS 24.1バージョンとAlmaLinuxリリース8.8に基づくものです。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
背景説明
Linuxコマンドtop からのシステム負荷値(Load-1、Load-5、Load-15)は、1分、5分、15分ごとにサンプリングされたVMの負荷平均値を示します。
[root@HOSTNAME-VM01 ~]# top
top - 20:23:21 up 10 days, 2:11, 1 user, load average: 5.12, 8.67, 8.56
Tasks: 432 total, 2 running, 425 sleeping, 0 stopped, 5 zombie
%Cpu(s): 8.2 us, 3.3 sy, 0.0 ni, 87.2 id, 0.2 wa, 0.9 hi, 0.2 si, 0.0 st
MiB Mem : 63884.1 total, 23587.4 free, 11090.1 used, 29206.5 buff/cache
MiB Swap: 4096.0 total, 4096.0 free, 0.0 used. 48924.5 avail Mem
これらの各VMで/etc/snmp/snmpd.confを編集することで、これら3つのサンプリング間隔のしきい値をCPSクラスタVM内の必要な値に変更し、設定されたしきい値に対して高負荷しきい値を越えたアラームを生成できます。ただし、これらのVMレベルの変更は永続的ではなく、VMがリブートされるとデフォルト値に戻ります。
標準手順として、これらの変更を永続的なものにするには、「カスタムPuppetを有効にして展開を構成する」セクションの下のCPSインストールガイドで定義された手順を使用して、Cluster Manager VMからCPSクラスタVMのpuppetファイルを変更します。VM puppetファイルの現在の設定によると、これらの値は変更できず、次の値に固定されています。1.5 * vCPUの数(VMに割り当てられている)。
このドキュメントでは、このデフォルトロジックを望ましいHighLoadしきい値に永続的に変更するための設定変更について説明しています。
問題
Cluster Manager VMからのCPSクラスタVM(LB VM、Sessionmgr VM、Pcrfclient VMおよびQNS VM)puppetファイルは、パス/etc/puppet/modules/qps/templates/etc/snmpにあります。
pcrfclient.snmpd.conf
lb.snmpd.conf
sessionmgr.snmpd.conf
qns.snmpd.conf
デフォルトでは、高負荷しきい値を決定するためのスタティック設定があります。
<% @load_val=`nproc | awk '{res = $1 * 1.5; printf "%d", res}'` %>
load <%= @load_val %> <%= @load_val %> <%= @load_val %>
これは、デフォルトのしきい値が各期間の1.5 * vCPUの数(VMに割り当て)であることを示します。したがって、このスタティック設定により、3つの期間すべてで望ましい平均しきい値を設定することはできません。
解決方法
各VMのsnmpd.conf puppetファイルに指定されているデフォルトの静的設定を次のように変更します。
<% @load_val=`nproc | awk '{res = $1 * 1.5; printf "%d", res}'` %>
load <%= @load_val %> <%= @load_val %> <%= @load_val %>
<% @load_val_1 = 55 %>
<% @load_val_2 = 55 %>
<% @load_val_3 = 36 %>
load <%= @load_val_1 %> <%= @load_val_2 %> <%= @load_val_3 %>
注:この場合、値55、55、および36は目安にすぎません。要件に従って実際の値を割り当てます。
これらの変更を保持する手順
puppetファイルにこのような設定変更を行うには、「カスタムPuppetを有効にして展開を設定する」の項のCPSインストールガイドに記載されている手順を使用することをお勧めします。
参照リンク:
検証
新しい値を使用して変更を確認するには、Cluster Manager VMからfor loopコマンドを実行します。
for host in $(hosts-all.sh); do echo $host; ssh $host "cat /etc/snmp/snmpd.conf | grep load"; done