728x90
Bash 스크립트로 서버 포트 상태 모니터링하는 방법 - netstat과 awk 활용
Shell Script로 여러 단어를 찾는 방법은 알아두면 용이합니다.
netstat와 여러 개의 port를 탐색하는데 grep -E 와 awk를 이용한 방법을 정리드립니다.
이 스크립트는 netstat과 awk를 사용해 서버의 주요 포트(3000, 9091, 9092 등)의 LISTEN 상태를 자동화하여 확인하는 방법입니다..
각 포트 목록을 정의하고 각 상태를 순회하며 LISTEN 중인지 출력하고, 특정 포트들에 대한 상태를 별도로 검사해 표시할수 있고 , 서버 관리 및 포트 모니터링을 간편하게 수행할 수 있습니다.
#grep -E 를 이용한 여러 Port 상태 조회
아래 예시와 같이 하나의 bash 명령으로 확인이 가능하다는 장점이 있습니다. (정규식을 이용한 문자열 찾기 용이함)
echo "-Netstat Port Status -------------------"
netstat -antp | grep -E "(3000|3306|9000|9180|9091|9092|9443|9080|9090|8080|80)"
# awk를 이용한 여러 Port 상태 조회
- awk를 이용하여 다양한 상황별로 상태 확인이 가능합니다. (awk를 이용하면 반복되는 데이터 탐색이 용이함)
#!/bin/bash
# 확인할 포트 리스트
PORTS="3000 9091 9092 9443 9090 9180 3306"
# 각 포트를 순회하면서 LISTEN 상태 확인
for PORT in $PORTS; do
# echo "Checking port $PORT..."
netstat -antl | egrep "*:$PORT.*LISTEN" | awk -v PORT=$PORT '
END { if(NR>0) { printf "Checking Port [%s]: Ok : %s %s -> %s\n", PORT, $1, $4, $5;}
else { printf "Checking Port [%s]: None:\n", PORT; }
} ';
done
728x90
반응형
'InfraPlatform' 카테고리의 다른 글
[VMWare Alternative] 상용 서버 가상화 기술 비교 - Vmware- Hypervisor- Promox (2) | 2024.11.23 |
---|---|
`kernel.printk` 커널 메시지 출력 레벨을 설정 (3) | 2024.11.15 |
Rocky Linux - 리눅스 커널 업그레이드를 위해 꼭 알아야 하는 grubby 명령어 (9) | 2024.09.22 |
오픈소스 API 플랫폼 - Apache APISIX 특징과 설치(1) (1) | 2024.08.25 |
오픈소스 API 플랫폼 - Apache APISIX - 아키텍처(2) (0) | 2024.08.24 |
Linux Docker Install (4) | 2024.08.23 |
Linux run level 변경 - CLI와 GUI 모드 전환하는 방법 (4) | 2024.08.23 |