DIY로 만든 서버실 온도 감시 시스템(Rainbow Guard Project)
- Posted at 2016/10/31 18:33
- Filed under 지식관리
그러다 보니 서버실의 더운 공기를 식히고 순환시켜주는 에어컨이나 공조장치들의 역할이 중요합니다. 보통은 에어컨에 적정온도를 맞춰 두고 24시간 가동하여 이런 문제를 대비하지만 언제나 그렇듯 사고는 예상치 못할 때 발생합니다.
의외로 이런 사고는 경험상 여름보다는 겨울이나 초여름에 잘 발생했습니다. 지난 겨울에는 실외기가 너무 추운 바깥 공기에 얼어붙어 버려서 냉매의 순환에 문제가 생겨 차가운 바람이 충분히 나오지 않는 문제가 생겼습니다. 그리고 보통 겨울에는 여름보다 조금 높은 온도를 에어컨에 설정해 두는데 갑자기 더위가 찾아오는 초여름에 너무 높아진 온도에 비해 충분히 차가운 바람을 내지 못하면서 서버실의 온도가 높아진 적도 있습니다.
이런 사고를 몇 번 겪었을 무렵 세상은 IoT(Internet on Things) 열풍이 불기 시작했습니다. 그중에서도 저의 관심을 끌었던 장비가 바로 라즈베리 파이(Raspberry Pi) 입니다. 라즈베리 파이는 영국 잉글랜드의 라즈베리 파이 재단이 학교와 개발도상국에서 기초 컴퓨터 과학의 교육을 증진시키기 위해 개발한 신용카드 크기의 싱글 보드 컴퓨터입니다. 크기는 작지만 하드디스크 대신 SD카드를 사용하고 HDMI 포트로 모니터와 연결도 가능하며 LAN포트도 있어서 인터넷 연결도 되는 엄연한 컴.퓨.터 입니다.
<스마트폰 보다 더 작은 컴퓨터, 라즈베리파이>
저는 이 라즈베리 파이에 몹시 흥미를 느꼈습니다. 그리고 이 작은 컴퓨터를 이용해 회사가 겪고 있는 어떤 문제를 해결하는데 사용하고 싶었습니다. 바로 우리 서버실을 높은 온도로부터 지켜줄 수 있는 장치를 만들고 싶었습니다.
저는 이 프로젝트의 이름을 Rainbow Guard Project 라고 이름을 지었습니다.
보통 서버들은 host name이라고 부르는 별명을 가지고 있습니다. 보통은 node0, node1, node2 이렇게 이름을 짓거나 소속 기관의 영어 약자로 붙여주곤 합니다. 디자인에 강한 우리 인실리코젠은 각 서버들의 성격에 맞는 색을 이름으로 지어 줬습니다.
- 강력한 파워를 자랑하는 분석 서버에게는 BLACK
- CPU가 많아 언제나 많은 분석량을 자랑하는 서버에게는 RED
- 많은 고객이 찾아오는 웹사이트를 운영하는 서버에는 GREEN
- 테스트를 많이 해서 정신이 오락가락한 서버에게는 PURPLE
Rainbow Guard Project 이렇게 다양한 색깔의 레인보우를 지켜주겠다는 의미를 지닙니다.
Rainbow Guard Project는 크게 3부분으로 나뉩니다.
1. 서버실의 온도를 체크하고 기록
2. 특정 온도 이상으로 온도가 올라갈 경우 서버실 관리자에게 경고 메일 발송
3. 24시간 동안의 서버실 온도 현황 조회
첫 번째 기능을 위해 먼저 라즈베리 파이와 온도센서를 연결하는 작업을 진행했습니다. 기왕이면 평상시 정상 작동 때와 온도가 높을 때를 구분할 수 있도록 LED도 있으면 좋겠네요. 이런 기능을 위한 회로도를 설계해 보고 납땜질도 하면서 깔끔하지는 않지만, 동작은 하는 온도 감시 및 알림 회로를 만들어 라즈베리 파이와 연결하였습니다. 저도 V=IR이라는 공식밖에 모르지만, 열심히 구글링하고 공부하면서 만들 수 있었습니다.
리눅스에는 crontab 이라는 스케줄러가 있는데요, 온도센서의 값을 읽어와서 저장하는 프로그램을 만든 후 이 crontab의 스케줄에 추가해 주면 정기적으로 온도 감시가 진행됩니다. 덤으로 온도가 높아 졌을때 서버실 밖에 있는 사람들이 빨리 알아챌 수 있도록 음악이 나오게 셋팅해 뒀습니다. 경고 상태에서 나오는 음악은 f(x)의 'Dangerous' 입니다. 듣기만 해도 위험한 상태라는걸 알 수 있게 해줍니다.
경고 상태가 되면 설정된 서버실 관리자들에게 다음과 같은 메일이 발송됩니다. SMS 문자를 보낼 수도 있지만, 유료 서비스라서 메일을 보내도록 설정해 뒀습니다. 어짜피 스마트 시대에 메일이 오든 문자가 오든 틈틈이 확인하는 습관이 있어서 상관은 없습니다.
마침 이 글을 작성하는 동안 경고 메일을 수신했습니다. 앞서 말씀드린 것처럼 봄, 가을 같은 환절기에는 에어컨의 적정온도가 변경되어 간혹 이런 경고가 발생하기도 합니다. 이번에는 날씨가 선선해 지면서 건물 중앙 관리 시스템이 적정온도를 조금 높이다 보니 서버실의 온도가 높아져 경고가 발생했습니다. 서버실 자체 에어컨의 온도를 조금 더 낮춰 해결하였습니다.
이렇게 경고 알림 메일을 받으면 몇몇 직원들이 급히 서버실로 출동하여 상태를 점검하고 위기의 우리 서버들을 더위로부터 구출해 냅니다. 제가 납땜질이 서툴러서 회로의 한 부분이 끊어져 잠시 운영하지 못한적도 있지만 지금은 24시간 서버실에서 제 역할을 하고 있는 중입니다.
-
IDC HOWTO - http://idchowto.com/?p=12787
-
RayHightower.com - http://rayhightower.com/blog/2012/12/03/ruby-on-raspberry-pi/
-
SUNFOUNDER - https://www.sunfounder.com/rpi2-sensorv2.html
-
후레쉬맨 - http://blog.daum.net/gkglh16/3
-
f(x) - http://ppulset.tistory.com/552
Posted by 人Co
- Response
- No Trackback , No Comment
- RSS :
- https://post-blog.insilicogen.com/blog/rss/response/226
Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다