24장. 성능

다음 장에서는 RHEL 8과 RHEL 9 간의 성능에 대한 주요 변경 사항을 설명합니다.

24.1. 성능 관련 주요 변경 사항

Performance Co-Pilot의 버전 6.0을 기반으로 재조정

RHEL 9.2부터PCP( Performance Co-Pilot )가 버전 6.0으로 업데이트되었습니다. 주요 개선사항은 다음과 같습니다.

  1. 버전 3 PCP 아카이브 지원:

    여기에는 인스턴스 도메인 change-deltas, Y2038 안전 타임스탬프, 나노초-지정 타임스탬프, 임의의 시간대 지원, 대규모 2GB의 개별 볼륨에 사용되는 64비트 파일 오프셋 지원이 포함됩니다.

    이 기능은 현재 /etc/pcp.conf 파일의 PCP_ARCHIVE_VERSION 설정을 통해 옵트인합니다.

    버전 2 아카이브는 그대로 유지됩니다.

  2. PCP 전체에서 OpenSSL만 사용됩니다. Mozilla NSS/NSPR 사용이 중단되었습니다.

    이는 libpcp,PMAPI 클라이언트 및 PMCD 암호화 사용에 영향을 미칩니다. 이러한 요소는 이제 이미 OpenSSL을 사용하고 있는 pmproxy HTTPS 지원 및 redis-server 와 함께 설정 및 사용됩니다.

  3. 새로운 나노초 전체 타임스탬프 PMAPI 는 타임스탬프를 사용하는 PCP 라이브러리 인터페이스에 대한 호출입니다.

    이는 모두 선택 사항이며 기존 툴에는 전체 이전 버전과의 호환성이 유지됩니다.

  4. 다음 툴과 서비스가 업데이트되었습니다.

    pcp2elasticsearch
    인증 지원을 구현합니다.
    pcp-dstat
    최상위 플러그인에 대한 지원을 구현합니다.
    pcp-htop
    안정적인 최신 업스트림 릴리스로 업데이트되었습니다.
    PMseries
    합계,avg,stdev,nth_percentile,max_inst,max_sample,min_instmin_sample 함수가 추가되었습니다.
    pmdabpf
    추가 CO-RE (Compile Once - Run Everywhere) 모듈 및 AMD64, Intel 64 비트, 64 비트 ARM 및 IBM Power Systems에 대한 지원
    pmdabpftrace
    예제 자동 시작 스크립트를 /usr/share 디렉터리로 이동했습니다.
    pmdadenki
    여러 활성 건전지에 대한 지원이 추가되었습니다.
    pmdalinux
    최신 /proc/net/netstat 변경 사항 업데이트
    pmdaopenvswitch
    추가 인터페이스 및 범위 통계가 추가되었습니다.
    pmproxy
    요청 매개변수는 이제 요청 본문으로 보낼 수 있습니다.
    pmieconf
    Open vSwitch 메트릭에 대한 몇 가지 pmie 규칙이 추가되었습니다.
    pmlogger_farm
    ball loggers에 대한 기본 구성 파일이 추가되었습니다.
    pmlogger_daily_report
    몇 가지 주요 효율성 개선.

RHEL 9부터는 RuntimeClass 패키지에서 제공하는ious f(1) 도구가 기본 슬픈 c(1) 아카이브에서 PCP 아카이브를 생성할 수 있습니다.

기본적으로 - 플래그가 gr c(1) 와 함께 사용되는 경우 so c(1) 는 표준 시스템 활동 매일 데이터 파일에 데이터를 씁니다. 이 파일의 이름은 saDD 이며 기본적으로 /var/log/sa 디렉터리에 있습니다. 반대로, 입력 datafile이 지정되지 않은 경우, sign f(1) 도구는 매일 데이터 파일을 사용하여 아카이브를 생성합니다. 숫자를 인수로 전달하여 과거에 지정된 일 수를 기록한 데이터에서 아카이브를 생성하도록 합니다.

  • 2일 전 기록된 disc (1) 아카이브 에서 PCP 아카이브를 생성하려면 다음을 실행합니다.

    # sadf -l -O pcparchive=/tmp/recording -2
  • ious c(1) 아카이브에서 생성된 PCP 아카이브에 지표 목록을 표시하려면 다음을 실행합니다.

    $ pminfo --archive /tmp/recording
    Disk.dev.avactive
    Disk.dev.read
    Disk.dev.write
    Disk.dev.blkread
    [...]
  • poor c(1) 아카이브에서 생성된 PCP 아카이브의 시간 공간 및 호스트 이름을 표시하려면 다음을 수행합니다.

    $ pmdumplog --label /tmp/recording
    Log Label (Log Format Version 2)
    Performance metrics from host shard
            commencing Tue Jul 20 00:10:30.642477 2021
            ending     Wed Jul 21 00:10:30.222176 2021
  • 그런 다음 PCP 명령을 사용하여 paste c(1) 아카이브에서 생성된 PCP 아카이브를 분석할 수 있습니다. 예를 들면 다음과 같습니다.

    $ pmchart --archive /tmp/recording

새로운 PCP PMDA - pmdabpf

RHEL 9는 pcp-pmda-bpf 패키지를 통해 배포됩니다. 이 패키지는 pmdabpf Performance Co-2011(PCP) Performance Metric Domain Agent(PMDA)를 제공합니다.

pmdabpf PMDA는 libbpfBTFBPF CO-RE ( compile Once - Run Everywhere)를 사용하여 eBPF 프로그램에서 라이브 성능 데이터를 추출합니다.