리소스 관리 및 삭제
이 페이지에서는 Config Connector가 기존 리소스를 관리하고 리소스 삭제를 처리하는 방법을 설명합니다.
구성 커넥터를 사용하여 리소스를 정의하면 다음 작업 중 하나가 발생합니다.
- 리소스가 없으면 Config Connector가 리소스를 만듭니다. 새 리소스 생성 예시는 시작하기를 참고하세요.
- 동일한 이름의 리소스가 이미 존재하는 경우 구성 커넥터가 해당 리소스를 가져와서 관리하기 시작합니다. Config Connector는 조직, 프로젝트 또는 폴더에서 이름을 확인합니다. 이 페이지에서는 구성 커넥터가 리소스를 획득, 관리, 삭제하는 방법을 자세히 설명합니다.
resourceID 필드를 사용하여 리소스를 관리할 수도 있습니다. 일부 리소스는 resourceID 필드를 사용해야만 가져올 수 있습니다. 일부 리소스는 새 리소스로만 생성할 수 있으며 획득할 수는 없습니다. 자세한 내용은 resourceID 필드로 리소스 관리를 참고하세요.
기존 리소스 확보
이 섹션에서는 BigQuery 리소스를 예로 사용하여 Config Connector로 기존 리소스를 획득하는 방법을 설명합니다.
시작하기 전에
- BigQuery API를 사용 설정합니다.
bq명령줄 도구에 액세스할 수 있는지 확인하세요.bq가 없으면 Cloud Shell을 사용하거나 gcloud CLI를 사용하여 설치하세요.
BigQuery 데이터세트 획득
구성 커넥터는 매니페스트의 값과 리소스 이름이 일치할 때 리소스를 획득하거나 제어합니다. 리소스에 이름이 없는 경우(예: 프로젝트 ID) 리소스의 ID가 사용됩니다.
빈 BigQuery 데이터 세트를 만든 다음 Config Connector로 데이터 세트를 획득하여 Config Connector가 기존 리소스를 처리하는 방법을 알아봅니다.
bq을 사용하여 이름이bigquerydatasetsample인 BigQuery 데이터 세트를 만드세요.bq --location=US mk \--dataset \ --default_table_expiration 3600 \ --description description \ PROJECT_ID:bigquerydatasetsample다음 내용을
bq-sample.yaml파일에 복사합니다.apiVersion: bigquery.cnrm.cloud.google.com/v1beta1 kind: BigQueryDataset metadata: name: bigquerydatasetsample spec: defaultTableExpirationMs: 3600000 description: "BigQuery Dataset Sample" friendlyName: bigquerydataset-sample location: USYAML을 클러스터에 적용합니다.
kubectl apply --namespace CC_NAMESPACE -f bq-sample.yaml
CC_NAMESPACE를 Config Connector가 관리하는 리소스의 네임스페이스로 바꿉니다.데이터 세트에 대한 세부정보를 보려면
kubectl describe을 사용합니다.kubectl describe --namespace CC_NAMESPACE bigquerydataset bigquerydatasetsample
CC_NAMESPACE를 Config Connector가 관리하는 리소스의 네임스페이스로 바꿉니다.kubectl describe의 결과에는 리소스 상태 및 소유권에 대한 메타데이터가 포함됩니다.
데이터 세트 삭제
기본적으로 Config Connector는 리소스를 확보하고 관리한 후 클러스터에서 객체를 삭제하면 리소스가 삭제됩니다. 데이터 세트를 유지하려면 리소스의 deletion-policy를 설정하세요.
예를 들어 bigquerydataset-sample을 획득한 매니페스트를 삭제하면 BigQuery에서 데이터 세트가 삭제됩니다.
kubectl delete을 사용하여bigquerydataset-sample데이터 세트를 삭제할 수 있습니다.kubectl delete --namespace CC_NAMESPACE -f bq-sample.yaml
CC_NAMESPACE를 구성 커넥터가 관리하는 리소스의 네임스페이스로 바꿉니다.kubectl의 출력에서 삭제를 확인할 수 있습니다.bigquerydataset.bigquery.cnrm.cloud.google.com "bigquerydatasetsample" deletedbq을 사용하여 데이터 세트가 더 이상 존재하지 않는지 확인합니다.bq show PROJECT_ID:bigquerydatasetsample
명령어의 결과에는
Not Found이 포함됩니다.
삭제 후 리소스 유지
...
metadata:
annotations:
cnrm.cloud.google.com/deletion-policy: abandon
...
예를 들어, abandon 삭제 정책을 포함하여 앞에서 설명한 BigQuery 데이터 세트의 YAML은 다음과 같습니다.
apiVersion: bigquery.cnrm.cloud.google.com/v1beta1
kind: BigQueryDataset
metadata:
name: bigquerydatasetsample
annotations:
cnrm.cloud.google.com/deletion-policy: abandon
spec:
defaultTableExpirationMs: 3600000
description: "BigQuery Dataset Sample"
friendlyName: bigquerydataset-sample
location: US
획득 관련 제한사항이 있는 리소스
일부 리소스는 이전 섹션의 안내에 따라 획득할 수 없습니다. 이 섹션에서는 일부 리소스의 획득과 관련된 제한사항을 자세히 설명합니다.
서비스 생성 리소스 ID가 있는 리소스
resourceID 필드를 사용하면 서비스 생성 리소스 ID가 있는 Google Cloud 리소스만 획득할 수 있습니다.
다음 구성 커넥터 리소스는 서비스 생성 리소스 ID가 있는 Google Cloud리소스에 해당합니다.
AccessContextManagerAccessPolicyApigeeOrganizationBillingBudgetsBudgetCloudIdentityGroupCloudIdentityMembershipComputeFirewallPolicyDLPDeidentifyTemplateDLPInspectTemplateDLPJobTriggerDLPStoredInfoTypeFolderIAPBrandIAPIdentityAwareProxyClientIdentityPlatformTenantMonitoringAlertPolicyMonitoringGroupMonitoringNotificationChannelMonitoringUptimeCheckConfigRecaptchaEnterpriseKeyResourceManagerLienSQLSSLCertSecretManagerSecretVersionStorageNotificationStorageTransferJobVertexAIDatasetVertexAIIndex
resourceID 필드를 사용하는 방법은 resourceID 필드로 리소스 관리를 참조하세요.
획득할 수 없는 리소스
다음 구성 커넥터 리소스는 기존 Google Cloud 리소스 획득을 지원하지 않습니다.
DataflowFlexTemplateJobFirestoreIndexIAMServiceAccountKey
다음 단계
- Config Connector가 Kubernetes 구성으로 Google Cloud 리소스를 모델링하는 방법을 알아봅니다.
- Config Connector가 관리할 수 있는 Google Cloud 리소스를 참고하세요.
- GitHub 저장소에서 Config Connector를 사용하는 방법의 추가 예시를 참조하세요.
- Kubernetes가 객체의 선언적 구성을 처리하는 방법 알아보기