티스토리 뷰

S3

S3는 AWS가 제공하는 클라우드 스토리지 서비스입니다. 99.999999%라는 높은 내구성이 특징인 스토리지로 미리 스토리지 용량 등을 정의하지 않고 사용할 수 있으며, 데이터 공개 정책, 데이터 암호화, 비용 효율적으로 데이터를 장기 보관하기 위한 라이프사이클 정책 등의 많은 기능을 제공하는 유용한 서비스입니다.

 

S3에서는 스토리지의 기본 단위로 '버킷'이라고 불리는 영역을 생성하고 그 안에 파일을 저장합니다. 


CloudFront

CloudFront는 AWS가 제공하는 콘텐츠 전송 네트워크(Content Delivery Network, CDN) 서비스입니다. CDN은 인터넷에서 웹 콘텐츠, 이미지, 동영상, 애플리케이션 등을 빠르게 전송하기 위한 구조로 되어 있습니다. CloudFront는 전 세계에 많은 에지 로케이션(데이터를 전송하기 위한 지점)을 갖고 있어 사용자가 접속한 가장 가까운 장소에서 콘텐츠를 제공할 수 있습니다.

 

보통 S3에 콘텐츠를 저장하고 CloudFront를 통해 접속합니다.


RDS

RDS는 AWS가 제공하는 관계형 데이터베이스(RDB)입니다. RDS에서는 OS나 미들웨어 관리, 운영에 필요한 많은 작업을 담당하므로 개발, 운영에 필요한 인적 자원을 애플리케이션에 집중할 수 있습니다.

 

RDS에서 제공되는 데이터베이스 엔진은 Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle DataBase, SQL server의 6종류가 있습니다.


ECR

ECR(Elastic Container Registry)은 AWS가 제공하는 컨테이너 레지스트리 관리형 서비스입니다. 컨테이너를 이용하여 애플리케이션을 작동시키는 경우 컨테이너 이미지를 저장하고 다운로드 할 수 있는 구조로 컨테이너 레지스트리를 사용합니다.

 

컨테이너 레지스트리는 컨테이너 이미지를 보관하는 리포지터리며 도커 명령어 등을 사용하여 컨테이너 이미지를 등록 및 다운로드 합니다. 

 

쿠버네티스 클러스터에도 컨테이너 이미지는 컨테이너 레지스트리를 통해 다운로드하는 구조로 되어있습니다. 컨테이너 이미지를 ECR에 등록해주고 EKS 클러스터로 배포합니다.


EC2

EC2(Elastic Compute Cloud)는 AWS에서 가상 머신을 사용할 수 있는 서비스로 다양한 형태의 가상 머신을 쉽게 구축하고 운영할 수 있게 해줍니다.

 

EKS의 워커노드는 eksctl이라는 도구를 사용하면 자동으로 구축해주기 때문에 의식하지 못할 수 있지만 EC2 인스턴스로 구축됩니다.


ELB

ELB(Elastic Load Balancing)는 AWS가 제공하는 로드밸런서 서비스입니다. ELB에는 Application Load Balancer, Network Load Balancer, Gateway Load Balancer, Classic Load Balancer라는 4종류의 로드밸런서가 제공됩니다. 처음에는 클래식 로드밸런서만 제공되었지만 이후 3종류의 로드밸런서가 추가되었습니다.

 

Application Load Balancer는 HTTP/HTTPS에 특화된 L7 로드밸런서입니다. 경로 기반 라우팅(URL 경로에 따라 경로 변경), 호스팅 기반 라우팅(HTTP 헤더에 설정된 Host에 따라 경로 변경) 등 Classic Load Balancer에는 없는 HTTP 고유의 처리가 가능합니다.

 

Network Load Balancer는 L4 로드밸런서입니다. TCP 트래픽의 경우, 로드 밸런서는 프로토콜, 원본 IP 주소, 원본 포트, 대상 IP 주소, 대상 포트, TCP 시퀀스 번호에 따라 흐름 해시 알고리즘을 사용하여 대상을 선택합니다. 클라이언트로부터의 TCP 연결은 소스 포트와 시퀀스 번호가 서로 다르므로 다른 대상에 라우팅될 수 있습니다. 각 TCP 연결은 연결 수명 동안 하나의 대상에 라우팅됩니다.

 

UDP 트래픽의 경우, 로드 밸런서는 프로토콜, 원본 IP 주소, 원본 포트, 대상 IP 주소, 대상 포트에 따라 흐름 해시 알고리즘을 사용하여 대상을 선택합니다. UDP 흐름은 소스와 목적지가 동일하기 때문에 수명이 다할 때까지 일관되게 단일 대상으로 라우트됩니다. 서로 다른 UDP 흐름에는 서로 다른 소스 IP 주소와 포트가 있으므로 다른 대상으로 라우팅될 수 있습니다.

 

Gateway Load Balancer는 다른 회사의 가상 네트워킹 어플라이언스의 배포, 확장, 실행을 돕습니다. 여러 회사의 어플라이언스에 대한 로드 밸런싱 및 자동 조정 기능을 제공합니다.

 

Classic Load Balancers는 HTTP/HTTPS와 TCP로 분산 설정이 가능하고 기본적인 로드밸런서 기능을 제공합니다. 그러나 '분산 대상으로 EC2 인스턴스만 지정 가능', 'HTTP/HTTPS로 분산 설정한 경우에도 사용 가능한 기능 제한' 등 제약 사항이 많습니다.

 

 

[Network] L4 LoadBalancer와 L7 LoadBalancer 비교

로드밸런서란? 로드밸런서는 서버에 가해지는 부하(=로드)를 분산(=밸런싱)해주는 장치 또는 기술을 통칭한다. 클라이언트와 서버풀(Server Pool, 분산 네트워크를 구성하는 서버들의 그룹) 사이에

kingofbackend.tistory.com


IAM

AWS IAM(Identitiy and Access Management)은 AWS 리소스에 접속하는 사용자나 권한을 관리하는 서비스입니다. AWS 계정을 생성했을 때 제공되는 사용자(루트 사용자)는 가장 높은 권한을 가지며 계정 정보를 탈취당하면 계정이 도용되는 등 큰 문제로 이어질 수 있습니다. 그래서 AWS 관리 콘솔이나 AWS CLI 작업, 혹은 애플리케이션이나 도구를 이용하는 사용자는 루트 사용자가 아니라 사용 형태에 맞는 권항을 가진 사용자를 IAM으로 생성하여 이용하는 것을 추천합니다.

 

또 IAM에서는 IAM 역할(Role)을 생성하여 리소스에 설정함으로써 해당 리소스에 다른 리소스에 대한 접근 권한을 부여할 수 있습니다. 

 

예를들어 워커 노드에는 IAM 역할을 통해 ECR에 접속할 수 있는 권한을 부여할 수 있습니다.

 

댓글
댓글쓰기 폼
공지사항
Total
248,385
Today
760
Yesterday
1,065
링크
«   2022/10   »
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          
글 보관함