본문 바로가기

데브코스/TIL

[TIL] 7주차_Day26: AWS 클라우드 실습 (1)

💡Today I Learned

  • AWS 클라우드 실습에 대한 첫 번째 수업을 진행했습니다.
  • 인스턴스 생성, Elastic beanstalk 생성 실습

 


 

1. 클라우드 서비스

: 클라우드 컴퓨팅 IT 리소스를 인터넷을 통해 온디맨드(↔온프레미스)로 제공, 사용한 만큼만 비용 지불

: 물리적 데이터센터, 서버를 구입/소유/유지하는 대신 클라우드 공급자(ex: AWS)로부터 필요에 따라 컴퓨팅파워, 스토리지, DB와같은 기술 서비스에 access

 

- 장점

: 민첩성 / 탄력성(필요한 양 증감) / 비용절감 / On demand / 관리 용이성

 

- 대표적인 AWS(Amazon Web Services)

: 가장 많이 사용되는 클라우드 플랫폼

: 서비스 중심의 회사들은 거의 AWS를 사용

 

- 기타: MS Azure, 구글 GCP, 오라클 OCI, IBM 클라우드, 알리바바 클라우드, KT 클라우드, 네이버 NCP(네이버 클라우드 플랫폼)

 

- 클라우드 서비스 사용 비중 (리소스 관점에서 할당받는 양)

On Premises(own server) < IAAS(virtual machines, 하드웨어단을 가상화) < PAAS(할당받은 리소스 위에서 app, data만 설치해서 사용) < SAAS(전부 다 만들어져있는 리소스를 할당받음) 

 

2. EC2

: AWS에서 가장 보편적으로 사용하는 서비스

: 논리적인 리소스 서버를 할당받음

 

3. EC2 용어

- 인스턴스: 가상 컴퓨팅 환경 → EC2는 하나의 인스턴스 마다의 별도의 서비스를 이용할 수 있음

- AMI(아마존 머신 이미지): 서버에 필요한 os, sw들이 적절히 구성된 상태로 제공되는 템플릿, 인스턴스 쉽게 만들 수 있음

- 인스턴스 유형: cpu, 메모리, 스토리지, 네트워킹 용량 .. 여러가지 구성 제공

- 키 페어: 만든 인스턴스에 로그인하기위한 정보 (보안)

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

- 아마존 EBS(Elastic Block Store): 영구 스토리지 볼륨에 데이터 저장

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

- 탄력적 IP 주소(Elastic IP): 동적 클라우드 컴퓨팅을 위한 고정 IPv4 주소 (각 인스턴스들은 별도의 ip, 도메인들을 제공함 → 인스턴스를 내렸다 올리거나, 재시동하는 경우 다른 도메인, ip로 설정됨 → 이를 고정적으로 제공해주는 서비스)

- 태그: 사용자가 생성해 EC2 리소스에 할당할 수 있는 메타데이터 (EC2 뿐만 아니라 다른 아마존 서비스에도 가능)

- Virtual Private Cloud(VPC): 논리적으로 격리돼있지만 원할 때마다 고객의 네트워크와 간편히 연결할 수 있는 가상 네트워크

 

4. EC2 만들기 실습

- 키 페어 만들기 만든 EC2 인스턴스에 접속할 수 있는 유일한 키 만들기

: EC2 > 키 페어 생성 > 키 이름 설정 > 키 페어 유형 .pem(MacOS)로 설정 > 생성

$ chmod 400 mykey.pem
$ ssh -i ["키 페어 파일명"] ec2-user@[인스턴스의 퍼블릭 IPv4 DNS 주소]

 

: 400 으로 권한 변경 (change mode)

: 인스터스 생성 후 [퍼블릭 IPv4 주소] 혹은 [퍼블릭 IPv4 DNS]로 접속 가능 ← 서버 내렸다 올릴 때마다 변경됨

 

5. AWS 기본 용어

- 가상화

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

 

- 가상머신(VM)

: SW형식으로 물리적 컴퓨팅을 시뮬레이션 하는 가상 환경

 

- 스냅샷

: 특정 시점에 스토리지의 파일 시스템을 포착(스냅샷)해 보관하는 기술, 순간의 리소스나 프로세스를 저장해서 특정 시점으로 서버를 구동할 수 있게 해줌

: ex) 장애나 데이터 손상 시 스냅샷을 생성한 시점으로 데이터 복구 가능

: 백업(원본 데이터를 그대로 복사해 다른 곳에 저장)과 달리 초기 생성 시 or 데이터의 변경이 있기 전까지는 스토리지 공간 차지 x

: 메타데이터의 복사본에 해당, 생성에 오랜 시간 걸리지 x, 장애 발생 시 빠르게 데이터를 복원

 

- 데이터 센터

: 수많은 서버 모아 네트워크로 연결해놓은 시설

 

- Region

: DC가 위치한 지역, IT 리소스를 생성할 리전을 선택 가능, 대상 고객의 지역 & 자원 생성 리전이 최대한 가까워야 함, 국가마다 자원사용 비용이 다름

 

- 가용영역(Availability Zone)

: 하나의 Region은 두 개 이상의 AZ으로 구성됨

 

*) AZ(가용영역) = AWS 리전 내에서 물리적으로 격리된 데이터 센터, 각 AZ는 서로 다른 전력/네트워크 인프라로 분리됨

*) 서브넷(subnet) = 각 AZ 내에서 네트워크를 더 세분화하여 관리하기 위한 논리적 단위 (논리적으로 분리된 네트워크 영역)

 

6. 탄력적 IP

: 탄력적 IP 생성 후 만들어둔 인스턴스에 연결 (고정 IPv4 주소 사용 가능)

: default로 5개 생성 가능 (꼭 필요한 곳에 할당..)

: 서버 내리거나 올려도 고정적인 IP 사용할 수 있음

: 할당된 탄력적 IP를 다시 반환할 수 있음 (할당한 인스턴스에서 떼서 다른 곳에 재할당 가능)

 

7. Elasticbeanstalk

: 여러 서버 인스턴스를 사용해 애플리케이션을 실행/관리하는 플랫폼

: 애플리케이션을 실행하는 여러 서버들을 관리하는 도구

: 애플리케이션의 확장성,가용성을 향상시키기 위해 여러 서버 인스턴스를 사용하는 클라우드 환경에서 사용

 

: 애플리케이션을 실행하는 인프라에 대해 자세히 알지 못해도 AWS 클라우드에서 app을 신속하게 배포/관리 가능

: 선택/제어에 대한 제한 없이 관리 복합성 줄일 수 있음

: 애플리케이션을 업로드하기만 하면 Elastic beanstalk에서 용량 프로비저닝, 로드밸런싱, 오토스케일링, 조정, 상태 모니터링 등 세부 정보를 자동으로 처리

: Go, Java, .NET, Node.js, PHP, Python, Ruby에서 개발된 app 지원함

: 애플리케이션 배포 시 EB가 선택된 지원 가능 플랫폼 버전을 구축 + EC2 등의 AWS 리소스를 하나 이상 프로비저닝해서 app 실행

 


 

💡Furthermore

  • AWS IAM (EC2 인스턴스가 필요한 작업을 수행하도록 허용하는 관리형 정책이 있는 IAM 인스턴스 프로파일) 개념
  • Elasticbeanstalk 환경 생성 완료 후 Ebs 대시보드에서 (실습 내용으로) config 수정하기
  • .pem 키 권한 변경하는 이유
반응형