> For the complete documentation index, see [llms.txt](https://ia-cloud.gitbook.io/cloudia-manual/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ia-cloud.gitbook.io/cloudia-manual/vm/auto-scaling.md).

# 오토 스케일링 그룹

오토 스케일링 그룹은 가상 머신의 리소스 지표(임계치)를 추적하여 가상 머신(Instance)의 개수를 자동으로 증가 또는 감소시키는 기능입니다.

가상 머신 자원 사용률이 일정 범위에 도달하였을 때 인스턴스 수를 조절하여 안정적인 서비스 운영이 가능합니다.

예를 들어, CPU 사용량이 높아지면 인스턴스를 추가로 생성하며, 낮아지면 인스턴스를 제거함으로써 성능과 비용을 효율적으로 관리할 수 있습니다.

## 오토 스케일링 그룹 목록

목록 조회 페이지에서는 현재 프로젝트에서 생성한 오토 스케일링 그룹의 요약 정보를 확인할 수 있습니다.

### 주요 작업

* `생성`: 새 오토 스케일링 그룹을 생성합니다.
* `편집`: 선택한 오토 스케일링 그룹을 편집합니다.
* `삭제`: 선택한 오토 스케일링 그룹을 삭제합니다. `실행 중`, `일시 중지됨` 상태에서 활성화됩니다.
* `재개`: 선택한 오토 스케일링 그룹의 자동 용량 조정을 재개합니다. `일시 중지됨` 상태의 오토 스케일링 그룹에 대해서 해당 기능이 활성화됩니다.
* `일시 중지`: 선택한 오토 스케일링 그룹의 자동 용량 조정을 일시 중지합니다. `정상 실행 중` 상태의 오토 스케일링 그룹에 대해서 해당 기능이 활성화됩니다.

### 테이블 컬럼

| 컬럼          | 설명                                                                                                                                       |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| **이름**      | 오토 스케일링 그룹의 이름입니다.                                                                                                                       |
| **ID**      | 오토 스케일링 그룹에 부여된 고유 식별자입니다.                                                                                                               |
| **시작 템플릿**  | 오토 스케일링 그룹이 가상 머신 인스턴스를 생성할 때 사용하는 시작 템플릿의 이름입니다.                                                                                        |
| **인스턴스 상태** | 현재 그룹 내 인스턴스의 실행 중인 개수/전체 개수를 나타냅니다. 예를 들어 `3/5`는 총 5개의 인스턴스 중 3개가 현재 정상 실행 중임을 의미합니다.                                                   |
| **상태**      | 오토 스케일링 그룹의 상태 아이콘과 텍스트를 표시합니다. 예를 들어 `생성 중`, `정상 실행 중`, `업데이트 중`, `삭제 중`, `일시 중지됨`, `스케일 인 진행 중`, `스케일 아웃 진행 중` 등의 상태를 아이콘과 텍스트로 보여줍니다. |
| **생성 일시**   | 해당 오토 스케일링 그룹이 처음 생성된 날짜와 시간입니다.                                                                                                         |

***

## 오토 스케일링 그룹 상세

오토 스케일링 그룹의 상세 정보 조회 페이지의 상단에는 상세 정보가 표시됩니다.

페이지 하단에는 **인스턴스 탭**과 **조정 정책 탭**을 선택하여 가상머신 인스턴스 정보와 조정 정책을 확인할 수 있습니다.

### 상단 요약

* **이름** : 오토 스케일링 그룹의 이름입니다.
* **상태** : 오토 스케일링 그룹의 상태를 표시합니다.
* **시작 템플릿** : 오토 스케일링 그룹에서 가상 머신 인스턴스 생성에 사용하는 시작 템플릿의 이름과 ID를 표시합니다.
* **인스턴스 상태** : 현재 그룹 내 인스턴스의 실행 중인 개수/전체 개수를 나타냅니다. (예: `3/5개`)
* **타겟 그룹** : 오토 스케일링 그룹을 생성할 때 함께 생성된 타겟 그룹의 이름과 ID가 표시됩니다.
* **그룹 정보**
  * 최소 용량 : 오토 스케일링 그룹의 최소 용량을 표시합니다.
  * 최대 용량 : 오토 스케일링 그룹의 최대 용량을 표시합니다.
  * 스케일 간격 : 오토 스케일링 그룹의 스케일 간격을 표시합니다.
* **생성 일시** : 오토 스케일링 그룹을 생성한 날짜와 시간입니다.
* **설명** : 오토 스케일링 그룹의 설명입니다.

### 인스턴스 탭

* **이름** : 인스턴스 이름을 표시합니다. (Auto Scaling에서 생성한 인스턴스의 이름은 자동으로 지정됩니다.)
* **ID** : 인스턴스의 고유 ID를 표시합니다.
* **IP** : 인스턴스에 할당된 IP 주소를 표시합니다.
* **상태** : 인스턴스의 현재 상태를 나타냅니다. (예: `실행 중`, `종료됨` 등)
* **vCPU** : 인스턴스의 가상 CPU 개수를 표시합니다.
* **메모리** : 인스턴스의 메모리 크기를 표시합니다.
* **생성 일시** : 해당 인스턴스가 생성된 날짜와 시간입니다.

### 조정 정책 탭

* **리소스 타입** : 오토 스케일링 그룹 용량 조정 기준이 되는 가상 머신 자원의 종류입니다.
* **대상값** : 오토 스케일링 그룹의 자원 사용량 평균치가 도달하였을 때 용량 조정이 발생하는 임계값입니다.
* **조정 정책** : 오토 스케일링 그룹의 자원 사용량 평균치가 대상값에 도달하였을 때 오토 스케일링 그룹의 용량을 늘이거나 줄이고자 하는 정책입니다.

오토 스케일링 그룹 상세 페이지의 **조정 정책 탭**에서 `편집`을 선택하여 오토 스케일링 그룹의 조정 정책을 편집할 수 있습니다.

### 오토 스케일링 그룹 조정 정책 편집

**지표 유형**, **스케일 인 대상값**, **스케일 아웃 대상값**을 변경하고 하단의 `편집` 버튼을 선택하여 변경 사항을 반영합니다.

> ⚠️ **주의:** `스케일 아웃 대상값`은 반드시 `스케일 인 대상값`보다 커야 합니다.

***

## 오토 스케일링 그룹 생성 및 편집

**오토 스케일링 그룹 생성** 페이지에서 오토 스케일링 그룹 생성을 위한 기본 정보를 입력하고 `생성` 버튼을 클릭하여 오토 스케일링 그룹을 생성합니다.

**오토 스케일링 그룹 편집** 페이지는 **오토 스케일링 그룹 생성** 페이지와 동일한 화면으로 구성됩니다. 일부 항목을 제외하고 오토 스케일링 그룹 생성 시 입력한 항목을 변경할 수 있습니다.

> ⚠️ **주의:** 편집 화면에서는 `타겟 그룹 생성 여부`, `프로토콜`, `포트 번호` 항목이 표시되더라도 비활성화되어 변경할 수 없습니다.

### 기본 정보

* **이름** : 오토 스케일링 그룹의 이름을 지정합니다.
* **시작 템플릿** : 오토 스케일링 그룹에서 가상 머신 인스턴스 생성 시 사용할 시작 템플릿을 선택합니다.
* **타겟 그룹** : 로드 밸런서와 연동할 자세 타겟 그룹을 생성할 것인지 결정합니다. (해당 타겟 그룹에 오토 스케일링 그룹에서 관리하는 가상 머신 인스턴스들이 자동으로 등록됩니다.)
* **프로토콜** : 타겟 그룹에서 사용할 프로토콜을 지정합니다. 목록에서 `TCP` 또는 `UDP`를 선택할 수 있습니다.
* **포트 번호** : 타겟 그룹이 트래픽을 전달할 포트 번호를 입력합니다.
* **설명** : 오토 스케일링 그룹에 대한 설명이나 메모를 입력합니다.

> ⚠️ **주의:** 편집 화면에서는 `타겟 그룹 생성 여부`, `프로토콜`, `포트 번호` 항목을 변경할 수 없습니다.

### 그룹 정보

* **최소 용량** : 오토 스케일링 그룹이 유지해야 할 최소 인스턴스 개수를 지정합니다. 자원 사용량이 임계값 미만인 상황에서도 최소 용량 미만으로 인스턴스를 줄이지 않습니다.
* **최대 용량** : 이 그룹이 허용하는 최대 인스턴스 개수를 지정합니다. 자원 사용량이 임계값을 초과한 상황에서도 최대 용량을 초과하여 인스턴스를 늘리지 않습니다.
* **원하는 용량** : 처음에 실행할 인스턴스 개수를 설정합니다. 오토 스케일링 그룹 생성 시 해당 개수의 인스턴스를 시작합니다. 이후 오토 스케일링에 의해 인스턴스 수가 동적으로 변경될 수 있습니다.

> 💡 **참고:** 편집 화면에서 `원하는 용량`을 현재 인스턴스 수와 다른 값으로 지정하면 스케일 인/아웃이 수행됩니다. 단, 직전 용량 조정 이후 `스케일 간격`이 아직 지나지 않았다면 이 변경은 거부되며 오류가 표시됩니다. 이 경우 `스케일 간격`이 경과한 뒤 다시 시도합니다.

### 상태 검사

* **스케일 간격** : 오토 스케일링 그룹이 인스턴스를 추가하거나 제거한 후 다음 용량 조정을 허용할 시간 간격을 입력합니다. 해당 기간 동안에는 추가적인 용량 조정을 수행하지 않으며, 이 기간이 지나지 않은 상태에서 `원하는 용량`을 변경하면 오류와 함께 거부됩니다.

> ⚠️ **주의:** `스케일 간격`이 경과하기 전에 `원하는 용량`을 현재 인스턴스 수와 다른 값으로 변경하려고 하면 변경이 거부되고 오류가 표시됩니다. `스케일 간격`이 지난 뒤 다시 시도하세요.

### 조정 정책

* **지표 유형** : 오토 스케일링의 기준이 될 가상 머신 자원 지표를 선택합니다.
* **스케일 인 대상값** : 인스턴스 감소(스케일 인) 여부를 결정하는 임계값입니다. 오토 스케일링 그룹의 사용량의 평균치가 스케일 인 대상값 이하로 떨어지면 인스턴스를 종료합니다.
* **스케일 아웃 대상값** : 인스턴스를 증가(스케일 아웃) 시킬 트리거 값입니다. 선택한 지표의 평균치가 스케일 아웃 대상값 이상으로 상승하면 새로운 인스턴스를 추가합니다.

### 입력 필드 유효성

| 필드          | 허용 값                         | 검증 규칙                       | 비고                        |
| ----------- | ---------------------------- | --------------------------- | ------------------------- |
| 이름          | 영문 대소문자, 숫자, - 및 \_ (최대 20자) | 허용된 문자 이외 입력 불가, 길이 초과 시 오류 | 필수                        |
| 시작 템플릿      | 존재하는 시작 템플릿에서 선택             | -                           | 필수, 편집 시 변경 불가            |
| 타겟 그룹 사용 여부 | ON/OFF 선택                    | -                           | 선택 사항, 편집 시 변경 불가         |
| 프로토콜        | TCP 또는 UDP                   | -                           | 타겟 그룹 사용 시 필수, 편집 시 변경 불가 |
| 포트 번호       | 정수 1 \~ 65535                | -                           | 타겟 그룹 사용 시 필수, 편집 시 변경 불가 |
| 설명          | 문자 입력 (최대 200자)              | -                           | 선택 사항                     |
| 최소 용량       | 정수 (최소 1 이상)                 | -                           | 필수                        |
| 최대 용량       | 정수 (최소 용량 + 1 이상)            | -                           | 필수                        |
| 원하는 용량      | 정수                           | 최소 용량 \~ 최대 용량 사이           | 필수                        |
| 스케일 간격      | 정수                           | 최소 180초 이상                  | 필수                        |
| 지표 유형       | CPU 평균 사용량 또는 메모리 평균 사용량 선택  | -                           | 필수                        |
| 스케일 인 대상값   | 정수                           | 0 \~ 100 (%)                | 필수                        |
| 스케일 아웃 대상값  | 정수                           | 0 \~ 100 (%)                | 스케일 인 대상값 초과, 필수          |

> 💡 **참고:** 시작 템플릿과 타겟 그룹 생성 여부는 변경할 수 없습니다.

### 생성 시 참고 사항

* 오토 스케일링 그룹 생성 시 재사용 가능한 시작 템플릿만 사용할 수 있습니다.
* 다음에 해당하는 경우 오토 스케일링 그룹 생성이 차단됩니다.
  * 부팅 디스크 외 `디스크`(개별 블록 디바이스)가 포함된 시작 템플릿
  * 네트워크 인터페이스에 `고정 IP`가 지정된 시작 템플릿
  * `GPU 패스스루` 또는 `NPU 패스스루` 장치가 포함된 시작 템플릿
  * 시작 템플릿이 사용하는 서브넷의 가용 IP가 `원하는 용량(초기 인스턴스 수)`에 미달하는 경우
  * 시작 템플릿이 `오브젝트 스토리지`(Managed VNIC)를 사용하는 경우, 관리형 서브넷의 가용 IP가 `원하는 용량(초기 인스턴스 수)`에 미달하는 경우

***

## 오토 스케일링 그룹 삭제

오토 스케일링 그룹 목록에서 삭제하려는 그룹을 선택하고 상단의 `삭제` 버튼을 클릭합니다. 확인 대화상자에서 `확인`을 선택하면 삭제 절차가 진행됩니다.

오토 스케일링 그룹 삭제는 해당 그룹에 속한 모든 가상머신 인스턴스를 종료하고 관련 리소스를 정리합니다.

> 💡 **참고:** 오토 스케일링 그룹의 타겟 그룹이 로드 밸런서에 연결되어 있는 경우 삭제할 수 없습니다.

## 오토 스케일링 그룹 재개

오토 스케일링 목록 조회 페이지에서 오토 스케일링 그룹을 선택하고 `재개` 버튼을 누릅니다.

오토 스케일링 그룹 상태가 다시 `실행 중`으로 바뀌며, 설정된 조정 정책에 따라 오토 스케일링 기능이 다시 동작합니다.

## 오토 스케일링 그룹 일시 중지

오토 스케일링 목록 조회 페이지에서 오토 스케일링 그룹을 선택한 후 `일시 중지` 버튼을 클릭하면 해당 그룹의 상태가 `일시 중지`로 변경됩니다.

`일시 중지` 상태의 오토 스케일링 그룹에서는 오토 스케일링에 의한 인스턴스의 추가 생성이나 축소가 이루어지지 않습니다.
