서버 시스템 성능 모니터링에는 CPU, Memory, Disk 등의 항목이 필요한데요.
리눅스 환경에서 이런 리소스들을 확인할 수 있는 다양한 명령어들을 지원하고 있습니다!
📌 uname [시스템 정보]
Uname 명령어를 사용하면 시스템과 커널의 정보를 확인할 수 있습니다.
-a 옵션을 사용하면 모든 정보를 확인할 수 있습니다.
- 시스템명 (System Name): Linux
- 이 부분은 운영 체제 이름을 나타냅니다. 여기서는 "Linux"입니다.
- 노드명 (Node Name): anymonfm
- 이 부분은 네트워크 노드의 이름을 나타냅니다. 일반적으로 호스트의 네트워크 이름이 여기에 표시됩니다. 여기서는 "anymonfm"입니다.
- 커널 발행 버전 (Kernel Release): 5.15.0-88-generic
- 이 부분은 현재 사용 중인 커널의 버전을 나타냅니다. 여기서는 "5.15.0-88-generic"입니다.
- 커널 버전 (Kernel Version): #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023
- 이 부분은 커널의 전체 버전 및 빌드 정보를 나타냅니다. 여기서는 "98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023"입니다.
- 머신 (Machine): x86_64
- 이 부분은 시스템의 하드웨어 아키텍처를 나타냅니다. 여기서는 "x86_64"입니다.
- 처리기 타입 (Processor Type): x86_64
- 이 부분은 시스템의 프로세서 유형을 나타냅니다. 여기서는 "x86_64"입니다.
- 운영 체제 타입 (Operating System Type): GNU/Linux
- 이 부분은 운영 체제 유형을 나타냅니다. 여기서는 "GNU/Linux"입니다.
옵션
- a, --all: 모든 정보를 출력합니다. 다음 순서로 출력됩니다. 단, 알 수 없는 경우에는 -p와 -i를 제외합니다.
- s, --kernel-name: 커널 이름을 출력합니다.
- n, --nodename: 네트워크 노드 호스트 이름을 출력합니다.
- r, --kernel-release: 커널 릴리스를 출력합니다.
- v, --kernel-version: 커널 버전을 출력합니다.
- m, --machine: 머신 하드웨어 이름을 출력합니다.
- p, --processor: 프로세서 유형을 출력합니다. (이동 불가능)
- i, --hardware-platform: 하드웨어 플랫폼을 출력합니다. (이동 불가능)
- o, --operating-system: 운영 체제를 출력합니다.
- -help: 도움말을 표시하고 종료합니다.
- -version: 버전 정보를 출력하고 종료합니다.
📌 top [운영체제 프로세스 모니터링]
프로세스 작업 명령어로, 시스템 프로세스들의 CPU/Memory 점유율을 실시간으로 볼 수 있습니다. 현재 몇 개의 프로세스가 있는지, CPU의 자세한 사용률은 어떻게 되는지, Memory와 Swap은 얼마나 사용하고 있는지를 확인할 수 있습니다.
- 시간 (Time): 현재 시간을 나타냅니다. 여기서는 "13:40:03"입니다.
- 업타임 (Up time): 시스템의 부팅 후 경과된 시간을 나타냅니다. 여기서는 "135 days, 4:31"입니다.
- 사용자 수 (Users): 현재 로그인한 사용자 수를 나타냅니다. 여기서는 "7 users"입니다.
- 로드 평균 (Load Average): 시스템의 부하를 나타내는 세 개의 숫자입니다. 순서대로 1분, 5분, 15분 동안의 부하 평균을 나타냅니다. 여기서는 "2.88, 2.09, 1.87"입니다.
- 작업 (Tasks): 시스템에서 실행 중인 작업의 개수를 나타냅니다. 여기서는 "233 total"입니다.
- CPU 사용량 (%Cpu(s)): CPU의 사용량을 각 부분별로 표시합니다. 여기서는 다음과 같습니다:
- us (User): 사용자 공간에서 CPU가 소비하는 시간 (9.3%)
- sy (System): 시스템 공간에서 CPU가 소비하는 시간 (4.0%)
- ni (Nice): 우선순위가 높은 프로세스의 사용 시간 (0.0%)
- id (Idle): CPU가 아무 작업을 하지 않고 유휴 상태인 시간 (76.0%)
- wa (IO Wait): IO 작업을 기다리는 시간 (10.7%)
- hi (Hardware IRQ): 하드웨어 인터럽트에서 소비되는 시간 (0.0%)
- si (Software IRQ): 소프트웨어 인터럽트에서 소비되는 시간 (0.0%)
- st (Steal): 가상 환경에서 다른 하드웨어에 의해 소비되는 시간 (0.0%)
- 메모리 사용량 (MiB Mem): 시스템의 메모리 사용량을 표시합니다. 여기서는 다음과 같습니다:
- total: 전체 메모리 용량 (88572.7 MiB)
- free: 사용 가능한 메모리 용량 (38513.0 MiB)
- used: 사용 중인 메모리 용량 (48655.2 MiB)
- buff/cache: 버퍼 및 캐시로 사용 중인 메모리 용량 (1404.6 MiB)
- 스왑 사용량 (MiB Swap): 시스템의 스왑 사용량을 표시합니다. 여기서는 다음과 같습니다:
- total: 전체 스왑 용량 (8192.0 MiB)
- free: 사용 가능한 스왑 용량 (7512.5 MiB)
- used: 사용 중인 스왑 용량 (679.5 MiB)
- avail Mem: 사용 가능한 메모리 용량 (38907.5 MiB)
- PID: 프로세스의 고유 식별자인 프로세스 ID를 나타냅니다.
- USER: 프로세스를 실행한 사용자의 이름을 나타냅니다.
- PR: 프로세스의 우선순위를 나타냅니다. 낮은 값이 높은 우선순위를 의미합니다.
- NI: 프로세스의 Nice 값입니다. 이 값이 높을수록 프로세스의 우선순위가 낮아집니다.
- VIRT: 가상 메모리에 할당된 총 메모리 양을 나타냅니다. (KiB 단위)
- RES: 실제 메모리에서 사용 중인 메모리 양을 나타냅니다. (KiB 단위)
- SHR: 공유 메모리를 나타냅니다. (KiB 단위)
- S: 프로세스의 상태를 나타냅니다. 대표적으로 다음과 같은 상태가 있습니다:
- R: 실행 중인 상태 (Running)
- S: 대기 중인 상태 (Sleeping)
- D: 블록킹 I/O를 기다리는 상태 (Waiting)
- Z: 좀비 상태 (Zombie)
- T: 정지된 상태 (Stopped)
- <: 우선순위가 높은 프로세스 (High-priority)
- N: 우선순위가 낮은 프로세스 (Low-priority)
- %CPU: 프로세스가 CPU를 사용하는 비율을 나타냅니다.
- %MEM: 프로세스가 메모리의 얼마를 사용하는지의 비율을 나타냅니다.
- TIME+: 프로세스가 실행된 총 시간을 나타냅니다.
- COMMAND: 실행된 프로세스의 명령어 이름을 나타냅니다.
정렬
- SHIFT + M: 메모리 사용량(MEM%)에 따라 정렬
- SHIFT + P: CPU 사용량(CPU%)에 따라 정렬
- SHIFT + T: 프로세스 실행 시간에 따라 정렬
- SHIFT + N: PID에 따라 정렬
- SHIFT + W: 현재 설정된 정렬을 저장하여 나중에 재사용할 수 있도록 합니다.
📌 free [메모리 모니터링]
메모리에 대한 정보를 확인할 수 있습니다.
- total: 전체 메모리 또는 스왑 공간의 총 용량을 나타냅니다. 여기서는 메모리와 스왑 각각에 대한 총 용량이 표시됩니다.
- used: 현재 사용 중인 메모리 또는 스왑 공간의 양을 나타냅니다. 여기서는 메모리와 스왑 각각에 대한 사용 중인 용량이 표시됩니다.
- free: 현재 사용 가능한 메모리 또는 스왑 공간의 양을 나타냅니다. 여기서는 메모리와 스왑 각각에 대한 사용 가능한 용량이 표시됩니다.
- shared: 여러 프로세스가 공유하는 메모리의 양을 나타냅니다. 일반적으로 리눅스 시스템에서는 이 값이 사용되지 않습니다.
- buff/cache: 버퍼 및 캐시로 사용되는 메모리의 양을 나타냅니다. 이 메모리는 파일 시스템과 관련된 작업에서 사용되며 필요에 따라 프로세스가 사용할 수 있습니다.
- available: 시스템이 추가 프로세스를 실행하기 위해 사용 가능한 메모리의 추정치를 나타냅니다. 이 값은 실제로 사용 가능한 메모리가 아니며, 캐시와 버퍼를 포함하여 계산됩니다. 사용 가능한 메모리가 낮을수록 시스템 성능에 영향을 미칠 수 있습니다.
📌 df [디스크 모니터링]
현재 디스크의 전체 용량 및 남은 용량을 확인할 수 있습니다.
- Filesystem: 파일 시스템의 이름을 나타냅니다. 여기서는 각 파일 시스템의 이름이 표시됩니다.
- Size: 파일 시스템의 총 크기를 나타냅니다. 일반적으로 GB 또는 TB 단위로 표시됩니다.
- Used: 파일 시스템에서 사용 중인 공간의 양을 나타냅니다. 마찬가지로 GB 또는 TB 단위로 표시됩니다.
- Avail: 파일 시스템에서 사용 가능한 공간의 양을 나타냅니다. 마찬가지로 GB 또는 TB 단위로 표시됩니다.
- Use%: 파일 시스템에서 사용 중인 공간의 백분율을 나타냅니다. 사용 중인 공간과 사용 가능한 공간의 비율입니다.
- Mounted on: 파일 시스템이 마운트된 디렉터리의 경로를 나타냅니다. 여기서는 각 파일 시스템이 마운트된 디렉터리의 경로가 표시됩니다.
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
댓글