[AWS] Part2. EC2

MINJI·2024년 10월 25일

☁️ AWS 클라우드

목록 보기
2/14
post-thumbnail

⭐ EC2 란?

1. EC2 개념

Elastic Compute Cloud
클라우드에서 가상 서버(인스턴스)를 생성하고 실행할 수 있는 서비스. 물리적인 서버를 구매하지 않고도 필요할 때마다 컴퓨팅 리소스를 생성해 다양한 환경에서 애플리케이션 실행 가능

2. EC2 기능

인스턴스

가상 컴퓨팅 환경

Amazon 머신 이미지 (AMI)

서버에 필요한 운영체제와 여러 sw들이 적절히 구성된 상태로 제공되는 템플릿으로 인스턴스를 쉽게 만들 수 있습니다

인스턴스 유형

인스턴스를 위한 CPU, 메모리, 스토리지, 네트워킹 용량의 여러 가지 구성 제공

키 페어

인스턴스 로그인 정보 보호

인스턴스 스토어 볼륨

임시 데이터를 저장하는 스토리지 볼륨으로 인스턴스 중단, 최대 절전 모드로 전환 또는 종료 시 삭제됨

Amazon Elastic Block Store(Amazon EBS)

Amazon EBS 볼륨을 사용해 영구 스토리지 볼륨에 데이터 저장

보안 그룹

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

탄력적 IP 주소(EIP)

동적 클라우드 컴퓨팅을 위한 고정 IPv4 주소

태그

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

Virtual Private clouds(VPC)

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

3. EC2 실습

1) AWS 계정 만들기


2) Region을 서울로 지정해주기

3) 서비스 검색창에 EC2 검색

4) 키 페어 만들기

(1) 왼쪽 메뉴바에서 키 페어 선택 후 나오는 화면에서 키 페어 생성 버튼 클릭

(2) 키 페어 이름 설정, 키 페어 유형은 RSA, 프라이빗 키 파일 형식은

  • Mac: 터미널에서 SSH 명령어와 PEM 파일을 사용.

  • Windows: PuTTY를 사용하여 PEM 파일을 PPK로 변환한 후 SSH 연결.

    (3) 키 페어 생성 완료!

        

5) 인스턴스 만들기

(1) EC2 대시보드 OR 인스턴스탭에 들어가서 인스턴스 시작 버튼 클릭

(2) 인스턴스 이름 설정

(3) OS 환경 설정 : Amazon 리눅스로 설정(default)

(4) 인스턴스 유형 : 프리 티어가 사용가능한 t2.micro(default)

(5) 키 페어(로그인) : 미리 만들어뒀던 키 페어를 가져올 수 있음. 안 만들었으면 새 키 페어 생성 누르고 만들기

(6) 보안 관련 네트워크 설정 : default값 유지

(7) 스토리지 구성 : default값 유지

(8) 인스턴스 시작 버튼 클릭하여 내 서버 만들기 완료!

6) 인스턴스 연결

(1) 인스턴스 ssh클라이언트 열기

(2) chmod 400으로 실행권한 맞춰주기

(3) OpenSSH 연결

... 하려고 시도 했으나 자꾸 안 되길래 찾아봤더니....

아오 진짜 윈도우 쓰니까 강의 따라가기 쉽지않네;;🤯🤯

⭐ 탄력적 IP

  1. 탄력적 IP 탭 눌러서 탄력적 IP 주소 할당 버튼 클릭
  2. 할당 버튼 클릭하면 할당 받을 수 있다
  3. 탄력적 IP 주소 연결하기
  4. 만들어둔 인스턴스 선택하여 연결
  5. 인스턴스 새로고침하면 탄력적 IP를 부여받은걸 확인할 수 있다. 콘솔환경에서 탄력적 IP를 활용하여 내 서버에 들어가는게 가능해짐!
  6. 만약 탄력적 IP를 해제하고 싶다면 인스턴스 탭에서 작업 → 네트워킹 → 탄력적 IP 주소 연결 해제
     

⭐ Elastic Beanstalk (EB)

웹 애플리케이션과 서비스의 배포, 관리, 스케일링을 쉽게 할 수 있게 도와주는 PaaS (Platform as a Service)

  • 애플리케이션 코드만 업로드하면 인프라 구성, 배포, 로드밸런싱, 오토스케일링 등을 자동으로 처리해 주는 관리형 서비스

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

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

  • Go, Java, .NET, Node.js, PHP, Python 및 Ruby에서 개발된 애플리케이션 지원

  • 애플리케이션을 배포할 때, EB가 선택된 지원 가능 플랫폼 버전을 구축하고 Amazon EC2 등의 AWS리소스를 하나 이상 프로비저닝하여 애플리케이션 실행

1. EB 실습

1) 서비스 검색창에 Elastic Beanstalk 검색 후 애플리케이션 생성 버튼 클릭

2) 환경구성에서 애플리케이션 이름 정해주고

3) 플랫폼은 Java, 플랫폼 브랜치는 11로 설정

4) 다음 버튼을 누르면 서비스 액세스 구성하면이 나오고 만들어둔 EC2 키 페어를 지정해주고 다음을 계속 누르면 앱이 생성된다(생성되는데 좀 걸림,,)

정책이 바껴서 시작 템플릿을 반드시 사용해야됨!

New accounts only support launch templates
Starting on October 1, 2024, Amazon EC2 Auto Scaling will no longer support the creation of launch configurations for new accounts. Existing environments will not be impacted. For more information about other situations that are impacted, including temporary option settings required for new accounts, refer to Launch templates in the Elastic Beanstalk Developer Guide.

5) EC2 인스턴스에 들어가보면 elastic beanstalk 어플리케이션이 생성된 것을 확인할 수 있음

6) EB 환경 생성 완료!

0개의 댓글