12장. perf를 사용하여 OVS DPDK PMD CPU 사용량 문제 해결 및 문제 해결 데이터 전송
- 사전 요구 사항 이 섹션의 단계를 사용하여 문제 해결 도구를 설치합니다.
컴퓨팅 노드에
perf를 설치합니다.yum install perf -y
yum install perf -yCopy to Clipboard Copied! Toggle word wrap Toggle overflow Open vSwitch 디버그 RPM을 설치합니다.
subscription-manager repos --enable=rhel-7-server-openstack-13-debug-rpms
subscription-manager repos --enable=rhel-7-server-openstack-13-debug-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow pidstat명령을 설치해야 합니다.yum install sysstat -y
yum install sysstat -yCopy to Clipboard Copied! Toggle word wrap Toggle overflow
12.1. 진단 링크 복사링크가 클립보드에 복사되었습니다!
이 섹션의 단계를 사용하여 데이터 문제를 해결하고 수집합니다.
12.1.1. PMD 스레드 링크 복사링크가 클립보드에 복사되었습니다!
PMD 스레드의 위치를 확인합니다.
IFS=$'\n' ; for l in $(ps -T -p `pidof ovs-vswitchd` | grep pmd);do PID=`echo $l | awk '{print $2}'`; PMD=`echo $l | awk '{print $NF}'` ; PCPU=`taskset -c -p $PID | awk '{print $NF}'` ; echo "$PMD with PID $PID in on pCPU $PCPU"; doneIFS=$'\n' ; for l in $(ps -T -p `pidof ovs-vswitchd` | grep pmd);do PID=`echo $l | awk '{print $2}'`; PMD=`echo $l | awk '{print $NF}'` ; PCPU=`taskset -c -p $PID | awk '{print $NF}'` ; echo "$PMD with PID $PID in on pCPU $PCPU"; doneCopy to Clipboard Copied! Toggle word wrap Toggle overflow 예를 들면 다음과 같습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 문제를 재현하는 동안 perf 레코드를 실행하고 출력을 저장합니다.
gather_perf_data_a.sh 스크립트를 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 스크립트를 실행합니다.
chmod +x gather_perf_data_a.sh ./gather_perf_data_a.sh
chmod +x gather_perf_data_a.sh ./gather_perf_data_a.shCopy to Clipboard Copied! Toggle word wrap Toggle overflow
보고서는 perf report -i ${archive_name} 을 사용하여 읽을 수 있습니다. Red Hat 지원을 통해 열린 케이스인 경우 결과 tar 아카이브를 케이스에 첨부합니다.
12.1.2. 추가 데이터 링크 복사링크가 클립보드에 복사되었습니다!
추가 데이터를 수집하려면
gather_perf_data_b.sh스크립트를 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 스크립트를 실행합니다.
chmod +x gather_perf_data_b.sh ./gather_perf_data_b.sh
chmod +x gather_perf_data_b.sh ./gather_perf_data_b.shCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고디스크 공간이 충분한지 확인합니다. 'perf.data' 파일은 여러 기가바이트의 디스크 공간을 사용할 수 있습니다.
Red Hat 지원 티켓에 해당하는 경우 결과 tar 아카이브를 케이스에 첨부합니다.
12.1.3. Open vSwitch 로그 링크 복사링크가 클립보드에 복사되었습니다!
모든 OVS(Open vSwitch) 로그를 제공합니다.
/var에 디스크 공간이 충분한지 확인합니다.df -h를 사용하여 /var 및du -sh /var/log/openvswitch의 디스크 공간을 확인하여 OVS 로그의 총 크기를 확인합니다.tar -cvzf /var/openvswitch_`hostname`_`date +"%F_%H%M%S"`.tar.gz /var/log/openvswitch
tar -cvzf /var/openvswitch_`hostname`_`date +"%F_%H%M%S"`.tar.gz /var/log/openvswitchCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
결과 파일(예:
/var/openvswitch_overcloud-compute-0_2018-02-27_153713.tar.gz)을 분석의 지원 케이스에 연결합니다. sosreport를 생성하고 제공합니다.
/var에 디스크 공간이 충분한지 확인합니다.df -h를 사용하여/var의 디스크 공간을 확보합니다.sosreport --batch --all-logs
sosreport --batch --all-logsCopy to Clipboard Copied! Toggle word wrap Toggle overflow