본문 바로가기

Project/어데고 (urdego)4

[Monitoring] 구축 (Prometheus + Grafana) 이번에는 Urdego의 모니터링 구축 과정에 대해 다뤄볼려 합니다. MSA 에서 서비스가 분산되어 있는데 모니터링을 어떻게 해야 할까 🤔 모니터링 (Monitoring)모니터링의 정의는 인프라 및 응용프로그램의 성능이나 효율성을 확인하는 작업이다.각 대상에서 수집한 Metric 정보를 통해서 리소스, 사용률, 트래픽등을 수치로 표현하는 기능인 셈이다. 여기서 Metric 정보를 수집하는 방법에는 Push 와 Pull 2가지 방식이 존재한다.  Push-based SystemPush 방식은 애플리케이션에서 데이터들을 직접 모니터링 시스템으로 보내주는 방식이다.새로운 애플리케이션이 추가되더라도 모니터링 시스템에 데이터를 보내기만하면 되지만 Metric을 중앙에서 정의하기 때문에 새로운 Metric을 수용하.. 2025. 3. 4.
[TensorFlow - NSFW] 부적절한 컨텐츠 감지 이번에는 Urdego 컨텐츠 서비스의 부적절한 컨텐츠 감지에 대한 포스팅을 작성하고자 합니다  도입 계기Urdego 프로젝트는 사용자가 생성하는 컨텐츠(UGC)를 게임에 사용하는 특성익명성이 보장되는 플랫폼에서 '유해 콘텐츠가 업로드될 가능성' 해결방법Amazon Rekognition (AWS에서 제공하는 부적절한 이미지 및 비디오 감지 API)Cloud Vision API - SafeSearch (GCP에서 제공하는 유해성 컨텐츠 감지)Green-eye (Naver에서 제공하는 음란물 차단 AI)등등...찾아보면서 느낀점은 API를 사용하면 손쉽게 구축할 수 있지만 역시 사용에 따른 비용이 발생한다는 점이다..블로그 포스팅하면서 매번 언급했지만 Urdego는 이미 비용문제 -> 홈서버로 구축했기에 부가.. 2025. 2. 18.
[깃허브 액션 - CI&CD] Self-hosted Runner 이번에는 urdego 백엔드 서비스들의 CI&CD 를 위한 깃허브 액션 도입에 대해 다뤄 볼려 합니다 도입 계기urdego 프로젝트는 여러개의 마이크로서비스 (User, Content, Game, 등) 으로 구성되어있어 각 서비스의 코드 변경 시마다 수동으로 빌드, 테스트, 배포를 진행하기에는 무리가 있었다.다수의 팀원이 협업하는 환경에서는 코드 병합시 의도치 않은 오류가 발생하거나 환경별 종속성으로 인한 문제가 드러나기도 하기에 코드 변경 사항에 대해 자동으로 빌드와 테스트를 실행하고 배포까지 자동화하는 도구가 필요했는데 Github Actions를 선택했다. Self-hosted ??urdego는 이미 AWS의 EC2 비용이 부담스러워 홈서버로 구축했기에 Github Actions의 퍼블릭 클라우드 .. 2025. 1. 12.
[홈서버 구축] Public Cloud(AWS) -> On-premise(홈서버) 구축 전환 오랜만에 포스팅입니다 약4개월..? 이번포스팅은 데브코스 최종 프로젝트인 'urdego 어데고?!'를 Public Cloud에서 On-premise 전환 과정에 대해서 다뤄볼려 합니다.  1. 왜 Aws 대신 홈서버로 구축하는가? 마침 노트북을 맥북프로로 갈아타면서 쉬고있는 윈도우 놑북이 존재했다 ㅎㅎaws ec2(t2.medium)를 이용하여 팀프로젝트에서 공용으로 사용하였는데 3주? 안된 기간을 사용하였는데도 성능대비 비용이 너무너무 순식간에 차는것을 볼 수가 있었다..프로젝트 최종 발표날에 데모를 진행하는데 70~80명이 한번에 접속하고 이것저것 눌러보니 cpu 사용률이 100%가 되더니 서버가 죽어버렸다. (t2.medium은 vCPU=2 RAM=4.0 이였다ㅜㅜ)그렇다 하나의 ec2안에 다섯개정.. 2024. 12. 18.