본문으로 바로가기
반응형

작업환경

CentOS 7.4 



스크립트 특이사항 : 모니터링을 진행할 세 서버 모두 패스워드 동일, root 다이렉트 접근 



#!/bin/bash


########################################################### 변수 CHECK

PW="[서버패스워드]

SERVER1="[서버 IP 1번]"

SERVER2="[서버 IP 2번]"

SERVER3="[서버 IP 3번]"


mem=`free -m | awk 'NR==2{printf "%s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }'`

disk=`df -h | awk '$NF=="/"{printf "%d/%dGB (%s)\n", $3,$2,$5}'`

cpu=`top -bn1 | grep load | awk '{printf "%.2f\n", $(NF-2)}'`


SERVER_CMD_1="sshpass -p $PW  ssh -o StrictHostKeyChecking=no root@$SERVER1"

SERVER_CMD_2="sshpass -p $PW  ssh -o StrictHostKeyChecking=no root@$SERVER2"

SERVER_CMD_3="sshpass -p $PW  ssh -o StrictHostKeyChecking=no root@$SERVER3"



########################################################### 명령어 실행

clear

echo -e "\e[1;31m

######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## 

#     ## ##       ####     #####    ###   ## ###      #####    ##       ######## ##    ## #  ##  # #      # ##    ## #  ##  # ######## ##    ## ##    ## 

#  ##  # ##   ### ###   ## ###   ## ###   ## ###   ## ###   ## ##   ### ######## #  ##  # #  ##  # #  ##### #  ##  # #  #  ## ######## ##    ## ##    ## 

#  ##  # ##       ####     ##   ### ###   ## ###   ## ##   ### ##       ######## #  ##### #      # #    ### #  ##### #    ### ######## ###  ### ###  ### 

#     ## ##   ### ######## ##   ### ###   ## ###      ##   ### ##   ### ######## #  ##### #  ##  # #  ##### #  ##### #    ### ######## ######## ######## 

#  #  ## ##   ### ###   ## ###   ## ###   ## ###   ## ###   ## ##   ### ######## #  ##  # #  ##  # #  ##### #  ##  # #  #  ## ######## ######## ######## 

#  ##  # ##       ####     #####    ####     ###   ## #####    ##       ######## ##    ## #  ##  # #      # ##    ## #  ##  # ######## ###  ### ###  ### 

######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## ######## \e[0m"

echo ""

echo ""

echo ""

echo -e "\033[1;36m▶ $SERVER1 의 리소스 정보\033[0m"

$SERVER_CMD_1 free -m | awk 'NR==2{printf "1) 메모리 사용량 : %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }'

$SERVER_CMD_1 df -h | awk '$NF=="/"{printf "2) 디스크 사용량 %d/%dGB (%s)\n", $3,$2,$5}'

$SERVER_CMD_1 top -bn1 | grep load | awk '{printf "3) CPU 부하율 : %.2f\n", $(NF-2)}'

echo""

echo""

echo -e "\033[1;36m▶ $SERVER2 의 리소스 정보\033[0m"

$SERVER_CMD_2 free -m | awk 'NR==2{printf "1) 메모리 사용량 : %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }'

$SERVER_CMD_2 df -h | awk '$NF=="/"{printf "2) 디스크 사용량 %d/%dGB (%s)\n", $3,$2,$5}'

$SERVER_CMD_2 top -bn1 | grep load | awk '{printf "3) CPU 부하율 : %.2f\n", $(NF-2)}'

echo""

echo -e "\033[1;36m▶ $SERVER3 의 리소스 정보\033[0m"

$SERVER_CMD_3 free -m | awk 'NR==2{printf "1) 메모리 사용량 : %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }' 

$SERVER_CMD_3 df -h | awk '$NF=="/"{printf "2) 디스크 사용량 %d/%dGB (%s)\n", $3,$2,$5}' 

$SERVER_CMD_3 top -bn1 | grep load | awk '{printf "3) CPU 부하율 : %.2f\n", $(NF-2)}'

 






▷ 스크립트 실행 결과



반응형

'개발 > BASH' 카테고리의 다른 글

서버 포트 체크  (0) 2022.06.13
리소스 사용률 퍼센트 확인  (0) 2022.06.13
mysql 데이터베이스 테이블 체크 스크립트  (0) 2020.12.17
서비스 데몬 자동으로 시작하기  (0) 2020.09.29