인스턴스 새로 고침에 체크포인트 추가 - Amazon EC2 Auto Scaling

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

인스턴스 새로 고침에 체크포인트 추가

인스턴스 새로 고침을 사용하는 경우, 작업을 진행하면서 인스턴스에 대한 검증을 수행할 수 있도록 단계별로 인스턴스를 교체하도록 선택할 수 있습니다. 단계별 교체를 수행하려면 인스턴스 새로 고침이 일시 중지되는 시점인 체크포인트를 추가합니다. 체크포인트를 사용하면 Auto Scaling 그룹을 업데이트하는 방법을 더 강력하게 제어할 수 있습니다. 체크포인트는 애플리케이션이 안정적이고 예측 가능한 방식으로 작동하는지 확인하는 데 유용합니다.

작동 방식

인스턴스 새로 고침을 시작할 때 Auto Scaling 그룹에 있는 총 인스턴스 수의 백분율로 체크포인트를 지정합니다. 이 체크포인트는 Auto Scaling 그룹에서 새 인스턴스가 되어야 체크포인트에 도달한 것으로 간주되는 인스턴스의 최소 비율을 나타냅니다. 예를 들어 체크포인트가 다음과 [20, 50, 100] 같으면 새 인스턴스의 20% 가 첫 번째 체크포인트에 도달하고, 새 인스턴스가 50% 이면 두 번째 체크포인트에 도달하고, 모든 인스턴스가 새로 추가되면 최종 체크포인트에 도달합니다.

Amazon EC2 Auto Scaling은 그룹의 최소 정상 비율을 유지하면서 지정된 체크포인트 비율을 준수하도록 인스턴스 교체를 진행합니다. 체크포인트 백분율에 도달하기 위해 Amazon EC2 Auto Scaling은 때때로 최소 건전 백분율에서 허용하는 것보다 더 적게 교체하지만 절대 그보다 많이 교체하지는 않습니다.

인스턴스가 10개인 다음 Auto Scaling 그룹을 예로 들어 보겠습니다. 체크포인트 백분율은 [20,50,100], 최소 건전 백분율은 80%, 최대 건전 백분율은 100%입니다. 최소 건전 백분율을 유지하기 위해 한 번에 2개의 인스턴스만 교체됩니다. 다음 다이어그램은 체크포인트에 도달하기 전에 인스턴스를 교체하는 프로세스를 요약한 것입니다.

이 다이어그램은 체크포인트가 인스턴스 새로 고침의 흐름에 어떤 영향을 미치는지 보여줍니다.

위 예시에서는 새로 시작하는 각 인스턴스마다 인스턴스 준비 기간이 있습니다. 인스턴스를 대기 상태로 전환한 다음 인스턴스가 시작되거나 해지될 때 사용자 지정 작업을 수행하는 수명 주기 후크가 있을 수도 있습니다.

Amazon EC2 Auto Scaling은 100% 완료된 체크포인트를 제외하고 각 체크포인트에 대해 이벤트를 내보냅니다. Amazon SNS 등의 대상으로 이벤트를 전송하는 EventBridge 규칙을 추가할 수 있습니다. 이렇게 하면 필요한 검증을 실행할 수 있을 때 알림이 옵니다. 자세한 정보는 인스턴스 새로 고침 이벤트에 대한 EventBridge 규칙 생성을 참조하세요.

고려 사항

체크포인트를 사용할 때에는 다음 사항을 고려하세요.

  • 체크포인트는 백분율을 기준으로 하기 때문에 교체할 인스턴스 수는 그룹 크기에 따라 달라집니다. 스케일 아웃 활동이 발생하고 그룹 규모가 커지면 진행 중인 작업이 다시 체크포인트에 도달할 수 있습니다. 이 경우, Amazon EC2 Auto Scaling은 다른 알림을 전송하고 계속하기 전에 체크포인트 간 대기 시간을 반복합니다.

  • 특정 상황에서 체크포인트를 건너뛸 수 있습니다. 예컨대, Auto Scaling 그룹에 두 개의 인스턴스가 있고 체크포인트 백분율이 [10,40,100]이라고 가정해 보겠습니다. 첫 번째 인스턴스를 교체한 후 Amazon EC2 Auto Scaling은 그룹의 50%가 교체된 것으로 계산합니다. 50%가 처음 두 개의 체크포인트보다 높기 때문에 첫 번째 체크포인트(10)를 건너뛰고 두 번째 체크포인트(40)에 대한 알림을 전송합니다.

  • 작업을 취소하면 추가 교체가 중지됩니다. 작업을 취소하거나 마지막 체크포인트에 도달하기 전에 작업이 실패하면 이미 교체된 인스턴스는 이전 구성으로 롤백되지 않습니다.

  • 부분 새로 고침의 경우, 작업을 다시 실행하면 Amazon EC2 Auto Scaling이 마지막 체크포인트에서 다시 시작하지 않고 이전 인스턴스가 교체되는 경우에만 중지하지도 않습니다. 그러나 교체할 대상으로 새 인스턴스에 앞서 이전 인스턴스를 지정합니다.

  • 체크포인트 비율이 그룹 내 인스턴스 수에 비해 너무 낮으면 실제 완료율이 해당 체크포인트의 백분율보다 높을 수 있습니다. 예컨대, 체크포인트의 백분율이 20%이고 그룹에 4개의 인스턴스가 있다고 가정해 보겠습니다. Amazon EC2 Auto Scaling이 4개의 인스턴스 중 하나를 교체하는 경우, 실제 교체된 백분율(25%)이 체크포인트의 백분율(20%)보다 높습니다.

  • 체크포인트에 도달한 후 표시된 전체 완료율은 인스턴스 워밍업이 완료될 때까지 업데이트되지 않습니다. 예를 들어 체크포인트 백분율은 15분이고 [20,50] 최소 정상 백분율은 80% 입니다. Auto Scaling 그룹에는 10개의 인스턴스가 있으며 다음과 같이 인스턴스를 대체합니다.

    • 0:00: 두 개의 이전 인스턴스가 새 인스턴스로 교체됩니다.

    • 0:10: 두 개의 새 인스턴스가 워밍업을 완료합니다.

    • 0:25: 두 개의 이전 인스턴스가 새 인스턴스로 교체됩니다. (최소 건전 백분율을 유지하기 위해 인스턴스가 두 개만 교체됩니다.)

    • 0:35: 두 개의 새 인스턴스가 워밍업을 완료합니다.

    • 0:35: 한 개의 이전 인스턴스가 새 인스턴스로 교체됩니다.

    • 0:45: 한 개의 새 인스턴스가 워밍업을 완료합니다.

    0:35에서 새 인스턴스 시작 작업이 중지됩니다. 새 인스턴스의 워밍업이 완료되지 않았기 때문에 완료율은 아직 완료된 교체 수(50%)를 정확하게 반영하지 않습니다. 새 인스턴스가 0:45 에 워밍업 기간을 완료한 후 완료율은 50% 로 표시됩니다.