Computer/AWS

[AWS Certified Cloud Practitioner] 05. ELB

SenJ 2022. 1. 25. 20:04

요약 : ELB는 인스턴스의 부하를 나눠주는 로드발란서이며 AWS에서는 Layer4단계 7단계에서의 로드발란싱을 제공한다. 사용자의 필요에 맞는 옵션을 다양하게 설정할 수 있을 뿐 아니라 자동으로 최적화를 해주는 옵션이 있다.

Scalability(확장성) : 하드웨어 확장(수직/수평)을 통해 어플리케이션 및 시스템에서 추가 부하를 수용할 수 있는 능력, 가용성과는 다른 개념

- Vertical Scalability : 인스턴스의 사이즈를 늘리는 것ex) t2.micro -> t2.largem, 일반적으로 중앙집중 시스템에 활용되며 보통 확장에 제한(such as H/W limit)이 있다.

- Horizontal Scalability : 인스턴스 및 시스템의 수를 늘리는 , 일반적으로 분산시스템에 적용되며 최근의 어플리케이션등에서 활용됨

ex) auto scaling group, load balancer

High Availability : 어플리케이션과 시스템을 최고 2곳의 AZ에서 운용. 목표는 어떠한 상황에서도 시스템을 지속적으로 운용하는 것에 있음

Elasticity : Scalability를 확보했을 때 부하에 따라서 시스템의 사이즈를 조절하는 탄력성(유연성) “auto-scaling” 클라우드 컴퓨팅의 목적을 달성하게 해줌Pay-per-use, match demand, optimize costs

Agility : IT자원을 신속하게 확보하여 개발시간을 단축

 

Elastic Load balancing (ELB) : 하나의 점을 공개(DNS)하고 해당점으로 들어온 네트워크 트래픽을 복수의 서버로 분산시켜주는 기능, 복수의 AZ로 분산가능, 하드웨어 fail의 경우를 대비할 수 있음, 정기적인 health check, SSL termination 제공, 고가용성 확보

- AWS 가 로드발란싱 자체를 보증함 = 직접구축하는 것 보다 비용이 들 수 있지만 공수를 축소시킬 수 있음

AWS가 제공하는 Load Balancer

- Application load balancer (HTTP/HTTPS only) -layer 7

- Network Load Balancer (ultra-high performance, allows for TCP) – layer 4 (high-performance)

- Classic load balancer – layer 4& 7

Auto Scaling Group(ASG) : 부하의 증감에 따라서 자동적으로 EC2 인스턴스를 확장 및 축소하는 기능, 최소/최대기동의 인스턴스 수를 보장함, unhealthy 인스턴스 대체도 자동적으로 가능

Scaling Strategies

- Manual Scaling : 수동 Scaling

- Dynamic Scaling : 수요에 따라서 Scaling

ex) simple/step scaling : when a Cloudwatch alarm is triggered (ex CPU>70%) then add 2 units

-Target tracking Scaling : 목표치를 유지하도록 Scaling

ex) The average ASG CPU to stay at around 40 %

-Scheduled Scaling : 인스턴스 사용패턴을 알고 있을경우 해당 패턴에 맞추어 Scaling

ex) increase the minimum capacity to 10 at 5pm on Fridays

-Predictive scaling : 머신러닝을 통해 예측 Scaling

출처 : Udemy Ultimate AWS Certified Cloud Practitioner - 2022