내용으로 건너뛰기

atop 및 atopsar 도구를 사용하여 EC2 Linux 인스턴스의 프로세스에 대한 과거 사용량 통계를 가져오려면 어떻게 해야 합니까?

5분 분량
0

Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에서 atop 및 atopsar 도구를 다운로드하고 사용하는 방법을 배우고 싶습니다. 로그 파일을 분석하여 내 인스턴스에서 실행되는 프로세스의 과거 CPU, 메모리 및 디스크 I/O 사용량을 모니터링하려고 합니다.

간략한 설명

atop를 사용하여 리소스 사용 내역과 각 프로세스 및 스레드의 CPU 사용량, 메모리 사용량, 디스크 I/O에 대한 실시간 보고서를 기록할 수 있습니다. atop 도구는 통계를 기록하는 동안 백그라운드 서비스로 활성 상태를 유지합니다. 이 도구는 기본적으로 28일 동안 데이터를 저장하므로 장기간 서버 분석이 가능합니다. 그런 다음 atopsar과 같은 유틸리티를 사용하여 atop가 수집한 데이터에 대한 시스템 활동 보고서를 생성할 수 있습니다.

참고: atop 도구는 설치한 후에만 데이터를 로깅합니다. atop 설치 전에는 성능 기록 데이터를 검색할 수 없습니다.

해결 방법

atop 설치

설치 지침은 Amazon Linux, Red Hat Enterprise Linux(RHEL), CentOS 또는 Ubuntu를 구동하는 EC2 인스턴스를 위한 ATOP 모니터링 및 SAR 모니터링 도구를 구성하려면 어떻게 해야 합니까?를 참조하십시오.

atop 기록 보고서 로그 만들기

atop 도구는 /var/log/atop에서 atop_ccyymmdd 이름 형식을 사용하여 로그 파일을 만듭니다. 예를 들어, atop_20210902는 2021년 9월 2일의 레코딩입니다.

로그 파일에 액세스하려면 다음 명령을 실행합니다.

atop -r /var/log/atop/atop_ccyymmdd

참고: ccyymmdd를 검토하려는 날짜로 바꾸십시오.

출력 예시:

atop -r /var/log/atop/atop_20210902
ATOP - ip-172-20-139-91                2021/09/02  17:03:44                ----------------                 3h33m7s elapsed
PRC |  sys    6.51s  |  user   7.85s  |  #proc    103  |  #tslpi    81 |  #tslpu     0  |  #zombie    0  |  #exit      0  |
CPU |  sys     0%  |  user      3%  |  irq       0%  |  idle    197% |  wait      0%  |  ipc notavail  |  curscal   ?%  |
cpu |  sys     0%  |  user      1%  |  irq       0%  |  idle     98% |  cpu000 w  0%  |  ipc notavail  |  curscal   ?%  |
cpu |  sys     0%  |  user      1%  |  irq       0%  |  idle     98% |  cpu001 w  0%  |  ipc notavail  |  curscal   ?%  |

이 예시에서 atop는 2021년 9월 2일 17:03:44에 처음으로 스냅샷을 기록했습니다.

다음 스냅샷으로 이동하려면 소문자 t 키를 누릅니다. 이전 스냅샷으로 돌아가려면 대문자 T를 누릅니다. 특정 시간대를 분석하려면 b를 누른 다음 날짜와 시간을 입력합니다. atop 도구는 새 시간 입력에 입력된 시간까지 계속됩니다.

예:

NET |  lo      ----  |  pcki       2  |  pcko       2  |  sp    0 Mbps |  si    0 Kbps  |  so    0 Kbps  |  erro       0  |
Enter new time (format [YYYYMMDD]hhmm):
  PID              TID              RDDSK              WRDSK             WCANCL              DSK             CMD        1/4

다른 통계를 보려면 지정된 단축키를 누릅니다. 단축키의 전체 목록은 atoptool 웹 사이트의 Atop cheatsheet - keys overview를 참조하십시오.

프로세스 목록을 정렬하려면 다음 바로 가기 키를 사용합니다.

  • CPU 활동을 기준으로 정렬하려면 C를 누릅니다.
  • 메모리 사용량을 기준으로 정렬하려면 M을 누릅니다.
  • 디스크 활동을 기준으로 정렬하려면 D를 누릅니다.
  • 네트워크 활동을 기준으로 정렬하려면 N을 누릅니다.
    참고: 이 키는 netatop 커널을 설치한 경우에만 작동합니다.
  • 가장 활발한 시스템 리소스(자동 모드)를 기준으로 정렬하려면 A를 누릅니다.

도움말 문서를 보려면 h를 누릅니다.

특정 기간 동안 atop 보고서 로그 만들기

로그 파일에 액세스하여 특정 기간의 성능 데이터만 추출하려면 다음 명령을 실행합니다.

atop -r /var/log/atop/atop_ccyymmdd -b starttime -e endtime -M

참고: ccyymmdd를 검토하려는 날짜로 바꾸십시오. 또한 starttime을 시작 시간으로, endtime을 성능 기간의 종료 시간으로 바꾸십시오. r 플래그는 파일을, b 플래그는 시작 시간을, e 플래그는 종료 시간을, M 플래그는 메모리를 지정합니다.

다음 예시 명령은 2024년 4월 22일 08:00에서 08:10 사이 메모리의 성능 데이터를 반환합니다.

atop -r /var/log/atop/atop_20240422 -b 0800 -e 0810            -M

atopsar을 사용하여 시스템 활동 보고서 생성

atopsar 명령을 사용하여 시스템 활동 보고서를 생성할 수 있습니다. -c 플래그를 사용할 경우 atopsar은 시스템의 현재 CPU 사용량에 대한 보고서를 생성합니다.

명령 예시:

atopsar -c

다음 예시 출력은 1초 간격의 CPU 사용량을 보여줍니다.

atopsar -c 1 2
ip-172-20-139-91  4.14.238-182.422.amzn2.x86_64  #1 SMP Tue Jul 20 20:35:54 UTC 2021  x86_64  2021/09/02

-------------------------- analysis date: 2021/09/02 --------------------------

18:50:16  cpu  %usr %nice %sys %irq %softirq  %steal %guest  %wait %idle  _cpu_
18:50:17  all     0     0    0    0        0       0      0      0   200
            0     0     0    0    0        0       0      0      0   100
            1     0     0    0    0        0       0      0      0   100
18:50:18  all     0     0    0    0        0       0      0      0   200
            0     0     0    0    0        0       0      0      0   100
            1     0     0    0    0        0       0      0      0   100

특정 기간 동안의 데이터를 분석하려면 다음 명령을 실행합니다.

atopsar -A -b 13:00 -e 13:35

참고: -A 플래그는 당일의 기준에 맞는 모든 보고서를 생성합니다. 13:00을 시작 시간으로, 13:35를 종료 시간으로 바꾸십시오.

여러 출력을 검색하려면 atopsar 플래그를 단일 명령으로 결합합니다. 다음 명령 예시는 CPU 사용률, 프로세스(프로세서) 로드프로세스 및 스레드를 쿼리합니다.

atopsar -cpP

출력 예시:

ip-172-31-89-231 6.1.84-99.169.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Apr 8 19:19:48 UTC 2024 x86_64 2024/04/22
-------------------------- analysis date: 2024/04/22 --------------------------

07:59:27 cpu %usr %nice %sys %irq %softirq %steal %guest %wait %idle cpu
08:00:27 all 0 0 0 0 0 0 0 4 95
08:01:27 all 0 0 0 0 0 0 0 0 100
08:02:27 all 0 0 0 0 0 0 0 0 100
08:03:27 all 0 0 0 0 0 0 0 0 100

-------------------------- analysis date: 2024/04/22 --------------------------

07:59:27 pswch/s devintr/s clones/s loadavg1 loadavg5 loadavg15 load
08:00:27 203 70 1.07 0.13 0.29 0.14
08:01:27 53 31 0.07 0.05 0.23 0.13
08:02:27 59 31 0.87 0.02 0.19 0.12
08:03:27 68 35 0.22 0.00 0.15 0.10

-------------------------- analysis date: 2024/04/22 --------------------------

07:59:27 clones/s pexit/s curproc curzomb thrrun thrslpi thrslpu procthr
08:00:27 1.07 1.07 114 0 1 83 58
08:01:27 0.07 0.07 114 0 1 83 58
08:02:27 0.87 0.88 109 0 1 83 53
08:03:27 0.22 0.28 105 0 1 76 52

검색 및 표시되는 플래그 및 출력 값에 대한 자세한 목록은 Linux 매뉴얼 웹 사이트의 atopsar를 참조하십시오.

관련 정보

리소스 과다 사용으로 인해 EC2 Linux 인스턴스가 응답하지 않는 이유는 무엇입니까?

AWS 공식업데이트됨 일 년 전
댓글 없음