MyServer

사용하던 랩탑을 바꾸면서, 어디에 사용할 수 있을까 하는 생각을 가지던 중, 개인 서버를 구축하고 싶어 시작한 프로젝트이다.

초기에는 SSH로 접속해 가며, 윈도우 환경에서 리눅스를 사용하는 목적으로 운영을 하고 있었고, 동아리에서 토이프로젝트로 채팅서버를 만들고 있을 때 채팅 서버로 사용했었다.

그러던 중 개인 도메인을 가지고 홈페이지와 이메일을 만들어 보고 싶어, 도메인을 붙이고, SMTP를 사용, 여러 메일 클라이언트를 붙여가며 실험을 해 개인 이메일을 사용했었고, 간단하게 HTML로 개인 페이지를 제작했었다.

그러다 군 입대를 했고, 틈틈히 시간을 내 코딩공부를 하던 중 군장병 공개SW소집교육이라는 프로그램을 발견해 인프라 파트로 지원했고, 선발되었으나, 인원이 부족해 Web으로 배정되었다. 예정에도 없던 웹 프론트라 당황스럽지만 그 교육에서 Vue.js로 SPA(Single Page Application)을 만드는 법을 교육받았다. 이 교육 이후로 제대로된 이쁜 블로그를 만들어 보고 싶어서 Express와 Vue.js를 연동시킨 SPA와 RestApi를 사용하는 블로그 프로젝트를 시작했다. 출타때마다 PC방에 가서 개발을 했고, 외박때는 PC텔에가서 밤새가면서 만들었었다.

그때는 GitHub이 private Repository가 유료기능이여서 기존 서버에 GitLab를 설치해 사용하였고, GUI 원격 접속을 해서 편하게 관리하고 싶어 Apache Guacamole프로젝트를 이용해서 웹기반 원격 접속을 구축해 사용했다. 하지만 구형 32비트 프로세서를 사용하던 구형 랩탑은 커널 오류를 무자비하게 뿜어내며 굉장히 불안정한 상태가 되었고, 원인을 확인하고 싶어 관제 프로그램을 설치해서 모니터링도 해보았지만, 결국 하드웨어 문제인 것으로 결론 짓고, 폐기하였고 중단되었다. 이때 아무생각없이 버려서 그때 GitLab의 소스코드가 다 날아가 버려 그때 돌리던 블로그가 날아가 버렸다…

전역을 한 후 컴퓨터를 새로 맞추면서 기존 컴퓨터를 버리기 아까워 다시 개인 서버 프로젝트가 시작되었다. 확실히 데스크탑용 프로세서라 빠르고 좋았지만, 하드디스크 드라이브여서 IOWait가 상당히 많이 발생하고 있었다. 또 방안에 두니 서버 소음도 상당히 거슬렸다. 그래서 팬리스 파워랑 쿨러로 전부 교체하고, 하드디스크들을 레이드로 잡았다. 확실히 팬소음은 잡아 정숙했지만, IOWait는 구형 하드라서 레이드로 묶어도 어쩔수 없었던 것 같다.

현재 서버는 Let’s Encrypt에서 발급받은 SSL인증서로 HTTPS연결을 사용중이며, Apache를 Reverse Proxy로 사용해 여러 서브도메인을 붙여서 작동시키고 있다. 모든 서비스는 Docker의 컨테이너 상에서 돌리고 있으며 상당히 만족하고 있다. Portainer라는 좋은 Gui 관리 툴 덕도 많이 보는 중이다. 서버 관제, 웹 기반 원격 접속기, 컨테이너 관리, 개인NAS, 프로젝트용 테스트 서버등의 서비스를 돌려보며 사용중이며, Nas사용시 IOWait로 Block가 걸리는 것 이외에는 만족하며 사용중이다. 나중에 SSD로 교체를 해보거나 여러가지 건드려보면서 개선해 볼 계획이다.

블로그는 직접 구현해서 운영하고 싶었지만 호스팅이나 백업 과정으로 볼때 GitHub Page를 사용하는것이 더 괜찮은것 같아 기억을 더듬어가며 다시 포스팅들을 복구하는 중이다.

댓글남기기