이 문서에서는 Google Distributed Cloud (GDC) 에어 갭에서 클러스터 워크로드의 백업 계획을 만들고 관리하는 방법을 설명합니다.
백업 계획은 백업 시퀀스의 구성, 위치, 관리 기능을 제공합니다. 백업 계획에는 소스 클러스터와 백업할 워크로드 선택을 포함한 백업 구성이 포함됩니다. 모든 클러스터에 하나 이상의 백업 계획을 만드는 것이 좋습니다.
각 클러스터에 백업 계획을 하나 이상 만들 수 있습니다. 다음 중 한 가지 이유로 클러스터의 백업을 파티션으로 나눌 수 있습니다.
- 하루에 한 번 대규모로 백업을 수행하는 대신 하루 중 여러 번 소규모로 백업을 수행합니다.
- 클러스터의 일부를 다른 것보다 더 자주 백업합니다(예: 일부 네임스페이스의 경우 매일 백업, 다른 것은 시간별 백업).
단일 클러스터 또는 가상 머신 (VM)은 하나 이상의 백업 계획에 속할 수 있습니다. 백업 계획은 둘 이상의 클러스터에 걸쳐 있을 수 없습니다. 하지만 단일 백업 계획은 동일한 클러스터에 있는 경우 여러 VM을 캡처할 수 있습니다. 모든 백업 및 복원 리소스는 프로젝트 이름과 연결되어야 합니다.
이 문서는 클러스터 백업 작업을 관리하는 플랫폼 관리자 또는 애플리케이션 운영자 그룹의 개발자를 대상으로 합니다. 자세한 내용은 GDC 에어 갭 문서 대상을 참조하세요.
시작하기 전에
사용자 클러스터를 백업할 때 백업 계획을 만드는 데 사용한 프로젝트가 해당 클러스터에 연결되어 있는지 확인합니다.
IAM 역할 요청
백업 계획을 만들려면 IAM 조직 관리자에게 사용자 클러스터 백업 관리자 (user-cluster-backup-admin) 역할을 부여해 달라고 요청하세요. 이 역할은 사용자 클러스터에서 백업 계획 및 복원 계획과 같은 백업 리소스를 만들고, 가져오고, 나열하고, 감시하고, 업데이트하고, 패치하고, 삭제합니다.
애플리케이션 운영자인 경우 사용자 클러스터 백업 관리자 권한이 있는 관리자에게 백업 계획을 만들어 달라고 요청하세요.
백업 계획 만들기
크론 일정에 따라 백업이 자동으로 생성되도록 백업 계획의 크론 일정을 정의해야 합니다. 워크로드를 수동으로 백업할 수도 있습니다. 자세한 내용은 수동 백업 만들기를 참조하세요.
GDC 콘솔 또는 API를 사용하여 백업 계획을 만듭니다.
콘솔
- GDC 콘솔에 로그인합니다.
- 탐색 메뉴에서 클러스터 백업을 클릭합니다.
- 백업 계획 만들기를 클릭합니다.
- 계획 세부정보 섹션에서 다음 단계를 완료하고 계속을 클릭합니다.
- 클러스터 목록에서 백업할 클러스터를 선택합니다.
- 프로젝트 목록에서 프로젝트를 선택합니다.
- 백업 계획 이름 필드에 선택한 백업 계획 이름을 입력합니다.
- (선택사항) 백업 계획 설명에 백업 계획에 대한 설명을 입력합니다.
- 백업 저장소 필드에서 백업 저장소를 선택합니다. 백업 저장소는 객체 스토리지 구현 집합입니다.
- 다음을 클릭합니다.
범위 및 암호화 섹션에서 다음 단계를 완료하고 계속을 클릭합니다.
백업 계획에 대해 다음 범위 중 하나를 선택합니다.
- 전체 클러스터를 클릭하여 백업의 모든 네임스페이스 리소스를 백업합니다.
- 클러스터 내에서 선택된 네임스페이스를 클릭하여 백업할 클러스터의 네임스페이스를 선택합니다.
- 클러스터 네임스페이스 수정을 클릭한 후 클러스터 네임스페이스 추가를 클릭하여 네임스페이스를 입력합니다.
- 이 클러스터 내에서 선택된 보호되는 애플리케이션을 클릭하고 네임스페이스와 애플리케이션 이름을 지정하여 리소스를 추가합니다.
- 보호되는 애플리케이션 수정을 클릭한 후 보호되는 애플리케이션 추가를 클릭하여 네임스페이스 및 보호되는 애플리케이션을 입력합니다.
보안 비밀 포함을 클릭하여 Kubernetes
Secret리소스를 포함합니다.백업에 볼륨 데이터를 포함하려면 영구 볼륨 데이터 포함을 클릭합니다. 백업 중에 빈 볼륨을 만들려면 이 체크박스를 선택 취소합니다.
일정 및 보관 섹션에서 다음 단계를 완료하고 계속을 클릭합니다.
- 일정을 정의하려면 CRON 문자열 필드에 표준 크론 구문을 사용하여 표현식을 입력합니다. 예를 들어
10 3 * * *표현식은 매일 오전 3시 10분에 백업을 만듭니다. 모든 시간은 UTC로 해석됩니다. 예약된 백업 간의 최소 간격은 10분입니다. - 다음 기간 후 백업 삭제 필드에서 백업을 보관할 일수를 설정합니다. 일수가 지나면 백업이 자동으로 삭제됩니다.
- 백업을 삭제할 수 없는 기간의 일수를 설정합니다.
- 보관 정책을 잠그려면 자물쇠 아이콘을 클릭하여 잠금을 끄기에서 켜기로 전환합니다.
- 일정을 정의하려면 CRON 문자열 필드에 표준 크론 구문을 사용하여 표현식을 입력합니다. 예를 들어
백업 계획 세부정보를 검토하고 계획 만들기를 클릭합니다.
API
클러스터에서 ClusterBackupPlan 커스텀 리소스를 만들어 백업을 예약합니다. 백업 계획은 backupSchedule에 따라 백업을 주기적으로 예약합니다.
ClusterBackupPlan 리소스는 네임스페이스 리소스입니다. 다음은 ClusterBackupPlan의 예입니다.
apiVersion: backup.gdc.goog/v1
kind: ClusterBackupPlan
metadata:
name: CLUSTER_BACKUP_PLAN
namespace: PROJECT_NAME
spec:
targetCluster:
targetClusterType: UserCluster
targetClusterName:
kind: "Cluster"
name: CLUSTER_NAME
backupSchedule:
cronSchedule: CRON_SCHEDULE
paused: BACKUP_SCHEDULE_STATUS
maxConcurrency: MAX_CONCURRENCY
clusterBackupConfig:
backupScope:
selectedNamespaces:
namespaces: [NAME_SPACE]
clusterBackupRepositoryName: CLUSTER_BACKUP_REPOSITORY
retentionPolicy:
backupDeleteLockDays: BACKUP_DELETE_LOCK_DAYS
backupRetainDays: BACKUP_RETAIN_DAYS
description: BACKUP_PLAN_DESCRIPTION
다음을 바꿉니다.
CLUSTER_BACKUP_PLAN: 클러스터 백업 계획 이름PROJECT_NAME: GDC 프로젝트의 이름입니다.CLUSTER_NAME: 백업할 클러스터의 이름입니다. 둘러싸는targetCluster필드에는 다음 구성요소가 있습니다.targetClusterType: 백업할 클러스터 유형입니다(예:UserCluster또는ManagementAPI). 이 예시에서는UserCluster를 사용합니다.targetClusterName:CLUSTER_NAME에 의해 설정된name를 포함합니다.
CRON_SCHEDULE: 백업을 예약할 시기를 나타내는 crontab 일정입니다(예:"*/30 * * * *"). 예약된 백업 간의 최소 간격은 10분입니다.BACKUP_SCHEDULE_STATUS:true이면 정기 백업이 예약되지 않습니다.MAX_CONCURRENCY: 백업 계획에서 동시에 존재할 수 있는 활성 예약 백업의 최대 개수를 지정합니다. 지정된 경우 이 백업 계획에서 예약된 백업 중 이 개수 이하의 백업만 특정 시점에 활성 상태일 수 있습니다. 지정하지 않으면 기본값은 2입니다. 값은 1에서 7 사이여야 합니다.NAME_SPACE: 백업에 포함할 네임스페이스 목록입니다. 둘러싸는clusterBackupConfig필드에는 백업 구성 세부정보가 포함됩니다.backupScope: 백업되는 리소스를 나타냅니다. 다음 예시에서는selectedNamespaces을 사용합니다. 가능한 값은 다음과 같습니다.allNamespaces: 모든 네임스페이스의 모든 리소스를 캡처합니다.selectedNamespaces: 지정된 네임스페이스 목록의 리소스를 캡처합니다.selectedApplication:protectedApplications에 의해 정의된 리소스를 캡처합니다.
namespaces:backupScope이selectedNamespaces인 경우에 적용됩니다.
CLUSTER_BACKUP_REPOSITORY:clusterBackupConfig의clusterBackupRepositoryName값입니다. 백업을 저장하는 대상 저장소이며ReadWrite로 가져와야 합니다.BACKUP_DELETE_LOCK_DAYS: 백업 생성 후 지정된 일수(예:10 days) 동안 백업이 삭제되지 않도록 방지합니다.BACKUP_RETAIN_DAYS: 백업을 보관할 총 일수를 정의합니다. 이 기간이 지나면 백업이 자동으로 삭제됩니다. 이 값을 더 높은 숫자로 설정하면 스토리지가 소진될 수 있으며, 더 낮은 값으로 설정하면 데이터 손실 위험이 증가할 수 있습니다. 지정하지 않으면 이 값은 기본적으로 35로 설정됩니다. 보관 정책은 저장소 위치의 보관 정책을 재정의하지 않으며 90일을 초과할 수 없습니다.BACKUP_PLAN_DESCRIPTION: 백업 계획에 대한 설명입니다.
백업 계획을 만든 후에는 백업 일정에 따라 지정된 백업 구성으로 백업이 자동으로 생성됩니다.
백업 계획 보기
GDC 콘솔을 사용하여 백업 계획을 확인합니다.
- GDC 콘솔에 로그인합니다.
- 탐색 메뉴에서 클러스터 백업을 클릭합니다.
- 프로젝트 선택을 클릭하고 조직을 선택하여 조직의 모든 백업 계획을 확인하거나 프로젝트를 선택하여 프로젝트의 모든 백업 계획을 확인합니다.
- 백업 계획 탭을 클릭합니다.
- 목록에서 백업 계획을 클릭하여 세부정보를 확인합니다. 사용자 클러스터 백업 관리자 권한이 있는 사용자는 조직의 모든 백업 계획을 볼 수 있습니다. 백업 생성자 역할이 있는 사용자는 선택한 프로젝트의 모든 백업 계획을 볼 수 있습니다.
백업 계획 수정
GDC 콘솔을 사용하여 백업 계획을 수정합니다.
- GDC 콘솔에 로그인합니다.
- 탐색 메뉴에서 클러스터 백업을 클릭합니다.
- 프로젝트 선택을 클릭하고 조직을 선택하여 조직의 모든 백업 계획을 확인하거나 프로젝트를 선택하여 프로젝트의 모든 백업 계획을 확인합니다.
- 백업 계획 탭을 클릭합니다.
- 수정할 백업 계획의 이름을 클릭합니다.
- 계획 구성 탭을 클릭하여 수정할 수 있는 필드를 확인합니다.
일정 및 보관의 edit 수정 아이콘을 클릭하여 해당 리소스를 수정합니다.
- 일정을 업데이트하려면 CRON 문자열 필드에 표준 크론 문법을 사용하여 표현식을 입력합니다. 예를 들어
10 3 * * *표현식은 매일 오전 3시 10분에 백업을 만듭니다. 모든 시간은 UTC로 해석됩니다. 예약된 백업 간의 최소 간격은 10분입니다. - 다음 기간 후 백업 삭제 필드에서 백업을 보관할 일수를 설정합니다. 일수가 지나면 백업이 자동으로 삭제됩니다.
삭제 방지 기간 필드에서 백업을 삭제할 수 없는 기간의 일수를 설정합니다.
보관 정책을 잠그려면 자물쇠 아이콘을 끄기에서 켜기로 전환합니다.
저장 버튼을 클릭하여 변경사항을 확인합니다.
- 일정을 업데이트하려면 CRON 문자열 필드에 표준 크론 문법을 사용하여 표현식을 입력합니다. 예를 들어
백업 계획 비활성화
GDC 콘솔을 사용하여 백업 계획을 비활성화합니다.
- GDC 콘솔에 로그인합니다.
- 탐색 메뉴에서 클러스터 백업을 클릭합니다.
- 프로젝트 선택을 클릭하고 조직을 선택하여 조직의 모든 백업 계획을 확인하거나 프로젝트를 선택하여 프로젝트의 모든 백업 계획을 확인합니다.
- 백업 계획 탭을 클릭합니다.
- 비활성화하려는 백업 계획의 이름을 클릭합니다.
- 계획 비활성화 버튼을 클릭합니다.
- 비활성화할 백업 계획의 이름을 필드에 입력합니다.
- 비활성화 버튼을 클릭하여 이 백업 계획의 비활성화를 완료합니다.