pyDash란 무엇인가?
pyDash는 파이썬(Python)과 Django, 그리고 Chart.js로 작성된 경량 웹 기반 리눅스 모니터링 도구입니다. CentOS, Fedora, Ubuntu, Debian, Arch Linux, Raspbian은 물론 Pidora 등 주요 리눅스 배포판에서 테스트를 거쳐 안정적으로 작동합니다.
pyDash를 활용하면 CPU, RAM(메모리), 네트워크 통계, 프로세스, 접속 중인 사용자 등 리눅스 PC나 서버의 다양한 리소스를 실시간으로 확인할 수 있습니다. 대시보드는 파이썬 기본 배포판에 포함된 라이브러리만으로 개발되어 의존성이 매우 적어, 별도의 패키지나 라이브러리를 많이 설치하지 않고도 바로 사용할 수 있다는 것이 큰 장점입니다.
이 글에서는 pyDash를 설치하여 리눅스 서버 성능을 모니터링하는 방법을 단계별로 소개합니다.
리눅스에 pyDash 설치하기
1단계: 필수 패키지 설치
먼저 git과 Python pip를 설치합니다.
-------------- Debian/Ubuntu --------------
$ sudo apt-get install git python-pip
-------------- CentOS/RHEL --------------
# yum install epel-release
# yum install git python-pip
-------------- Fedora 22 이상 --------------
# dnf install git python-pip
2단계: virtualenv 설치
git과 pip가 준비되었다면, 다음으로 파이썬 프로젝트의 의존성 문제를 손쉽게 관리할 수 있게 해주는 virtualenv를 설치합니다.
# pip install virtualenv
또는
$ sudo pip install virtualenv
3단계: pyDash 저장소 클론
git 명령어를 사용해 pyDash 저장소를 홈 디렉터리로 복제합니다.
# git clone https://github.com/k3oni/pydash.git
# cd pydash
4단계: 가상환경 생성
virtualenv 명령어로 프로젝트 전용 가상환경(예: pydashtest)을 생성합니다.
$ virtualenv pydashtest # 원하는 이름으로 지정 가능

가상환경 생성 화면
주의: 위 스크린샷에서 강조된 가상환경 bin 디렉터리 경로를 잘 기억해 두세요. pydash 폴더를 어디에 클론했는지에 따라 경로는 달라질 수 있습니다.
5단계: 가상환경 활성화
생성한 가상환경(pydashtest)을 사용하기 전에 반드시 활성화해야 합니다.
$ source /home/aaronkilik/pydash/pydashtest/bin/activate

가상환경 활성화 화면
위 스크린샷에서 확인할 수 있듯이, PS1 프롬프트가 변경되면 가상환경이 정상적으로 활성화된 것입니다.
6단계: 프로젝트 요구 사항 설치
이제 pyDash 프로젝트에 필요한 패키지들을 설치합니다. 궁금하다면 cat 명령어로 requirements.txt 파일 내용을 먼저 확인해 보세요.
$ cat requirements.txt
$ pip install -r requirements.txt
7단계: SECRET_KEY 변경
settings.py 파일이 있는 pydash 디렉터리로 이동한 후, 아래 명령어로 파일을 열어 SECRET_KEY 값을 임의의 고유 값으로 변경합니다.
$ vi pydash/settings.py

SECRET_KEY 설정 화면
수정을 마쳤으면 파일을 저장하고 종료합니다.
8단계: 데이터베이스 및 슈퍼 유저 생성
다음 django 명령어를 실행해 프로젝트 데이터베이스를 생성하고, Django 인증 시스템을 설치한 뒤 프로젝트 슈퍼 유저를 만듭니다.
$ python manage.py syncdb
아래 질문들에 자신의 상황에 맞게 답변합니다.
Would you like to create one now? (yes/no): yes
Username (leave blank to use 'root'): admin
Email address: [email protected]
Password: ###########
Password (again): ############

프로젝트 데이터베이스 생성 화면
9단계: Django 개발 서버 실행
모든 설정이 완료되었다면, 다음 명령어로 Django 개발 서버를 시작합니다.
$ python manage.py runserver
10단계: 웹 대시보드 로그인
웹 브라우저를 열고 https://127.0.0.1:8000/에 접속하면 웹 대시보드 로그인 화면이 나타납니다. 8단계에서 생성한 슈퍼 유저 이름과 비밀번호를 입력하고 Sign In 버튼을 클릭하세요.

pyDash 로그인 인터페이스
11단계: 시스템 정보 및 CPU·메모리·디스크 확인
로그인하면 일반 시스템 정보와 함께 CPU, 메모리, 디스크 사용량, 그리고 시스템 부하 평균(load average)을 모니터링할 수 있는 섹션이 표시됩니다. 아래로 스크롤하면 더 많은 항목을 확인할 수 있습니다.

pyDash 서버 성능 개요 화면
12단계: 네트워크 상태 모니터링
네트워크 섹션에서는 인터페이스, IP 주소, 인터넷 트래픽, 디스크 읽기/쓰기, 온라인 사용자, netstats 등을 한눈에 추적할 수 있습니다.

pyDash 네트워크 개요 화면
13단계: 활성 프로세스 확인
마지막으로, 시스템에서 현재 실행 중인 활성 프로세스를 실시간으로 감시할 수 있는 섹션도 제공됩니다.

pyDash 활성 리눅스 프로세스 화면
마무리
더 자세한 정보는 GitHub의 pyDash 페이지(https://github.com/k3oni/pydash)에서 확인할 수 있습니다.
지금까지 리눅스에서 pyDash를 설치하고 주요 기능을 테스트하는 방법을 알아보았습니다. pyDash는 가볍고 설치 과정이 단순하면서도 서버 관리에 필요한 핵심 지표들을 직관적인 대시보드로 제공하기 때문에, 개인 서버나 소규모 환경의 모니터링 도구로 활용하기에 적합합니다. 사용 후기나 유사한 유용한 모니터링 도구가 있다면 댓글로 공유해 주세요!