Skip to content

Latest commit

 

History

History
59 lines (43 loc) · 1.87 KB

20241204_EC2_Docker_Architecture.md

File metadata and controls

59 lines (43 loc) · 1.87 KB

EC2 및 Docker 활용, 협업, 아키텍처 설계, 쿠버네티스에 대한 멘토링


1. EC2 사용 및 권한 문제

  • Docker Pull: EC2에서 Docker 이미지를 가져오는 작업 수행.
  • 권한 문제 해결:
    • EC2에서 포트 설정만으로도 권한 문제 해결 가능.
    • 인증(Authentication) 설정이 중요.

2. 아키텍처 설계

  • 아키텍처 중요성:
    • 시스템 전체 구조 설계는 때로 코드 분석보다도 중요.
      • 면접시 질문 등
    • 병목현상을 고려한 설계 필요.
  • 구성 요소:
    • Nginx:
      • 트래픽 분산 및 병목 방지.
      • "길목을 지키는 방어막"으로 비유.
    • Route53:
      • 트래픽 라우팅 및 DNS 관리.
    • EC2-RDS:
      • AWS에서 EC2 인스턴스를 통해 RDS(DB) 연결.
    • Server/DB 기록 관리:
      • 중앙 관리의 중요성.

3. 협업과 중앙 관리

→ 둘 다 정답 없는 문제들

  • 협업 문제:
    • 역할 조율은 PM(Project Manager)이 담당.
    • 예: 서빙 작업을 백엔드와 AI 팀 중 어디서 처리할 것인가?
      • PM이 두 팀 간 알력 싸움을 조율해야 함.
    • 기록과 관리는 서버와 데이터베이스를 통해 중앙화.
      • 기록, 결국은 DB 로 귀결

4. 쿠버네티스 활용

  • 필요성:
    • 단일 Docker 컨테이너로 처리하기 어렵거나 확장성이 필요한 경우.
  • 기능:
    • Container Orchestration(컨테이너 조정).
    • Docker 컨테이너를 유연하게 확장 및 관리.
    • 예: 트래픽 증가 시 새로운 Docker 컨테이너 추가 생성.

5. 비유

  • 트래픽 병목: "저글링 100마리가 한 길목으로 몰려오는 상황" → 이를 해결하기 위해 Nginx를 앞단에 배치하여 트래픽 분산.