인프런 CloudNet@와 함께하는 AWS 네트워킹 입문 강의를 보고 정리한 글입니다.
인프런의 AWS 네트워킹 강의를 듣고 정리한 글입니다. 글의 맥락이 끊길 수 있으며 AWS 를 어떻게 다루는지 보다는, AWS 네트워크 환경이 어떤식으로 구성되어지는 학습하는걸 목표로 하고 있습니다.
[목차]
- 클라우드 컴퓨팅이란
- 전통적인 온프레미스 IT 구축 환경
- 클라우드 컴퓨팅 서비스 유형 (as-a-service)
- AWS 에서 제공해주는 클라우드 서비스
☁️ 클라우드 컴퓨팅이란
클라우드 컴퓨팅이란, 인터넷을 통해 “요구가 있을 때 즉시 (On - Demand)” IT 자원을 제공하고 “사용한 만큼 비용을 지불 (Pay Per Use)” 하는 것을 말합니다.
💡 클라우드 컴퓨팅의 특징은 On Demand 와 Pay Per Use 입니다.
- 온-디멘드(On-Demand) : 사용자가 It 자원을 필요로 할 때 클라우드 공급자는 즉시 제공한다.
- 페이-펄-유즈(Pay-Per-Use) : 사용자는 IT 자원을 사용한만큼 클라우드 공급자에게 비용을 지불한다.
🤔 클라우드 컴퓨팅 도입전 - 전통적인 IT 구축 환경 살펴보기
클라우드 컴퓨팅 시스템이 도입되기전, 물리적인 자원을 사용하여 IT 환경을 구축했던 이전의 전통적인 방식의 예시 입니다.
✔️ 네트워크 환경을 구성하기 위해 필요한 것
- IT 자원이 위치할 공간이 필요
- 실제 서버, 데이터베이스, 스토리지 등과 같은 IT 자원들의 하드웨어를 보유하고 있어야 함
- 이러한 자원들이 통신할 수 있는 네트워크 및 보안 환경이 구축도되어야 함
- 외부 통신을 위한 인터넷 회선도 연결되어야 함
→ 이렇게 하나하나 구축해 나가는 방식을 On-Premises 라고 합니다.
✔️ 온프레미스 (On-Premises)
자체적인 공간과 자원을 통한 구축하는 것
특징
- A-Z 까지 모든것을 직접 구축
- 공간과 물리적인 자원에 대한 자산 보존
- 물리 장비에 직접 접근 가능하고 보안성이 우수
단점
- 향후 IT 자원의 확장성을 고려한 설계가 필요 (물리적인 장비를 증설해야하기 때문)
- IT 자원의 탄력적인 유지 관리가 어려움
- 특정 이벤트가 발생해 폭발적인 유저 트래픽이 발생하면 쉽게 대응하기 어려움 [가변적인 환경에 따른 탄력적인 대응이 힘듬]
- 온프레미스 환경은 하드웨어에 의존하기 때문에 높은 하드웨어비중과 감가상각이 발생함
✔️ 클라우드 컴퓨팅의 장점
온프레미스 방식과는 대조되는 클라우드 컴퓨팅 시스템의 장점입니다.
- 민첩성
- 필요한 자원에 대해 빠르게 구동
- On-Demand의 특성 : 요구가 있을 때 즉시 IT 자원을 생성한다.
- 탄력성
- 가변적인 환경에 유연하게 확장 및 축소가 가능합니다.
- 자원이 필요하면 더 요구하여 즉각적으로 IT 자원을 공급받을 수 있고, 사용이 끝나면 반납하여 비용을 줄일 수 있습니다.
- 비용 절감
- 사용한 만큼만 비용을 지불하여 비용 낭비를 감소
- 온-프레미스 처럼, 미래를 위한 확장성을 고려하여 물리적인 자원 (하드웨어)를 구비해두지 않아도 됨
📔 클라우드 컴퓨팅 서비스 유형 (as-a-service)
as-a-service 라고 불리는 클라우드 컴퓨팅의 서비스 유형은 크게 3가지로 분류 됩니다.
💡 클라우드 컴퓨팅 서비스 유형은 클라우드 공급자와 클라우드 사용자 간의 관리 범위가 어디까지인가에 따라 분류할 수 있습니다.
보편적으로 3가지 대분류가 존재
- IasS (Infrastructure-as-a-service)
- PasS (Platform-as-a-service)
- SaaS (Software-as-a-service)
[노란색은 클라우드 공급자 영역 | 파란색은 사용자 영역]
😶🌫️ AWS 에서 제공해주는 클라우드 서비스
Aws 는 클라우드 서비스를 크게 25개로 대분류하고, 하위 세부 서비스만 200개 이상이 존재합니다.
아래 사진은 그 중에서 가장 보편적으로 사용되는 AWS 클라우드 서비스를 4가지로 분류하고, 그 하위 서비스 들의 목록입니다.
강의에서는 AWS 클라우드 서비스 중 - 네트워크 서비스를 중점적으로 다룬다고 합니다.
↓
✔️ AWS 네트워킹 서비스
클라우드 자원들의 통신을 위한 서비스
네트워크 환경이 없다면 통신이 불가능하고, 네트워킹 구성을 얼마나 효율적으로 하느냐에 따라 서비스의 안전성, 효율성, 비용절약등이 달라집니다.
대표적인 AWS 네트워킹 서비스
1. VPC (Virtual Private Cloud)
- 클라우드 사용자 전용의 가상의 프라이빗 클라우드 네트워크
- 클라우드 사용자는 자신만의 VPC 를 생성하여 네트워크 환경을 구성하고 이 VPC 에 클라우드 자원을 배치하여 통신할 수 있다.
2. ELB (Elastic Load Balancing)
- 어떠한 트래픽을 부하 분산하여 전달하는 기능
- IT 자원을 구성할 떄 단일 자원으로 구성하는 것은 지양 [어떠한 장애가 발생하면 단일 구성으로 인한 서비스 불가 상태가 되기 때문이다]
- 그런 측면에서 다수의 자원을 구성하여 고가용성의 확보를 이룹니다.
- 이러한 다수의 자원이 존재할 떄, ELB를 통해 트랙픽을 분산하여 고가용성을 확보하는 서비스이다.
3. Route53
- 관리형 DNS 로 도메인 등록 및 관리 등의 서비스