> 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/user-guide/examples-and-labs/16-create-golden-image-from-snapshot.md).

# 스냅샷 이미지 생성으로 골든 이미지 만들기 및 인스턴스 실행

이 문서는 인스턴스 스냅샷에서 이미지를 생성해 골든 이미지로 활용하고, 새 인스턴스를 실행하는 실습입니다.

## 사전 준비

* Cloud:iA 웹콘솔 접근 가능
* 프로젝트 계정(`project-owner`)으로 로그인 가능
* [인스턴스 스냅샷 롤백하기](/cloudia-manual/user-guide/examples-and-labs/15-rollback-instance-to-snapshot.md)에서 생성한 스냅샷 또는 부팅 가능한 스냅샷 존재
* Linux 게스트에서 `cloud-init`를 사용하는 경우, 골든 이미지 생성 전에 `cloud-init clean` 수행 가능

## 개요

1. [골든 이미지 생성 전 준비](#step-1)
2. [스냅샷에서 이미지 생성](#step-2)
3. [이미지 목록 확인](#step-3)
4. [골든 이미지로 인스턴스 생성](#step-4)

## 1단계: 골든 이미지 생성 전 준비

**수행 계정/화면:** `인스턴스 OS 접속`

Golden Image에 `cloud-init` 상태가 그대로 포함되지 않도록, 이미지 생성 전에는 게스트 OS에서 `cloud-init clean`을 수행하는 것을 표준 절차로 권장합니다.

특히 `PER_ONCE` 단계의 사용자 스크립트가 이미 실행된 상태에서 이미지를 만들면, 해당 실행 이력이 이미지에 포함되어 새 인스턴스에서 `PER_ONCE` 스크립트가 기대대로 다시 실행되지 않을 수 있습니다.

또한 게스트 OS에 남아 있는 사용자 계정은 이미지에 그대로 포함되어, 이 이미지로 만든 새 인스턴스에도 유지됩니다. CloudiA는 인스턴스 생성 시 지정한 계정 하나만 관리하므로, 이미지에 불필요한 계정이 남아 있지 않도록 골든 이미지 생성 전에 직접 정리합니다.

### 절차

1. 대상 Linux 인스턴스에 접속합니다.
2. 필요한 애플리케이션/설정을 모두 마무리합니다.
3. 이미지에 남길 필요가 없는 OS 사용자 계정이 있으면 정리합니다(예: `sudo userdel -r <계정>`).
4. `sudo cloud-init clean`을 실행합니다.
5. 인스턴스를 정상 종료합니다.
6. 종료된 인스턴스 기준으로 스냅샷 또는 이미지를 생성합니다.

### 확인

* `cloud-init` 실행 이력과 캐시가 정리된 상태로 이미지를 생성할 수 있습니다.
* 새 인스턴스에서 `cloud-init` 초기 부팅 절차가 다시 시작됩니다.

## 2단계: 스냅샷에서 이미지 생성

**수행 계정/화면:** `프로젝트 계정` / `프로젝트 페이지`

### 절차

1. 대상 인스턴스 상세 화면에서 `인스턴스 구성 요소 > 스냅샷`으로 이동합니다.
2. 부팅 가능한 스냅샷을 선택하고 `이미지 생성`을 클릭합니다.
3. 스토리지 도메인과 이미지 이름을 입력하고 생성합니다. (생성된 이미지는 `스토리지 > 이미지`에서 확인합니다.)

### 입력 예시

| 항목       | 값                          |
| -------- | -------------------------- |
| 스냅샷      | `example-snapshot-001`     |
| 스토리지 도메인 | `NFS-SD`                   |
| 이미지 이름   | `example-golden-image-001` |

### 확인

* 이미지 생성 요청 토스트가 표시됩니다.

## 3단계: 이미지 목록 확인

**수행 계정/화면:** `프로젝트 계정` / `프로젝트 페이지`

### 절차

1. `스토리지 > 이미지`로 이동합니다.
2. 생성한 이미지 이름으로 검색합니다.

### 입력 예시

| 항목  | 값                          |
| --- | -------------------------- |
| 검색어 | `example-golden-image-001` |

### 확인

* 목록에 `example-golden-image-001`이 표시됩니다.
* 분류가 `프로젝트 이미지`로 표시됩니다.

## 4단계: 골든 이미지로 인스턴스 생성

**수행 계정/화면:** `프로젝트 계정` / `프로젝트 페이지`

### 절차

1. `가상머신 > 인스턴스`에서 `생성`을 클릭합니다.
2. OS 이미지로 `example-golden-image-001`을 선택합니다.
3. 네트워크/인증 정보를 입력하고 인스턴스를 생성합니다.
4. 인스턴스를 실행합니다.

### 입력 예시

| 항목        | 값                                  |
| --------- | ---------------------------------- |
| 인스턴스 이름   | `example-instance-from-golden-001` |
| 인스턴스 타입   | `t2.medium`                        |
| OS 이미지    | `example-golden-image-001`         |
| 디스크 크기 설정 | `30 GB`                            |
| VPC       | `example-vpc`                      |
| 서브넷       | `example-subnet`                   |
| IP 주소     | `자동 할당`                            |
| 보안그룹      | `example-vpc-default-sg`           |
| 사용자 이름    | `cloudia`                          |
| 비밀번호      | `cloudia`                          |

### 확인

* 인스턴스가 정상 생성되고 `실행 중`으로 전환됩니다.
* 골든 이미지 기준으로 동일 초기 구성이 반영됩니다.
