1. 오토 스케일링(Auto Scaling)

: 컴퓨터 시스템이나 애플리케이션의 작업 부하에 따라 자동으로 자원을 확장 또는 축소하는 기술

로 클라우드 컴퓨팅 환경에서 측히 유용하며, 시스템의 성능을 최적화하고 비용을 절감하는 데 도움이 된다.

▷ 서비스를 사용하면 사용자가 수동으로 인프라를 관리하지 않고도 시스템 성능을 최적화하고 효율적으로 운영 가능하다

 

Aws auto scaling은 주로 EC2 인스턴스의 오토 스케일링 그룹을 통해 구현된다.

 

2. 로드 밸랜서(Load Balancer) 

: 네트워크 트래픽이나 작업 부하를 여러 서버로 분산시켜 주는 장치 또는 서비스이다. 여러 서버 간에 균형을 유지하고, 단일 서버에 가해지는 트래픽 부하를 분산하여 성능을 향상시키고 가용성을 향상시킬 수 있다. (OSI 7계층:응용계층)

로드 밸런서의 주요 기능 및 특징
1. 부하 분해 : 로드 밸런서는 여러 서버에 대한 트래픽을 균등하게 분산시켜 줌으로써 각 서버가 일관된 성능을 유지할 수 있도록 한다.
2. 가용성 및 신뢰성 향상 : 여러 서버로 트래픽을 분산하기 때문에 특정 서버의 장애나 다운타임에도 시스템이 계속해서 동작할 수 있다.
3. 확장성 : 새로운 서버가 추가되거나 기존 서버가 제거될 때 로드 밸런서는 자동으로 이에 대응하여 부하 분배를 조절한다.
4. 세션 관리 : 일부 로드 밸런서는 클라이언트의 세션 정보를 유지하고 특정 서버에 고정시켜 세션 일관성을 유지할 수 있다.
5. SSL 오프로딩 : SSL 암호화 및 복호화 작업을 대신 수행하여 백엔드 서버에서의 부하를 감소시킬 숭 ㅣㅆ다. 

 

 

1. 엘라스틱 빈스톡을 생성하면서 오토 스케일링 그룹 생성

 

2. 환경 유형을 밸런싱된 로드로 설정하고 인스턴스는 2~4로 설정한다. 이는 평소에는 인스턴스 2개로 운영하다가 서버가 바빠지면 인스턴스를 4개로 늘려준다. 그리고 다시 한가해지면 원래 2개의 상태로 변환하고 생성된 2개는 제거한다.

 

 

 

==> EC2가 두 개면 클라이언트는 어느 EC2로 접근해야 할 지 모른다. 그래서 클라이언트는 로드밸런서로 접근하고 로드밸런서는 서버가 한가한 쪽으로 클라이언트를 보낸다. 이 때 둘 다 너무 바쁠 경우 오토 스케일링을 통해 EC2가 더 추가된다.

 

 

3. 네트워크 로드밸런서

: OSI 4계층인 전송계층에서 작동하는 로드밸런서이고, TCP/UDP 트래픽을 분산시키는 역할이다. 클라이언트 요청을 여러 대상으로 분산시키고, 효율적인 네트워크 트래픽 관리를 할 수 있다. 

 

- 로드밸런서로만 연결할 경우

: ALB는 IP 주소가 주기적으로 변동되기 때문에 개발자가 컨트롤할 수 없다. 로드밸런서는 DNS가 제공되기 때문에 이 DNS로 접근이 가능하지만 여러 문제가 발생할 수 있다. 

 1. 고정 IP 주소의 부재 : DNS는 동적으로 IP주소를 반환할 수 있기 때문에 로드 밸런서의 IP 주소가 동적으로 변경될 수 있다. 이 경우 클라이언트는 항상 동일한 IP주소로 연결하지 못한다.
2. DNS 캐싱 및 TTL 문제 : 클라이언트에서 DNS 응답이 캐시되면 TTL이 만료되기 전까지의 새로운 IP 주소를 알지 못한다. 
3. 로드 밸런서 장애 대응 : 직접 DNS로 연결하는 경우 로드 밸런서의 장애에 대응하기 어려울 수 있다. 만약 로드 밸런서가 다운되면 DNS로 인해 트래픽이 분산되지 않으며, 서비스 가용성에 영향을 미칠 수 있다.
4. 보안 측면 고려 : 직접 DNS로 연결할 경우, 로드 밸런서의 IP주소가 노출될 수 있따. 

 

- 네트워크 로드밸런스 추가할 경우

위의 문제점을 보완하기 위해 네트워크 로드밸런서를 사용한다. 네트워크 로드밸런서는 고정 IP를 사용할 수 있기 때문에 위의 IP 주소의 부재를 해결할 수 있다.

1. 고성능 및 저렴한 비용 : 빠른 속도와 낮은 지연 시간을 제공하면서도 비용 효율적으로 동작한다.
2. 4계층 로드 밸런싱 : OSI모델의 4계층에서 동작하기 때문에, TCP 및 UDP 트래픽을 처리할 수 있다.
3. 고정IP주소 : Elastic IP 주소를 제공하여 고정 IP주소를 사용할 수 있다. 
4. SSL 트래픽 지원
5. 등록된 대상의 상태 확인 : 등록된 인스턴스 또는 IP주소의 상태를 정기적으로 확인하여 정상적으로 서비스할 수 있는 대상으로만 트래픽을 전달한다.
6. 간단한 설정 및 관리 : 단순한 구성이 가능하다.

+ Recent posts