웹사이트 검색

Linux 도구 세트를 사용하여 시스템 활동 보고서를 생성하고 전달하는 방법 - 3부


시스템 엔지니어는 무엇보다도 1) 리소스가 최적으로 활용되고 있는지, 2) 병목 현상이 방지되는지, 3) 확장성을 보장하는지 확인하기 위해 시스템 리소스의 활용도를 보여주는 보고서를 생성해야 하는 경우가 많습니다.

몇 가지 예를 들자면 디스크, 메모리, CPU 사용량을 확인하는 데 사용되는 잘 알려진 기본 Linux 도구 외에도 Red Hat Enterprise Linux 7은 보고서를 위해 수집할 수 있는 데이터를 향상시키는 두 가지 추가 도구 세트를 제공합니다. sysstatdstat.

이 기사에서는 두 가지를 모두 설명하지만 먼저 기존 도구의 사용법을 검토해 보겠습니다.

기본 Linux 도구

df를 사용하면 파일 시스템별 디스크 공간과 inode 사용량을 보고할 수 있습니다. 공간이 부족하면 추가 파일을 저장할 수 없으므로 두 가지를 모두 모니터링해야 합니다(심지어 시스템 충돌을 일으킬 수도 있음). 마치 inode가 부족하면 추가 파일을 해당 데이터와 연결할 수 없다는 의미와 같습니다. 따라서 동일한 효과를 생성합니다. 즉, 해당 파일을 디스크에 저장할 수 없습니다.


df -h 		[Display output in human-readable form]
df -h --total         [Produce a grand total]


df -i 		[Show inode count by filesystem]
df -i --total 	[Produce a grand total]

du를 사용하면 파일, 디렉터리 또는 파일 시스템별로 파일 공간 사용량을 추정할 수 있습니다.

예를 들어, 사용자의 모든 개인 파일이 포함된 /home 디렉터리에서 얼마나 많은 공간을 사용하는지 살펴보겠습니다. 첫 번째 명령은 현재 전체 /home 디렉터리에서 사용되는 전체 공간을 반환하는 반면, 두 번째 명령은 하위 디렉터리별로 분리된 목록도 표시합니다.


du -sch /home
du -sch /home/*

놓치지 마세요:

  1. Linux 디스크 공간 사용량을 확인하는 12개의 'df' 명령 예
  2. 파일/디렉터리의 디스크 사용량을 찾는 10가지 'du' 명령 예

도구 세트에서 빠질 수 없는 또 다른 유틸리티는 vmstat입니다. 이를 통해 프로세스, CPU 및 메모리 사용량, 디스크 활동 등에 대한 정보를 한 눈에 볼 수 있습니다.

인수 없이 실행하면 vmstat은 마지막 재부팅 이후 평균을 반환합니다. 이 명령 형식을 가끔 사용할 수도 있지만, 샘플 간에 정의된 시간 간격을 두고 특정 양의 시스템 사용률 샘플을 차례로 취하는 것이 더 도움이 됩니다.

예를 들어,


vmstat 5 10

5초마다 채취한 10개의 샘플을 반환합니다.

위 그림에서 볼 수 있듯이 vmstat의 출력은 procs(프로세스), memory, swap, 열로 나뉩니다. >io, 시스템CPU. 각 필드의 의미는 vmstat 매뉴얼 페이지의 필드 설명 섹션에서 확인할 수 있습니다.

vmstat는 어디에 유용합니까? yum 업데이트 전과 도중의 시스템 동작을 살펴보겠습니다.


vmstat -a 1 5

파일이 디스크에서 수정됨에 따라 활성 메모리 양이 증가하고 디스크에 기록된 블록 수도 (bo) 증가하며 CPU 시간도 증가합니다. (우리) 사용자 프로세스 전용입니다.

또는 대용량 파일을 디스크에 직접 저장하는 동안(dsync로 인해 발생):


vmstat -a 1 5
dd if=/dev/zero of=dummy.out bs=1M count=1000 oflag=dsync

이 경우 예상했던 것보다 더 많은 수의 블록이 디스크 (bo)에 기록되는 것을 볼 수 있지만 기다려야 하는 CPU 시간도 늘어납니다. 작업을 처리하기 전에 완료해야 하는 I/O 작업 (wa).

놓치지 마세요: Vmstat - Linux 성능 모니터링

기타 Linux 도구

이 장의 서두에서 언급했듯이 시스템 상태와 활용도를 확인하는 데 사용할 수 있는 다른 도구가 있습니다(이 도구는 Red Hat에서 제공할 뿐만 아니라 공식적으로 지원되는 다른 주요 배포판에서도 제공됩니다). 저장소).

sysstat 패키지에는 다음 유틸리티가 포함되어 있습니다.

  1. sar(시스템 활동 정보 수집, 보고 또는 저장).
  2. sadf(sar가 수집한 데이터를 여러 형식으로 표시).
  3. mpstat(보고서 프로세서 관련 통계)
  4. iostat(기기 및 파티션에 대한 CPU 통계 및 I/O 통계 보고)
  5. pidstat(Linux 작업에 대한 통계 보고).
  6. nfsiostat(NFS에 대한 입력/출력 통계 보고)
  7. cifsiostat(CIFS 통계 보고) 및
  8. sa1(시스템 활동 일일 데이터 파일에 바이너리 데이터를 수집하고 저장합니다.
  9. sa2(/var/log/sa 디렉토리에 일일 보고서 작성) 도구.

반면 dstat은 이러한 도구가 제공하는 기능에 더 많은 카운터 및 유연성과 함께 몇 가지 추가 기능을 추가합니다. yum info sysstat 또는 yum info dstat을 각각 실행하거나 설치 후 개별 매뉴얼 페이지를 확인하여 각 도구에 대한 전반적인 설명을 확인할 수 있습니다.

두 패키지를 모두 설치하려면:


yum update && yum install sysstat dstat

sysstat의 기본 구성 파일은 /etc/sysconfig/sysstat입니다. 해당 파일에서 다음 매개변수를 찾을 수 있습니다.


How long to keep log files (in days).
If value is greater than 28, then log files are kept in
multiple directories, one for each month.
HISTORY=28
Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER=31
Parameters for the system activity data collector (see sadc manual page)
which are used for the generation of log files.
SADC_OPTIONS="-S DISK"
Compression program to use.
ZIP="bzip2"

sysstat이 설치되면 두 개의 크론 작업이 /etc/cron.d/sysstat에 추가되고 활성화됩니다. 첫 번째 작업은 10분마다 시스템 활동 계산 도구를 실행하고 XX/var/log/sa/saXX에 보고서를 저장합니다. 달의 일.

따라서 /var/log/sa/sa05에는 해당 월 5일의 모든 시스템 활동 보고서가 포함됩니다. 이는 위 구성 파일의 HISTORY 변수에 기본값을 사용한다고 가정합니다.


*/10 * * * * root /usr/lib64/sa/sa1 1 1

두 번째 작업은 매일 오후 11:53에 프로세스 회계에 대한 일일 요약을 생성하여 /var/log/sa/sarXX 파일에 저장합니다. 여기서 XX 은 이전 예와 동일한 의미를 갖습니다.


53 23 * * * root /usr/lib64/sa/sa2 -A

예를 들어, 매월 6일 오전 9시 30분부터 오후 5시 30분까지의 시스템 통계를 .csv 로 출력할 수 있습니다. LibreOffice Calc 또는 Microsoft Excel을 사용하여 쉽게 볼 수 있는 파일(이 방법을 사용하면 차트나 그래프를 만들 수도 있습니다):


sadf -s 09:30:00 -e 17:30:00 -dh /var/log/sa/sa06 -- | sed 's/;/,/g' > system_stats20150806.csv

또는 위의 sadf 명령에서 -d 대신 -j 플래그를 사용하여 JSON 으로 시스템 통계를 출력할 수 있습니다. 형식은 예를 들어 웹 애플리케이션에서 데이터를 소비해야 하는 경우 유용할 수 있습니다.

마지막으로 dstat이 무엇을 제공하는지 살펴보겠습니다. 인수 없이 실행하는 경우 dstat는 기본적으로 -cdngy(각각 CPU, 디스크, 네트워크, 메모리 페이지 및 시스템 통계의 약어)로 가정하고 하나를 추가합니다. 매초마다 한 줄씩 실행합니다(Ctrl + C를 사용하여 언제든지 실행을 중단할 수 있음).


dstat

통계를 .csv 파일로 출력하려면 –output 플래그 뒤에 파일 이름을 사용하세요. LibreOffice Calc에서 이것이 어떻게 보이는지 살펴보겠습니다.

읽기의 편의를 위해 PDF 형식의 sysstat 매뉴얼 페이지와 함께 dstat 매뉴얼 페이지를 확인하는 것이 좋습니다. 사용자 정의 및 세부 시스템 활동 보고서를 생성하는 데 도움이 되는 몇 가지 다른 옵션을 찾을 수 있습니다.

놓치지 마세요: Sysstat – Linux 사용 활동 모니터링 도구

요약

이 가이드에서는 시스템 활용도에 대한 보고서를 생성하기 위해 기본 Linux 도구와 RHEL 7에서 제공되는 특정 유틸리티를 모두 사용하는 방법을 설명했습니다. 어느 시점에서 당신은 이러한 보고서를 가장 친한 친구로 여기게 될 것입니다.

아마도 이 튜토리얼에서 다루지 않은 다른 도구를 사용했을 것입니다. 그렇다면 아래 양식을 사용하여 다른 제안/질문/의견과 함께 나머지 커뮤니티와 자유롭게 공유해 주세요.

우리는 귀하의 의견을 기다리겠습니다.