소개
이 문서에서는 CPS(Cisco Policy Suite) 클러스터에 있는 VM의 원하는 시스템 로드 평균 임계값을 설정하는 데 필요한 지속적인 변경 사항에 대해 설명합니다.
사전 요구 사항
요구 사항
이 문서에 대한 특정 요건이 없습니다.
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
- Linux
- CPS 플랫폼 및 CPS 클러스터 아키텍처
- 정책 및 과금 규칙 기능(PCRF)
- Vi 편집기 명령
사용되는 구성 요소
이 문서의 정보는 CPS 24.1 버전 및 AlmaLinux 릴리스 8.8을 기반으로 합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
배경 정보
Linux 명령 상단의 시스템 로드 값(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을 편집하여 CPS 클러스터 VM의 원하는 값으로 수정할 수 있으므로 구성된 임계값에 대해 HighLoad 임계값 초과 경보를 생성할 수 있습니다. 그러나 이러한 VM 레벨 변경은 지속적이지 않으며 VM이 재부팅되면 기본값으로 되돌아갑니다.
표준 절차로서 이러한 변경 사항을 지속하려면 Enable Custom Puppet to Configure Deployment(구축을 구성할 사용자 지정 인형 활성화) 섹션의 CPS 설치 가이드에 정의된 절차를 사용하여 클러스터 관리자 VM에서 CPS 클러스터 VM 인형 파일을 수정합니다. VM puppet 파일의 현재 컨피그레이션에 따라 다음 값은 변경할 수 없으며 값으로 고정됩니다. 1.5 * vCPU 수(VM에 할당됨).
이 기본 논리를 원하는 HighLoad 임계값 값으로 지속적으로 수정하기 위해 이 문서에서는 컨피그레이션 변경에 대해 설명합니다.
문제
클러스터 관리자 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
기본적으로 HighLoad 임계값을 결정하는 정적 컨피그레이션이 있습니다.
<% @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은 단지 예시적이다. 요구 사항에 따라 실제 값을 할당합니다.
이 변경 내용을 유지하는 절차
퍼핏 파일에서 이러한 컨피그레이션 변경을 수행하려면 CPS 설치 가이드에서 "맞춤형 퍼핏 사용으로 구축 구성" 섹션에 설명된 절차를 사용하는 것이 좋습니다.
참조 링크:
확인
새 값으로 변경 사항을 확인하려면 클러스터 관리자 VM에서 for loop 명령을 실행합니다.
for host in $(hosts-all.sh); do echo $host; ssh $host "cat /etc/snmp/snmpd.conf | grep load"; done