Application Gateway, instance 란?

눕눕·2024년 3월 25일

Azure Application Gateway V2 instance?!

Azure Application Gateway를 사용중이거나 생성하는 과정에서 마주하는 몇가지 선택지가 있다.

  1. v1 vs v2?
  2. with waf or standard?
  3. 만약 v2를 선택했다면, autoscaling 사용여부?
  4. 만약 v2를 선택했다면, instance 개수?

이번 글은 위의 4가지 중 아래 두가지 3번과 4번에 대해 알게된 부분을 기록하려 한다.

위의 1번과 2번의 간략한 차이점만 짚고 넘어가자면,

  1. v1 vs v2?
    a. v1: autoscaling 되지 않으며, 사이즈를 정할 수 있음. 곧 사라질 예정. subnet 점유하지 않음.
    b. v2: autoscaling 가능. subnet 점유함.
  2. with waf or standard?
    a. waf: waf를 탑재.
    b. standard: waf가 탑재되지 않음.

Autoscaling? Instance?

Application Gateway에서 autoscaling이란?

클라우드 플랫폼들이 7계층 LB를 구현한다는 것은 어떠한 VM 위에 7계층 LB 역할을 하는 서비스를 띄워놓고 우리가 포탈에서 설정값들을 바꾸며 편하게 사용할 수 있도록 추상화 해놓았다고 생각하면 이해가 쉽다. 즉, 이 서비스는 VM 또는 container 형태로 돌아가고 있을 것이며 이 VM이나 container는 spec을 가지고 있을 것이다. 이 spec을 넘어서는 상황에는 일반적 scale up 또는 out을 선택해야 한다. scale up은 보통 down time을 수반하기에 scale out을 많이 사용한다. 우리들의 Application Gateway 또한 그러하다.

Application Gateway는 여기서 2가지 지표를 사용한다.

  • Capacity Unit

  • Compute Unit

위 부분이 넘어갈 때, Autoscaling을 설정해 놓았다면, scale out이 진행된다.

Autoscaling은 이해 했는데 이 옵션은 뭘까?

저 위에 설정은 심지어 0도 가능하다. 0개면 서비스 안되는거 아냐?

docs 문서를 보면, 자세히 나와 있지만 조금 포인트만 모아보자면 아래와 같다.

  • minimum instnace를 0개로 선택해도 고가용성은 제공된다.
  • 위의 설정은 10 capacity units/instance 제공을 보장한다.
  • capacity unit으로 커버가 되지 않는 spike 등을 위하여 minimum instance를 설정 및 사용을 권장한다.

이러한 포인트들은 트래픽 유실에 대하여 tracking 하다가 scale in 또는 out은 어떻게 컨트롤 되고 있을까? 라는 의문에서 출발하였다.

그래서 Application Gateway에서 instance는 뭐야?

Capacity Unit들을 담는 그릇정도로 보면된다. 물론 비용측면에서는 Capacity Unit 단위로 계산 되기에 전부 Capacity Unit으로 표기하고 쓰면 되지 않냐? 라고 할 수 있지만, 위의 메뉴 중 Autosclaing 옵션이 아닌 Manual로 사용했을 때는 아래와 같은 문제가 발생 될 수도 있다.

Autoscaling을 사용하였을 때

Manual로 instance 개수를 3개로 고정 시켰을 때

위와 같이 Autoscaling을 사용하였을 때는 instance를 늘려서 Capacity Unit을 손쉽게 배포하여 사용할 수 있지만, Manual로 정하였을 때는 기존 instance에 배포 가능한 만큼만 하고 더 이상 배포를 못하는 경우도 발생할 수도 있다. 즉, instance에 더 이상 배포가 불가능한 상태로 트래픽이 늘어난다면 응답 latency가 길어질 수도 있다는 말과 같다.

마치며

  • agw는 항상 고가용성을 제공한다.
  • minimum instance는 10 Capacity Unit + instance 라고 보면 된다.
  • instance는 Capacity Unit을 담는 그릇 정도로 보면 되며 대략 최소 10개 정도 담을 수 있다고 보면 된다.
profile
n년차 눕눕

0개의 댓글