[TIL] 가장 많이 사용되는 AWS 클라우드에 대해 실습 중심으로 학습 (1)

이원진·2023년 5월 15일
0

데브코스

목록 보기
26/54
post-thumbnail

학습내용


  1. EC2 개요

  2. 클라우드 서비스 개요

  3. EC2 실습

  4. 클라우드 기본 용어

  5. 탄력적 IP

  6. Elastic Beanstalk

1. EC2 개요


  • 인스턴스: 하나의 가상 컴퓨팅 환경

  • Amazon 머신 이미지(AMI): 서버에 필요한 운영체제와 여러 소프트웨어들이 적절히 구성된 상태로 제공되는 템플릿

  • 인스턴스 유형: 인스턴스를 위한 CPU, 메모리, 스토리지, 네트워크 용량 구성

  • 키 페어를 사용해 인스턴스 로그인 정보 보호

    • AWS는 공개키를, 사용자는 개인키를 안전한 장소에 보관하는 방식

  • 인스턴스 스토어 볼륨: 임시 데이터를 저장하는 스토리지 볼륨

    • 인스턴스 중단 or 최대 절전 모드 or 종료 시 삭제

    • Amazon Elastic Block Store(Amazon EBS) 볼륨을 사용해 영구 스토리지 볼륨에 데이터 저장

  • 보안 그룹: 인스턴스에 연결할 수 있는 프로토콜, 포트, 소스 IP 범위를 지정하는 방화벽 기능

  • 탄력적 IP 주소(EIP): 동적 클라우드 컴퓨팅을 위한 고정 IPv4 주소

  • 태그: 사용자가 생성하여 EC2 리소스에 할당할 수 있는 메타데이터

  • Virtual Private Clouds(VPC): AWS 클라우드에서 논리적으로 격리되어 있지만 원할 때마다 고객의 네트워크와 간편히 연결할 수 있는 가상 네트워크

  • EC2 구조


2. 클라우드 서비스 개요


  • IT 리소스를 인터넷을 통해 온디멘드로 제공하고 사용한만큼만 비용을 지불하는 방식

    • 온디맨드(On-demand): 사용자가 요청하는 즉시 서비스를 제공하는 것

  • 물리적 데이터센터, 서버 등의 장비를 구입하거나 유지 보수할 필요가 없어짐

  • 장점

    • Cost-Effective

    • Global

    • Secure

    • Reliable(신뢰성)

    • Scalable(확장성)

    • Elastic(탄력성)

    • Current

  • 유형

    • 온프레미스(On-premises): 클라우드 도입 이전 기존의 서버 운영 방식

      • 네트워크, 스토리지, 서버, 가상화 데이터, 어플리케이션 등을 사용자가 모두 구성하는 모델

    • Infrastructure as a service(IaaS): 인프라를 제공해 사용자가 OS와 그 상위 계층만을 구성하면 되는 모델

    • Platform as a service(PaaS): 플랫폼을 제공해 사용자가 데이터와 어플리케이션만 구성하면 되는 모델

    • Software as a service(SaaS): 데이터와 어플리케이션을 포함한 소프트웨어 자체를 사용자에게 제공하는 모델

  • 공공기관은 AWS 대신 NCP(Naver Cloud Platform)를 사용하기도 함


3. EC2 실습


  • AMI로 여러 OS를 사용할 수 있고, OS 위에 특정 프로그램이 설치된 서버도 생성/운영 가능

  • 퍼블릭 IPv4 주소, 퍼블릭 IPv4 DNS 주소를 사용해 EC2로 접속 가능

  • "인스턴스 중지" 상태에서도 과금이 발생할 수 있으니 서버가 더 이상 필요 없을 경우 "인스턴스 종료"

  • 키페어(.pem) .ssh 디렉토리로 옮기기

    cd ~/.ssh
    mv [pem 위치] .

  • 키페어 권한 변경

    • chmod 400 XXX.pem

  • 인바운드 규칙에 22번 포트가 열려있기 때문에 이에 해당하는 프로토콜인 SSH로 접속이 가능한 것

    • 인바운드 규칙 편집을 통해 다른 IP/포트/프로토콜의 접속 허용 가능

4. 클라우드 기본 용어


  • 가상화: 물리적 하드웨어를 효율적으로 활용할 수 있도록 하는 논리적인 프로세스

    • 클라우드 컴퓨팅의 기반이 되는 기술

  • 가상머신(VM: Virtual Machine): 소프트웨어 형식으로 물리적인 컴퓨팅을 시뮬레이션하는 가상 환경

  • 스냅샷: 특정 시점의 스토리지의 파일 시스템을 사진 찍듯이 포착해 보관하는 기술

    • 장애나 데이터 손상 시 스냅샷을 사용해 특정 시점으로 데이터 복구

  • 데이터센터: 수많은 서버를 한 군데 모아 네트워크로 연결해 놓은 시설

  • 지역(Region)

    • 데이터센터가 위치한 지역

    • 대상 고객의 지역과 자원을 생성할 Region이 최대한 가까워야 함

  • 가용영역(Availability Zone)

    • 하나의 Region은 여러 개의 가용영역으로 구성

5. 탄력적 IP


  • 퍼블릭 IPv4 주소, 퍼블릭 IPv4 DNS 주소는 서버 중지하면 변경됨

    • 탄력적 IP라는 고정 IP 주소를 EC2에 배정 가능

6. Elastic Beanstalk


  • 어플리케이션을 실행하는 인프라에 대해 알지 못해도 어플리케이션을 신속하게 배포하고 관리할 수 있는 서비스

  • 선택 또는 제어에 대한 제한 없이 관리 복잡성을 줄일 수 있음

  • 어플리케이션을 업로드하기만 하면 Elastic Beanstalk에서 용량 프로비저닝, 로드 밸런싱, 조정, 어플리케이션 상태 모니터링에 대한 세부 정보를 자동으로 처리

  • Go, Java, Python 등 다양한 언어로 개발된 어플리케이션 지원

  • 내부에 NginX와 WAS 존재

  • .jar 파일을 업로드해 서비스 운영 가능


메모


  • 공용 WiFi 사용 시 SSH를 사용해 EC2로 접속 불가능할 수 있음을 유의

  • SSH 최초 접속 시 fingerprint 관련 에러 발생할 경우, 그냥 yes 입력하면 해결 가능

  • 탄력적 IP는 가지고만 있어도 과금 발생 가능함을 유의


0개의 댓글