본문 바로가기
Linux

Linux 서버에 부하가 있을 때 상태를 빠르게 확인하는 데 사용할 수 있는 몇 가지 명령어

by hiit 2023. 2. 10.
728x90
반응형

Linux 서버에 부하가 있을 때 상태를 빠르게 확인하는 데 사용할 수 있는 명령어 몇 가지 있습니다. 다음은 가장 일반적으로 사용되는 명령어입니다.

top: 시스템에서 실행 중인 프로세스에 대한 정보를 제공하는 실시간 시스템 모니터링 도구입니다. top을 사용하면 PID, 사용자, 우선순위, CPU 사용량, 메모리 사용량 등을 포함하여 시스템에서 실행 중인 모든 프로세스 목록을 볼 수 있습니다.

다음은 top을 사용하여 볼 수 있는 일부 정보에 대한 간략한 개요입니다.

System Load : 상단 출력의 첫 번째 줄에는 지난 1분, 5분 및 15분 동안의 평균 부하를 포함하여 전체 시스템 부하가 표시됩니다.

Processes : 상단 출력의 주요 부분에는 PID, 사용자, 우선 순위, CPU 사용량, 메모리 사용량 등을 포함하여 시스템에서 실행 중인 프로세스 목록이 표시됩니다. 기본적으로 프로세스는 CPU 사용률을 기준으로 정렬되지만 m 키를 눌러 메모리 사용량과 같은 다른 메트릭을 기준으로 목록을 정렬할 수 있습니다.

CPU usage : 상단 출력의 두 번째 줄에는 각 CPU 코어의 사용량과 시스템 전체의 사용량을 포함한 전체 CPU 사용량이 표시됩니다.

Memory usage : 상단 출력의 세 번째 줄에는 사용 가능한 메모리, 사용된 메모리 및 캐시된 메모리의 양을 포함하여 전체 메모리 사용률이 표시됩니다.

Task Management : top 명령을 사용하여 시스템에서 실행 중인 작업을 관리할 수 있습니다. 예를 들어 k를 누르고 해당 PID를 입력하여 프로세스를 종료할 수 있습니다. r을 누르고 새 우선순위 값을 입력하여 프로세스의 우선순위를 변경할 수도 있습니다.

top은 Linux 시스템에서 프로세스를 모니터링하고 관리하는 데 사용할 수 있는 강력하고 유연한 도구입니다. 성능 병목 현상을 식별하고 리소스 활용 문제를 해결하는 데 특히 유용합니다.

 


ps:  시스템에서 실행 중인 프로세스에 대한 정보를 표시하는 데 사용됩니다. 프로세스 ID(PID), 명령 이름, 프로세스를 실행하는 사용자, 시작 시간 및 프로세스 상태를 포함하여 현재 프로세스 상태의 스냅샷을 제공합니다.

다음은 ps 명령에 가장 일반적으로 사용되는 옵션에 대한 간략한 개요입니다.

-ef 또는 -aux: 이 옵션은 다른 사용자로 실행 중인 프로세스를 포함하여 시스템의 모든 프로세스에 대한 정보를 표시합니다.

-u username: 이 옵션은 특정 사용자에 대해 실행 중인 프로세스에 대한 정보를 표시합니다.

-p PID: 이 옵션은 PID로 식별되는 특정 프로세스에 대한 정보를 표시합니다.

-o 형식: 이 옵션을 사용하면 표시할 필드 및 표시 순서를 포함하여 출력 형식을 지정할 수 있습니다.

-l: 이 옵션은 우선 순위, 상주 집합 크기(RSS) 및 시작 시간을 포함하여 각 프로세스에 대한 추가 정보를 표시합니다.

ps는 리소스 사용률, 상태 및 시작 시간에 대한 정보를 포함하여 시스템에서 실행 중인 프로세스에 대한 빠른 개요를 얻을 수 있는 유용한 도구입니다. 다양한 옵션과 형식 지정자를 사용하여 특정 요구 사항에 맞게 ps 명령의 출력을 사용자 정의할 수 있습니다.



free: 시스템의 메모리 사용량에 대한 정보를 표시하는 데 사용됩니다. 캐시 및 버퍼에 사용된 메모리 양을 포함하여 시스템에서 사용 가능한 메모리 양과 사용된 메모리 양에 대한 요약을 제공합니다.

다음은 free 명령으로 표시되는 정보에 대한 간략한 개요입니다.

Total: 시스템에 설치된 실제 메모리의 총량입니다.

Used: 캐시 및 버퍼를 포함하여 시스템에서 현재 사용 중인 메모리의 양입니다.

Free: 현재 응용 프로그램에서 사용할 수 있는 메모리 양입니다.

Shared: 여러 프로세스 간에 공유되는 메모리 양입니다.

Buffers: 디스크 버퍼와 같은 버퍼에 사용되는 메모리 양입니다.

Cache: 파일 시스템 캐시와 같은 캐시에 사용 중인 메모리의 양입니다.

Available: 여유 메모리, 캐시 및 버퍼를 포함하여 사용할 수 있는 메모리 양입니다.

free 명령은 시스템의 현재 메모리 사용량에 대한 빠른 개요를 얻는 데 유용합니다. 메모리 관련 성능 병목 현상을 식별하고 시스템의 전체 메모리 사용률을 모니터링하는 데 특히 유용합니다. free 명령으로 표시되는 정보는 시스템에 더 많은 메모리가 필요한지 또는 시스템에서 실행 중인 응용 프로그램의 메모리 사용 패턴을 최적화해야 하는지를 결정하는 데 사용할 수 있습니다.



iostat: 디스크 및 CPU 사용률을 포함하여 시스템 입/출력(I/O) 성능에 대한 정보를 표시하는 데 사용됩니다. 이 명령은 초당 전송 수, 초당 전송된 킬로바이트 수 및 평균 응답 시간을 포함하여 시스템의 I/O 활동에 대한 통계를 제공합니다.


다음은 iostat에서 제공하는 몇 가지 주요 정보입니다.

CPU utilization: iostat 명령은 사용자 모드, 시스템 모드 및 유휴 모드에서 소요된 시간의 백분율을 포함하여 CPU 사용률에 대한 정보를 제공합니다.

Disk utilization: iostat 명령은 초당 전송 수, 초당 전송된 킬로바이트 수 및 평균 응답 시간을 포함하여 디스크 드라이브 사용률에 대한 정보를 제공합니다.

Disk I/O service time: iostat 명령은 평균 서비스 시간 및 서비스 시간 표준 편차를 포함하여 디스크 I/O 요청을 완료하는 데 걸리는 시간에 대한 정보를 제공합니다.

Disk I/O queue length: iostat 명령은 평균 대기열 길이 및 대기열 길이 표준 편차를 포함하여 디스크 I/O 대기열의 길이에 대한 정보를 제공합니다.

iostat 명령을 사용하여 디스크 I/O 대기 시간, 느린 디스크 I/O 응답 시간 및 I/O 작업으로 인한 높은 CPU 사용률을 포함하여 I/O 작업과 관련된 성능 병목 현상을 신속하게 식별할 수 있습니다. iostat에서 제공하는 정보는 시스템의 I/O 성능을 최적화하고 응용 프로그램이 효율적으로 실행하는 데 필요한 I/O 리소스를 갖도록 하는 데 사용할 수 있습니다.

vmstat: 시스템 가상 메모리 및 프로세스 통계에 대한 정보를 표시하는 데 사용됩니다. 이 명령은 사용 가능한 메모리와 사용된 메모리의 양, 메모리를 기다리는 프로세스 수, 스왑 인/아웃된 페이지 수를 포함하여 시스템의 현재 상태에 대한 요약을 제공합니다.

다음은 vmstat에서 제공하는 몇 가지 주요 정보입니다.

Memory utilization: vmstat 명령은 캐시 및 버퍼에 사용되는 메모리 양뿐만 아니라 여유, 사용 및 사용 가능한 메모리 양을 포함하여 시스템 메모리 사용률에 대한 정보를 제공합니다.

Process statistics: vmstat 명령은 실행 중인 프로세스와 차단된 프로세스의 수, 무중단 절전 상태의 프로세스 수 및 포크 수를 포함하여 시스템에서 실행 중인 프로세스에 대한 정보를 제공합니다.

Swapping: vmstat 명령은 스와핑된 페이지 수와 페이지 아웃 데몬이 스캔한 페이지 수를 포함하여 시스템의 스와핑 동작에 대한 정보를 제공합니다.

Interrupts and context switches: vmstat 명령은 초당 인터럽트 수 및 초당 컨텍스트 스위치 수를 포함하여 시스템의 인터럽트 및 컨텍스트 스위치 활동에 대한 정보를 제공합니다.

vmstat 명령을 사용하면 메모리 사용률, 프로세스 활동 및 스와핑 동작과 관련된 성능 병목 현상을 빠르게 식별할 수 있습니다. vmstat에서 제공하는 정보는 시스템 성능을 최적화하고 응용 프로그램이 효율적으로 실행하는 데 필요한 메모리 리소스를 갖도록 하는 데 사용할 수 있습니다.

mpstat: 다중 프로세서 시스템에서 개별 CPU 코어의 사용률에 대한 정보를 표시하는 데 사용됩니다. 이 명령은 평균 사용률, 인터럽트 수 및 컨텍스트 스위치 수를 포함하여 각 CPU 코어의 사용률에 대한 통계를 제공합니다.

다음은 mpstat에서 제공하는 몇 가지 주요 정보입니다.

CPU utilization: mpstat 명령은 평균 사용률 및 개별 코어의 사용률을 포함하여 다중 프로세서 시스템에서 각 CPU 코어의 사용률에 대한 정보를 제공합니다.

Interrupts: mpstat 명령은 총 인터럽트 수 및 초당 인터럽트 수를 포함하여 각 CPU 코어에서 처리하는 인터럽트 수에 대한 정보를 제공합니다.

Context switches: mpstat 명령은 총 컨텍스트 스위치 수 및 초당 컨텍스트 스위치 수를 포함하여 다중 프로세서 시스템의 컨텍스트 스위치 수에 대한 정보를 제공합니다.

mpstat 명령을 사용하여 CPU 사용률, 인터럽트 처리 및 컨텍스트 전환 동작과 관련된 성능 병목 현상을 빠르게 식별할 수 있습니다. mpstat에서 제공하는 정보는 다중 프로세서 시스템의 성능을 최적화하고 응용 프로그램이 효율적으로 실행하는 데 필요한 CPU 리소스를 갖도록 하는 데 사용할 수 있습니다.


sar: CPU 사용률, 메모리 사용률, 디스크 I/O 활동 및 네트워크 활동을 포함한 시스템 성능 정보를 표시하는 데 사용됩니다. 이 명령은 sysstat 패키지에서 수집한 기록 성능 데이터를 제공하므로 지정된 기간 동안의 성능 데이터를 볼 수 있습니다.

다음은 sar에서 제공하는 몇 가지 주요 정보입니다.

CPU utilization: sar 명령은 사용자 모드, 시스템 모드 및 유휴 모드에서 소요된 시간의 백분율을 포함하여 CPU 사용률에 대한 정보를 제공합니다.

Memory utilization: sar 명령은 캐시 및 버퍼에 사용되는 메모리 양뿐만 아니라 여유, 사용 및 사용 가능한 메모리 양을 포함하여 시스템 메모리 사용률에 대한 정보를 제공합니다.

Disk I/O activity: sar 명령은 초당 전송 수, 초당 전송된 킬로바이트 수 및 평균 응답 시간을 포함하여 디스크 I/O 활동에 대한 정보를 제공합니다.

Network activity: sar 명령은 수신 및 전송된 패킷 수, 오류 및 충돌 수, 네트워크 인터페이스 사용을 포함하여 네트워크 활동에 대한 정보를 제공합니다.

sar 명령을 사용하면 시간 경과에 따른 성능 추세와 이상 현상을 신속하게 식별하여 성능 병목 현상을 감지하고 성능 문제를 해결할 수 있습니다. sar에서 제공하는 정보는 시스템 성능을 최적화하고 응용 프로그램이 효율적으로 실행하는 데 필요한 리소스를 갖도록 하는 데 사용할 수 있습니다.

이들은 Linux 서버의 상태를 확인하기 위해 가장 일반적으로 사용되는 명령 중 일부에 불과합니다. 이러한 명령을 사용하여 시스템 리소스 활용에 대한 빠른 개요를 얻고 잠재적인 성능 병목 현상을 식별할 수 있습니다.

728x90
반응형

댓글