Environment(개발환경)/Infra(인프라)

[AWS] 강의노트 - (1) 클라우드 컴퓨팅, AWS 서비스

ttaeng_99 2023. 6. 11. 18:19
반응형

AWS 강의 커리큘럼을 통해, 기본적인 사용법 학습과 경험을 취득하고자 수강을 시작했다!

애초에 코딩하면서 수기노트를 한 적도 까마득하며, 글씨 쓰는것도 귀찮아하는 나이기에 포스팅으로나마 주요내용을 정리하며 강의를 들으려한다!

- 강의 : CloudNet@와 함께하는 AWS 네트워킹 입문 (인프런 링크)

 

CloudNet@와 함께하는 AWS 네트워킹 입문 - 인프런 | 강의

AWS 클라우드 입문자를 대상으로, AWS 클라우드 네트워크 기초 지식을 따라하며 배우는 실습 기반의 입문 강의입니다., - 강의 소개 | 인프런

www.inflearn.com

* CloudNet@ 측에서 강의영상 및 자료 저작권이 있어, 최대한 내용이해를 도울 수 있는 사진으로 대체해보려고 합니다 😁😁


☁️ 클라우드 컴퓨팅

인터넷을 통해 IT 서비스 사용요구가 있을 때(On-Demend), 자원을 제공하고 사용한 만큼 비용을 지불받는(Pay Per Use) 서비스

- 서버, 스토리지, 데이터베이스

  • 민첩성 : 필요한 자원에 대해 빠르게 구동
  • 탄력성 : 가변적인 환경에 유연하게 확장 및 축소
  • 비용절감 : 사용량에 비례하여 비용을 지출

 

- 전통적인 IT 구축 환경(On-Premises)

공간(전산실, 데이터센터)하드웨어(장비) 및 네트워크&보안 시설이 구비되어 있었다. 이를 위한 인터넷도 구축.

  • 장점 : 자산을 직접구축 및 보존이 가능. 물리장비에 직접 접근가능하여, 보안성이 우수
  • 단점 : 확장성을 고려한 넉넉한 스펙을 구성해야 함. 탄력적인 운영이 제한됨. 높은 하드웨어 비용과 감가상각.

 

- 클라우드 컴퓨팅 서비스 유형(aaS, as-a-service)

클라우드 공급자와 사용자의 관리범위에 따라 분류

  • IaaS(Infrastructure) : 공급자는 인프라(하드웨어 - 서버, DB, 스토리지) 만 제공, 사용자가 나머지 영역(운영체제, 미들웨어 등) 을 관리하는 방식
  • PaaS(Platform) : 공급자가 인프라(하드웨어) 및 운영체제, 미들웨어, 런타임을 정의해 플랫폼 형태로 제공하는 방식. 사용자는 데이터, 애플리케이션만 관장
  • SaaS(Software) : 공급자가 인프라(하드웨어), 운영체제, 애플리케이션까지 모든 영역을 정의해 소프트웨어 형태로 제공하는 방식
  • On-Premises : 사용자가 인프라(하드웨어), 운영체제, 애플리케이션까지 모든 영역을 관장(SaaS와 정반대 개념)

 

- 클라우드 구축 모델

클라우드 자원의 위치, 소유권, 주체에 따라 분류가능.

  • Public : 클라우드 자원의 주체가 클라우드 공급자에게 있음(On-Demand, Pay Per Use)
  • Private : 클라우드 자원의 주체가 소유자에게 있음(On-Premises)
  • Hybrid : 클라우드 구축 모델이 혼용된 상태. Public과 Private를 연계하여 운용되는 복합적인 형태.

☁️ AWS 클라우드 컴퓨팅 서비스

AWS(Amazon Web Service)는 Amazon의 자회사로, 글로벌 인프라를 통해 퍼블릭 클라우드 서비스를 제공

 

- AWS 글로벌 인프라

리전(Region)가용 영역 형태로 광범위한 글로벌 클라우드 인프라를 구성하고 있음

  • 리전(Region) : 클라우드 서비스 자원이 모여있는 지리적 위치(현재 전세계 31개 리전 보유)
  • 가용영역 : 리전 내 존재하는 데이터센터의 집합. 서로 초고속 네트워크로 연결되어 있어, 장애가 발생하면 다른 가용영역이 대체 (전세계 99개 가용영역 보유)

대한민국에도 서울 리전이 존재하며, 이 안에는 4개의 가용영역이 존재한다.

 

 

- AWS 클라우드 서비스

클라우드 서비스를 25가지로 대분류하고, 하위 세부 서비스는 총 200개 이상으로 구성된다.

  • 컴퓨팅 서비스 : 클라우드 서버 자원에서 가상 서버를 생성하고 관리하는 서비스 - EC2, ECS, EKS, Lambda 등
  • 네트워크 및 컨텐츠 전송 : 클라우드에서 생성한 다양한 자원들의 내/외부 통신을 위한 서비스 - VPC, ELB, Route53, Transit Gateway 등
  • 스토리지 서비스 : 클라우드에 안정적이고 확장성 있는 데이터 스토어 서비스 - S3, EBS, EFS
  • 데이터베이스 서비스 : 클라우드 상의 완전 관리형 데이터베이스 서비스 - RDS, Aurora, DynamoDB 

 

* AWS 네트워킹 서비스

클라우드 자원 간 통신을 위한 서비스로, 클라우드 서비스의 기반이 되는 매우 중요한 영역

네트워킹을 통해 통신이 가능해지며, 효율적인 네트워킹 구성을 통해 안정성, 효율성, 비용절약 등을 확보 가능

  • VPC(Virtual Private Cloud) : 클라우드 사용자 전용의 가상 프라이빗 클라우드 네트워크
  • ELB(Elastic Load Balancing) : 트래픽을 부하 분산하여 전달하는 기능
  • Route53 : 관리형 DNS로 도메인 등록 및 관리 서비스

☁️ AWS 사용 가이드

  • 회원가입 : 회원가입 링크
  • AWS 자원 관리방법
    1. AWS 관리 콘솔(콘솔 홈 링크) : 웹 기반 관리. 직관적이어서 가장 범용적으로 사용됨
    2. AWS CLI(Command Line Interface) : 셸 프로그램 상에서 명령어 기반으로 관리(awscli 오픈소스). 명령어가 길고 복잡함
    3. AWS SDK(Software Development Kit) : 연동된 특정 소프트웨어 개발 시 도움되는 개발도구로, 역시 난이도가 높음

 

- SSH 키 페어

자격증명을 위한 보안키(Secure Shell). EC2 인스턴스는 리눅스 운영체제로 운영되며, 이에 접근하기 위한 보안키가 필요하다.

보안키는 Public Key, Private Key 2가지로 구성되며, 이를 키 페어라고 부르는 것이다.

먼저, EC2 > 네트워크 및 보안 > 키 페어 메뉴에 접근해서, 새 키페어를 생성할 수 있다.

 

키 페어 유형은 RSA, ED25519 중에 RSA를 선택했다. (둘은 암호화 알고리즘으로, ED25519가 보안성이 더 높다. 참고링크)

Private Key파일은 .pem, .ppk 중에 .pem을 선택했다. (pem은 Base64며, ppk는 PuTTY로 윈도우FTP 등 때 변환이 필요. 참고링크)

 

키 페어 생성이 완료되면, Private Key는 자동으로 컴퓨터에 저장된다.

 

EC2 인스턴스 접근 시 SSH 클라이언트가 필요하나, 윈도우 OS는 별도의 클라이언트 없이도 자체 터미널로 접근 가능하다.


최초 의도는 AWS 전반적인 서비스를 경험해보고 싶었으나, 기본개념을 훑으면서 네트워킹 서비스에 치중되었음을 알게 되었다. 😅😅

다소 당황스럽지만, EC2 인스턴스 배포 후 네트워킹 서비스들을 적용하는 듯 하니 겸사겸사 심도있게 수강해봐야겠다.

반응형