20-3 AWS 활용, 배포 환경의 설정

airbus·2025년 6월 4일

프로그래머스

목록 보기
88/93

20-3 AWS 활용, 배포 환경의 설정



AWS

(Amazon Web Service)

아마존에서 제공하는 클라우드 컴퓨팅 서비스 플랫폼.
여러 가지 응용의 실현에 필요한 infrastructure를 on-demand 로 서비스


클라우드 인프라의 이용


장점

  • 유연한 이용, 안정적 서비스, 다중화와 스케일링
  • Pay-as-you-gop, GCO (total cost of ownership)절감
  • 다양한 도구 제공, 풍부한 문서 및 참고자료

단점

  • 생각보다 비용이 만만하지 않을 수 있음
    • 제대로 사용하지 못해도 리소스가 이용되고 있으면 과금됨
  • 활용법을 익혀야 함
    • 익숙해지지 않으면 다소 복잡하고 생소하게 느껴질 수 있음 (활용성 하락)

EC2


(Elastic Compoute Cloud)

AWS에 의하여 운용되고 있는 네트워크 상에 존재하는 가상의 서버

  • 여러 가지의 운영체제로 이루어진 소프트웨어 실행 환경을 선택하여 설치, 운영 가능
  • 서버를 구매하고 소프트웨어 설치해서 IDC에 상면한 것과 비유 가능

이용
우리의 (실습)프로젝트에서 EC2활용

  • 프로덕션 (스테이징)배포에 이용할 클러스터 제공
  • 데이터베이스 (MariaDB)설치하고 운용
  • 웹 서버 (Nginx reverse proxy)설치하고 운용

비교 (보다 유연한 서비스 아키텍처 구현을 위해서는)
-> 데이터베이스 RDS (managed relational database service)이용
-> k8s 클러스터의 운용을 위해서는 EKS (elastic kubernetes service)이용


AMI


(Amazon Machine Images)

EC2에서 활용하는 컴퓨터 (파일 시스템) 이미지

  • 소프트웨어의 설치 및 구성을 모두 포함하고 있음
  • Amazon 이 지원하는 온갖 운영체제의 이미지, AWS와 3rd-pardy 제공 marketplace, 커스텀 이미지 등

ECR


(Elastic Container Registry)

  • FE, BE 각각을 컨테이너로 빌드 (이미지 생성)하여 ECR에 등록 (push)
  • 프로덕션 및 스테이징 (또는 테스트 환경) 배포를 위하여 이미지 인출 (pull)

S3 (Simple Storage Service)


Bucket 단위로 운영되는 object storage service

  • 임의 형태의 데이터(비정형 데이터 포함)를 저장하고 접근, 공유
  • AWS Glacier 와 연동 이용하여 데이터 유지의 비용을 절감하고 접근 유연성을 높임
  • 프로덕션 및 스테이징 배포에 있어 terraform state 저장에 이용

클라우드 인프라의 이용

  • 비용 절감 및 안정성/유연성/확장성 획득을 위하여 많은 기업에서 활용
  • Private cloud vs public cloud
  • 우리 실습에서는 AWS 를 활용하는 실습을 계획

프로젝트에서 AWS 활용

  • EC2 ‒ 응용의 배포/실행을 위한 모든 환경을 하나씩의 인스턴스로 구성
  • 그러나 서비스 아키텍처는 k8s 클러스터를 가정하고 있음 -> 어렵지 않은 확장
  • 응용의 배포/운용에 필요한 자원을 클라우드에 배치

0개의 댓글