본문 바로가기

remote-craft

RemoteCraft 10 - 호스팅 + 후기

호스팅

호스팅은 AWS보다는 UI에 대한 진입장벽이 낮다고 하는 GCP, 구글 클라우드 플랫폼에 호스팅을 하기로 결정했다. Godaddy에서 도메인도 의외로 저렴하게 구할 수 있었다. 역시 인프라는 어려웠다. 도메인네임서버 등록부터 해당 인스턴스와 도메인에 대한 연결 까지, GCP 측에서는 HTTPS 로드밸런서 부터 트래픽 로드밸런서, VPC(Virtual Private Cloud), 인스턴스 모니터링 등등 정말로 많은 기능을 제공하지만, 그 기능의 늪에서 내가 진정 필요한 기능을 설정하여 쓰기엔 현재는 과한 기능 이라고 판단했다!

 

거의 3~4일정도를 매뉴얼을 보면서 헤메고.. 일단 HTTP로 웹사이트가 정상적인 작동을 하는지 확인을 했고 이 후 HTTPS 세팅에  대해 알아보기 시작했다. 결과적으론 HTTPS 로드밸런서 대신에 Lobby서버의 인스턴스에 간단한 nginx의  reverse proxy + letsencrypt라는 툴을 이용하여 구글 DNS로부터 포트포워딩 + HTTPS 보안까지 깔끔하게 끝낼 수 있었다. 골머리를 앓고있는 저와 같은 초심자분들이 계신다면 한번 이용해 보시길 권한다!

 

 

후기

렉 없이 그저 잘 실행되는 것이 행복하지만.. 정말 커다란 프로젝트를 꿈꿨기 때문에 아직도 해보고 싶은 것이 너무 많다..!

추가/개선 해야할 사항들을 나열 하자면...

  • 게임 컨텐츠를 업로드 하여 플레이 하는 기능
  • Libretro Core 버전관리 자동화
  • 로깅 개선
  • VP8 비디오 인코더 bugfix << 제일 중요한 것 (안드로이드 chrome에서는 더 이상  H.264코덱을 지원하지 않는다고 한다.)
  • 현재 프로젝트에 존재하는  Datarace 수정 및 개선
  • SDP Offer & Answer 교환 중에 동적으로 코덱 설정
  • 프론트엔드 터치패드 인풋 구현
  • WebRTC 연결 암호화 방안
  • Pion Go v3 업데이트
  • 프론트엔드 메뉴 UI 대폭 개선 - 메뉴얼, 게임 선택, 키매핑 설정
  • OpenGL 기반 Libretro Core 지원
  • 구글클라우드 + 회원가입으로 세이브파일 관리
  • 로비서버의 로드밸런싱
  • 워커서버 오토 스케일링
  • 등등...

 

정말로 재밌고 애정을 가지고 만든 프로젝트였고 아직도 많이 아쉽기 때문에 멈추지 않고 계속해서 개선해 나갈 것이다! 굵게 표시한 사항이 제일 시급한 사항으로 생각된다. 인프라 관련해서도 해보고 싶은 것이 많은데 아직 지식/경험이 모두 부족하여, 아무것도 자동화 하지 못했다. 우선적으로 인프라 설정 및 CI/CD를 위해 Kubernetes + Docker를 공부해 봐야할 것 같고.. 모바일 유저를 배려하는 UI를 만드는 것이 아마 1차적인 업데이트 계획이 될 것이다.

 

헤헤..

 

천천히, 하지만 확실하게 앞으로 나아가자!