티스토리 뷰
[Kubernetes] 쿠버네티스와 도커를 활용하여 웹서비스 배포하기 프로젝트 1주차 : 프로젝트 개요
YouJungJang 2023. 12. 4. 02:452023 클라우드 컴퓨팅 1팀 프로젝트
쿠버네티스를 처음 다루면서 정말 많이 헤매고 힘들었다. 아직 진행 중인 미완성 프로젝트지만 더 열심히 해보려고 블로그에 기록해보려고 한다. 프로젝트 최종 발표를 약 일주일 남겨두고 있는 시점, 아직 여기저기서 에러가 터지지만 그래도 여러 가지 시도를 기록해 보겠다! 꼭 완성하자 화이팅
⚓ 배포할 서비스 설명 및 Github
🔗 배포할 기존 서비스 Source:
⚓ 클러스터 구성
우리 서비스는 크게 프론트엔드, 백엔드, 데이터베이스 부분으로 나눌 수 있다. 세 개의 파트는 서로와 통신하기 위해 서비스 오브젝트를 하나씩 두고, 프론트와 백은 각각 파드를 세 개씩 유지하도록 디플로이먼트 오브젝트를 두었다. 데이터 베이스는 파드가 중지되어도 데이터가 유지될 수 있도록 퍼시스턴트 볼륨을 사용하기 위해 디플로이먼트가 아닌 스테이트 풀 셋을 사용하도록 구성했다. pv는 하나면 되므로 파드 레플리카는 하나로 두었다. 세 서비스가 통신하고 외부와도 통신할 수 있도록 하나의 인그레스를 두었는데, 우선 외부에 서비스 IP와 포트를 노출하고 싶지 않았고 여러 개의 서비스가 있을 때 인그레스가 LoadBalancer처럼 작동해 유연한 설정을 할 수 있게 해 준다고 해서 이렇게 두었다.
⚓ 도커 이미지 및 도커 허브 링크
https://hub.docker.com/repository/docker/youjung819/sc_database/general
https://hub.docker.com/repository/docker/youjung819/sc_frontend/general
https://hub.docker.com/repository/docker/youjung819/sc_backend/general
⚓ 프로젝트 깃허브 링크