기록 블로그

프로그래머스 데브코스-데이터 엔지니어/TIL(Today I Learned)

05/15 26일차 가장 많이 사용되는 AWS 클라우드 (1)

usiohc 2023. 5. 15. 17:34

학습 주제


주요 메모 사항


클라우드 컴퓨팅

  • 클라우드 컴퓨팅 IT 리소스를 인터넷을 통해 온디맨드로 제공하고 사용한 만큼만 비용을 지불하는 방식
  • 물리적 데이터 센터와 서버를 구입, 소유 및 유지 관리하는 대신, Amazon Web Services(AWS)와 같은 클라우드 공급자로부터 필요에 따라 컴퓨팅 파워, 스토리지, 데이터베이스와 같은 기술 서비스에 액세스 한다.

 

클라우드 컴퓨팅 이점

  • 민첩성
  • 탄력성
  • 비용절감
  • On Demand
  • 관리 용이성

 

클라우드 유형

 

 


AWS 기본용어

  • 가상화
    • 물리적 컴퓨터 하드웨어를 보다 효율적으로 활용할 수 있도록 해주는 프로세스이며, 이는 클라우드 컴퓨팅의 기반을 제공하는 기술

 

  • 가상머신
    • 가상 머신(VM)은 소프트웨어 형식으로 물리적 컴퓨팅을 시뮬레이션하는 가상 환경이다.
    • 이들은 일반적으로 VM의 구성, 가상 하드 드라이브의 스토리지, 그리고 특정 시점에 해당 상태를 유지하는 VM의 일부 스냅샷을 포함한 다수의 파일들로 구성되어 있다.

 

  • 스냅샷
    • 스냅샷은 마치 사진 찍듯이 특정 시점에 스토리지의 파일 시스템을 포착해 보관하는 기술
    • Windows OS의 복원 지점과 같이 장애나 데이터 손상 시 스냅샷을 생성한 시점으로 데이터를 복구
    • 스냅샷은 원본 데이터를 그대로 복사해 다른 곳에 저장하는 백업과 달리 초기 생성 시 혹은 데이터의 변경이 있기 전까지는 스토리지의 공간을 차지하지 않는다.
    • 메타데이터(데이터에 대한 부가적인 정보)의 복사본에 해당하기 때문에 생성하는 데 오랜 시간이 걸리지 않고, 장애 상황이 발생해도 빠르게 데이터를 복원

 

 

 

 

EC2 기능

  • 인스턴스 : 가상 컴퓨팅 환경
  • Amazon 머신 이미지(AMI): 서버에 필요한 운영체제와 여러 소프트웨어들이 적절히 구성된 상태로 제공되는 템플릿으로 인스턴스를 쉽게 만들 수 있습니다.
  • 인스턴스 유형: 인스턴스를 위한 CPU, 메모리, 스토리지, 네트워킹 용량의 여러 가지 구성 제공
  • 키 페어를 사용하여 인스턴스 로그인 정보 보호(AWS는 퍼블릭 키를 저장하고 사용자는 개인 키를 안전한 장소에 보관하는 방식)
  • 인스턴스 스토어 볼륨: 임시 데이터를 저장하는 스토리지 볼륨으로 인스턴스 중단, 최대 절전 모드로 전환 또는 종료 시 삭제됨
  • Amazon Elastic Block Store(Amazon EBS), 즉 Amazon EBS 볼륨을 사용해 영구 스토리지 볼륨에 데이터 저장
  • 보안 그룹을 사용해 인스턴스에 연결할 수 있는 프로토콜, 포트, 소스 IP 범위를 지정하는 방화벽 기능
  • 탄력적 IP 주소(EIP): 동적 클라우드 컴퓨팅을 위한 고정 IPv4 주소
  • 태그: 사용자가 생성하여 Amazon EC2 리소스에 할당할 수 있는 메타데이터
  • Virtual Private Clouds(VPC) : AWS 클라우드에서는 논리적으로 격리되어 있지만 원할 때마다 고객의 네트워크와 간편히 연결할 수 있는 가상 네트워크

 

 

탄력적 IP 주소

  • 생성 제한 개수가 존재 (5개?)
  • 주소 생성하고 이전에 만든 EC2 인스턴스와 연결

 


Elastic Beanstalk

  • Elastic Beanstalk를 사용하면 애플리케이션을 실행하는 인프라에 대해 자세히 알지 못해도, AWS 클라우드에서 애플리 케이션을 신속하게 배포하고 관리 할 수 있음.
  • 선택 또는 제어에 대한 제한 없이 관리 복잡성을 줄일 수 있음
  • 애플리케이션을 업로드하면, 용량 프로비저닝, 로드 밸런싱, 조정, 애플리케이션 상태 모니터링에 대한 세부 정보를 자동으로 처리
  • Go, Java, .NET, Node.js, PHP, Python, Ruby 등에서 개발된 애플리케이션을 지원
  • 배포 단계, ,Elastic Beanstalk가 선택된 지원 가능 플랫폼 버전을 구축 -> EC2등의 AWS 리스소를 하나 이상 프로비저닝 하여 애플리케이션을 실행 

 

 

 

진행

키페어 생성 -> EC2 인스턴스 생성 -> terminal에서 접속 확인

Elastic Beanstalk 생성 -> terminal 접속 확인 -> spring 기준 jar 업로드로 배포가 끝남


공부하며 어려웠던 내용

강의 내용은 이해했다. 다만 Elastic Beanstalk 과정 중 오류가 발생해 해결해보고 있다.