스냅샷 일관성 그룹 생성
스냅샷 일관성 그룹을 생성하여 가상 서버 인스턴스에 연결된 여러 볼륨의 특정 시점 복사본을 캡처합니다. 필요에 따라 부팅 볼륨을 포함하거나 제외하십시오.
콘솔, CLI, API 및 Terraform에서 일관성 그룹을 생성할 수 있습니다.
일관성 그룹의 스냅샷을 요청하면, 시스템은 스냅샷을 생성하기 전에 모든 쓰기 작업이 완료되었는지 확인합니다. 그런 다음, 시스템은 가상 서버 인스턴스에 연결된 모든 태그가 지정된 Block Storage 볼륨에 대한 스냅샷을 동시에 생성합니다. 연결된 볼륨의 수와 크기, 그리고 캡처할 데이터의 양에 따라 약간의 IO 일시 정지가 발생할 수 있습니다. 이 IO 일시 중지 시간은 몇 밀리초에서 최대 4초까지 다양할 수 있습니다.
시작하기 전에 다음 정보를 준비해 두세요:
- 일관성 그룹을 나타내는 고유한 이름. 이름은 64자 이내여야 합니다. 이름을 입력하지 않으면 시스템에서 자동으로 이름을 생성합니다. (일관성 그룹 내의 스냅샷은 그룹 이름의 처음 16자와 자동으로 생성된 3~4개의 문자를 조합하여 이름이 지정되므로, 이 스냅샷들의 이름 또한 고유합니다.)
- 소스 볼륨의 ID입니다.
- 선택 사항인 리소스 그룹 ID입니다. 하지만 스냅샷이 생성된 후에는 리소스 그룹을 변경할 수 없습니다.
- 스냅샷에 추가하고 싶은 태그가 있다면 입력해 주세요.
서로 다른 세대의 스냅샷으로 일관성 그룹을 생성하는 것은 지원되지 않습니다.
1세대 볼륨을 허용 목록에 포함된 ‘ sdp ’ 프로필로 마이그레이션하는 것을 고려해 보십시오. sdp 프로파일은 1세대 프로파일보다 더 뛰어난 가성비와 더 높은 유연성을 제공합니다. 자세한 정보는 Block Storage for VPC 프로파일을
참조하십시오.
콘솔에서 일관성 그룹 스냅샷 생성하기
콘솔에서 실행 중인 가상 서버 인스턴스에 연결된 Block Storage for VPC 볼륨에 대한 일관성 그룹 스냅샷을 생성할 수 있습니다.
- 탐색 메뉴 아이콘
> 인프라
> 스토리지 > Block Storage 스냅샷 을 클릭하세요.
- 처음에는 비어 있는 일관성 그룹 목록에서 [ 생성 ]을 클릭합니다.
- 스냅샷 그룹을 정의하기 위해 필요한 정보를 입력하고, 스냅샷 일관성 그룹에 포함할 볼륨이 있는 가상 서버 인스턴스를 선택하십시오.
| 필드 | 값 |
|---|---|
| 위치 | 이 스냅샷 세트의 지리적 범위와 지역을 지정하십시오. |
| 스냅샷 유형 | 여러 권을 선택하십시오. |
| 가상 서버 인스턴스 | 목록에서 서버 인스턴스를 선택하십시오. |
| 일관성 그룹 이름 | 일관성 그룹에 고유한 이름을 지정하십시오. 이름은 64자 이내여야 합니다. 이 필드를 비워 두면 시스템에서 이름을 자동으로 생성합니다. 일관성 그룹 내의 스냅샷은 그룹 이름의 첫 16자와 자동으로 생성된 3~4자의 문자를 조합하여 이름이 지정됩니다. |
| 리소스 그룹 | 스냅샷의 리소스 그룹을 선택하거나 기본값을 사용합니다. 스냅샷을 작성한 후에는 리소스 그룹을 변경할 수 없습니다. |
| 태그 | 이 리소스를 식별하는 데 사용할 사용자 태그를 지정하십시오. |
| 액세스 관리 태그 | 이 리소스에 적용할 액세스 관리 태그를 지정하십시오. |
| 볼륨 | 목록에서 그룹에 포함할 볼륨을 선택하십시오. |
- 작성을 클릭하십시오. 시작했던 화면으로 돌아갑니다. 스냅샷과 일관성 그룹이 생성되는 동안 및 준비가 완료되면 관련 메시지가 표시됩니다. 스냅샷과 일관성 그룹은 ‘ Block Storage ’의 VPC용 스냅샷 페이지에서 각 탭에 표시됩니다. 자세한 내용은 콘솔에서 스냅샷 세부 정보 보기를 참조하십시오.
CLI를 사용하여 일관성 그룹 스냅샷 생성하기
CLI를 사용하려면 먼저 IBM Cloud CLI 및 VPC CLI 플러그인을 설치해야 합니다. 자세한 정보는 CLI 전제조건을 참조하십시오.
-
IBM Cloud® 에 로그인하세요.
ibmcloud login --sso -a cloud.ibm.com이 명령은 URL을 리턴하고 비밀번호를 입력하라는 프롬프트를 표시합니다. 브라우저의 해당 URL로 이동하여 로그인하십시오. 성공하면 일회성 비밀번호를 얻게 됩니다. 이 비밀번호를 복사하여 메시지에 응답으로 붙여넣습니다. 인증에 성공하면 계정을 선택하라는 메시지가 표시됩니다. 여러 계정을 사용할 수 있는 경우, 로그인할 계정을 선택하세요. 나머지 프롬프트에 응답하여 로그인을 완료하십시오.
-
스냅샷 일관성 그룹에서 캡처하려는 인스턴스에 연결된 볼륨을 나열하십시오. 출력 결과에 표시된 볼륨 ID를 확인하십시오.
ibmcloud is instance INSTANCE -
snapshot-consistency-group-create명령을 사용하여 일관성 그룹을 생성하십시오. 일관성 그룹에 포함될 각 스냅샷에 대해 새 스냅샷의 이름과 소스 볼륨의 ID를 지정하십시오.소스 볼륨에 ‘
user_managed’ 암호화가 적용된 경우, ‘--encryption_key’를 지정해야 합니다.--encryption_key속성은 다른 방식으로 지정되어서는 안 됩니다.ibmcloud is snapshot-consistency-group-create --snapshots '[{ "name": "snapshot-no-1", "source_volume": {"id": "r106-bf595773-9922-4dd4-9a3c-998b10022e0c"}, "user_tags": ["env:dev", "env:test"] }, { "name": "snapshot-no-2", "source_volume": {"id": "r106-aeb2bbe6-1d3c-4186-82ce-abddb03e243e"}, "user_tags": ["env:dev", "env:test"] }]' --delete-snapshot-on-delete false --name multiple-snapshots-consistency-group-1 Creating snapshot consistency group under account Test Account as user test.user@ibm.com... ID r006-4625d29b-3ac9-4bee-aca8-9366c4fd0c44 Name multiple-snapshots-consistency-group-1 CRN crn:v1:bluemix:public:is:us-south:a/a1234567::snapshot-consistency-group:r006-4625d29b-3ac9-4bee-aca8-9366c4fd0c44 Href https://us-south.iaas.cloud.ibm.com/v1/snapshots/r006-4625d29b-3ac9-4bee-aca8-9366c4fd0c44 Status pending Backup policy job - Backup policy plan - Delete snapshot on delete false Source Snapshot - Resource group ID Name 11caaa983d9c4beb82690daab08717e9 Default Created 2023-12-05T17:32:53+05:30 Service Tags -
사용 가능한 명령어 옵션에 대한 자세한 내용은 다음을 참조하십시오. ibmcloud is snapshot-consistency-group-create.
API를 사용하여 일관성 그룹 스냅샷 생성하기
시작하기 전에, 스냅샷 일관성 그룹에 캡처할 가상 서버 인스턴스의 세부 정보를 확인해 두십시오. 가상 서버 인스턴스의 경우 GET /instances/ {id} 을 사용하십시오. volume_attachments 의 CRN 또는 ID를 기록해 두시고, 가상 서버
인스턴스의 경우 boot_volume_attachment 도 함께 기록해 두십시오.
다음 예제 요청에서 볼 수 있듯이, VPC API의 /snapshot_consistency_groups 메서드를 호출하여 프로그래밍 방식으로 일관성 그룹을 생성할 수 있습니다.
curl -X POST \
"$vpc_api_endpoint/v1/snapshot_consistency_groups?version=2023-12-05&generation=2"\
-H "Authorization: Bearer $iam_token" \
-d '{
"delete_snapshots_on_delete":true,
"name": "my-snapshot-consistency-group",
"resource_group":{"id": "2d1bb5a8-40a8-447a-acf7-0eadc8aeb054"},
"snapshots": {
{
"name": "my-snapshot-1",
"source_volume": {"crn": "crn:[...]"},
"encryption_key"; "crn:[...]"
},
{
"name": "my-snapshot-2",
"source_volume": {"crn": "crn:[...]"},
"encryption_key"; "crn:[...]"
},
}"
소스 볼륨에 ‘ user_managed ’ 암호화가 적용된 경우, ‘ encryption_key ’를 지정해야 합니다. encryption_key 속성은 다른 방식으로 지정되어서는 안 됩니다.
성공적인 응답은 다음 예제와 유사합니다.
{
"created_at": "2023-12-05T20:18:18Z",
"crn": "crn:[...]",
"delete_snapshots_on_delete": true,
"href": "https://us-south.iaas.cloud.ibm.com/v1/snapshot_consistency_groups/r006-f6bfa329-0e36-433f-a3bb-0df632e79263",
"id": "r006-f6bfa329-0e36-433f-a3bb-0df632e79263",
"lifecycle_state": "pending",
"name": "my-snapshot-consistency-group",
"resource_group": {
"href": "https://resource-controller.cloud.ibm.com/v2/resource_groups/678523bcbe2b4eada913d32640909956",
"id": "2d1bb5a8-40a8-447a-acf7-0eadc8aeb054",
"name": "Default"
},
"resource_type": "snapshot_consistency_group",
"service_tags": [],
"snapshots": [
{
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/snapshots/r006-076191ba-49c2-4763-94fd-c70de73ee2e6",
"id": "r006-076191ba-49c2-4763-94fd-c70de73ee2e6",
"name": "my-snapshot-1",
"resource_type": "snapshot"
},
{
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/snapshots/r006-07e34f34-49c2-4763-94fd-c70de73ae342",
"id": "r006-07e34f34-49c2-4763-94fd-c70de73ae342",
"name": "my-snapshot-2",
"resource_type": "snapshot"
}
]
}
Terraform을 사용하여 일관성 그룹 스냅샷 생성하기
Terraform을 사용하려면 Terraform CLI를 다운로드하고 IBM Cloud® 프로바이더 플러그인을 구성하십시오. 자세한 내용은 ‘Terraform 시작하기’를 참조하십시오.
VPC 인프라 서비스는 특정 리전 엔드포인트를 사용하며, 이 엔드포인트는 기본적으로 us-south 을 대상으로 합니다. VPC가 다른 리전에 생성된 경우, provider.tf 파일의 provider 블록에서 해당 리전을 지정해야 합니다.
기본값인 us-south 이외의 지역을 타겟팅하는 방법은 다음 예시를 참조하십시오.
provider "ibm" {
region = "eu-de"
}
- 가상 서버 인스턴스의 세부 정보를 읽기 전용 데이터 소스로 가져옵니다. 데이터 소스가 생성된 후에는
boot_volume및volume_attachments에서 속성 참조 정보를 확인할 수 있습니다.
data "ibm_is_instance" "example" {
name = ibm_is_instance.example.name
private_key = file("~/.ssh/id_rsa")
passphrase = ""
}
- 일관성 그룹을 구성하려면 ‘
ibm_is_snapshot_consistency_group’ 리소스를 사용하십시오. 다음 예제에서는 두 개의 볼륨으로 구성된 일관성 그룹을 생성합니다.
resource "ibm_is_snapshot_consistency_group" "is_snapshot_consistency_group" {
name = "my-data-consistency-group"
snapshots {
[
name = "snapshot-1"
source_volume = {id = "r016-0a74c6af-f9f5-4671-9025-c4efd41ac6da"}
user_tags = ["my-tag"]
].
[
name = "snapshot-2"
source_volume = {id = "r016-0a74c6af-f9f5-4671-9025-c4efd41ac6db"}
user_tags = ["my-tag"]
]
}
}
인수와 속성에 대한 자세한 내용은 ibm_is_snapshot_consistency_group을 참조하십시오.