스키마 주제 버전 삭제

이 문서에서는 스키마 레지스트리에서 스키마 주제의 특정 버전을 삭제하는 방법을 설명합니다. 주제 버전을 삭제하는 방법에는 두 가지가 있습니다.

  • 소프트 삭제 버전을 삭제됨으로 표시하지만 정보는 보관되며 복구할 수 있습니다.

  • 완전 삭제 버전과 연결된 데이터를 영구적으로 삭제합니다.

필수 역할 및 권한

스키마 주제 버전을 삭제하는 데 필요한 권한을 얻으려면 관리자에게 상위 주제에 대한 관리형 Kafka 스키마 레지스트리 편집자 (roles/managedkafka.schemaRegistryEditor) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

이 사전 정의된 역할에는 스키마 주제 버전을 삭제하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

스키마 주제 버전을 삭제하려면 다음 권한이 필요합니다.

  • 상위 주제에 다음 권한을 부여합니다. managedkafka.googleapis.com/subjectVersions.delete

커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

사전 정의된 역할에 대한 자세한 내용은 Apache Kafka용 관리형 서비스 사전 정의된 역할을 참고하세요.

스키마 주제 버전을 소프트 삭제

스키마 주제 버전을 소프트 삭제할 때의 권장사항은 다음과 같습니다.

  • 삭제하려는 스키마 주제 버전을 사용하는 활성 프로듀서나 컨슈머가 없는지 확인합니다.

  • 스키마 주제 버전을 삭제한 후 애플리케이션이 예상대로 계속 작동하는지 모니터링합니다.

  • 소프트 삭제를 사용하면 삭제된 스키마 주제 버전을 복구할 수 있으므로 스키마 주제 버전 삭제 여부가 확실하지 않은 경우에 유용합니다.

스키마 주제 버전을 일시삭제하려면 다음 단계를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 스키마 레지스트리 페이지로 이동합니다.

    스키마 레지스트리로 이동

  2. 주제가 있는 스키마 레지스트리의 이름을 클릭합니다.

  3. Subjects in this schema registry(이 스키마 레지스트리의 제목)에서 제목 이름을 클릭합니다.

  4. 모든 버전 목록에서 삭제할 버전을 찾아 작업 더보기를 클릭합니다.

  5. 버전 삭제를 클릭합니다.

  6. 스키마 버전 삭제 창에서 소프트 삭제를 클릭합니다.

  7. delete를 입력하여 삭제를 확인한 후 삭제를 클릭합니다.

REST

스키마 주제 버전을 일시적으로 삭제하려면 projects.locations.schemaRegistries.subjects.versions.delete 메서드에 DELETE 요청을 보냅니다.

Authorization 헤더의 액세스 토큰으로 요청을 인증해야 합니다. 현재 애플리케이션 기본 사용자 인증 정보의 액세스 토큰을 얻으려면 gcloud auth application-default print-access-token 명령어를 실행합니다.

스키마 주제 버전을 소프트 삭제하려면 다음 단계를 따르세요.

  • 기본 컨텍스트에는 다음 명령어를 사용합니다.

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/subjects/SUBJECT_ID/versions/VERSION_ID
    Authorization: Bearer $(gcloud auth application-default print-access-token)
    
  • 특정 컨텍스트에는 다음 명령어를 사용하세요.

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/contexts/CONTEXT_ID/subjects/SUBJECT_ID/versions/VERSION_ID
    Authorization: Bearer $(gcloud auth print-access-token --impersonate-service-account=SERVICE_ACCOUNT)
    

다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID(예: test-project)
  • LOCATION: 스키마 레지스트리가 있는 Google Cloud 리전(예: us-central1)
  • REGISTRY_ID: 스키마 레지스트리의 ID입니다(예: test_registry).
  • CONTEXT_ID: 컨텍스트의 ID입니다(예: test_context).
  • SUBJECT_ID: 주체의 ID입니다(예: test_subject).
  • VERSION_ID: 삭제할 주제의 버전입니다(예: 2 또는 latest).
  • SERVICE_ACCOUNT: 서비스 계정(예: test-service-account@test-project.iam.gserviceaccount.com)

요청이 성공하면 API는 200 OK 상태 코드와 빈 응답 본문을 반환합니다.

자세한 내용은 projects.locations.schemaRegistries.subjects.versions.delete 메서드 문서를 참조하세요.

스키마 주제 버전을 완전 삭제합니다.

스키마 주제 버전을 완전 삭제하기 위한 몇 가지 권장사항은 다음과 같습니다.

  • 필요한 경우 백업이 있거나 스키마 주제 버전을 다시 만들 수 있는지 확인합니다.

  • 삭제하려는 스키마 주제 버전을 사용하는 활성 프로듀서나 컨슈머가 없는지 확인합니다.

  • 프로덕션에 변경사항을 적용하기 전에 항상 개발 또는 스테이징 환경에서 스키마 주제 버전 삭제를 테스트하세요.

  • 스키마 주제 버전을 삭제한 후 애플리케이션이 예상대로 계속 작동하는지 모니터링합니다.

  • 스키마 주제 버전을 영구적으로 삭제해야 하는 경우 하드 삭제를 사용합니다.

스키마 주제 버전을 완전 삭제하려면 다음 단계를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 스키마 레지스트리 페이지로 이동합니다.

    스키마 레지스트리로 이동

  2. 주제가 있는 스키마 레지스트리의 이름을 클릭합니다.

  3. Subjects in this schema registry(이 스키마 레지스트리의 제목)에서 제목 이름을 클릭합니다.

  4. 모든 버전 목록에서 삭제할 버전을 찾아 작업 더보기를 클릭합니다.

  5. 버전 삭제를 클릭합니다.

  6. 스키마 버전 삭제 창에서 완전 삭제를 클릭합니다.

  7. delete를 입력하여 삭제를 확인한 후 삭제를 클릭합니다. 이 작업은 주제 버전을 영구 삭제하기 전에 소프트 삭제합니다.

REST

REST API를 사용하여 스키마 주제 버전을 완전 삭제하려면 먼저 일시삭제해야 합니다. 일시삭제가 완료되면 완전삭제를 진행할 수 있습니다.

스키마 주제 버전을 완전 삭제하려면 projects.locations.schemaRegistries.subjects.versions.delete 메서드에 DELETE 요청을 보냅니다. 스키마 주제 버전을 완전 삭제하려면 hardDelete=true 쿼리 매개변수를 포함합니다.

Authorization 헤더의 액세스 토큰으로 요청을 인증해야 합니다. 현재 애플리케이션 기본 사용자 인증 정보의 액세스 토큰을 얻으려면 gcloud auth application-default print-access-token 명령어를 실행합니다.

스키마 주제 버전을 완전 삭제하려면 다음 단계를 따르세요.

  • 기본 컨텍스트에는 다음 명령어를 사용합니다.

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/subjects/SUBJECT_ID/versions/VERSION_ID?hardDelete=true
    Authorization: Bearer $(gcloud auth application-default print-access-token)
    
  • 특정 컨텍스트에는 다음 명령어를 사용하세요.

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/contexts/CONTEXT_ID/subjects/SUBJECT_ID/versions/VERSION_ID?hardDelete=true
    Authorization: Bearer $(gcloud auth print-access-token --impersonate-service-account=SERVICE_ACCOUNT)
    

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 ID(예: test-project) Google Cloud
  • LOCATION: 스키마 레지스트리가 있는 Google Cloud 리전(예: us-central1)
  • REGISTRY_ID: 스키마 레지스트리의 ID입니다(예: test_registry).
  • CONTEXT_ID: 컨텍스트의 ID입니다(예: test_context).
  • SUBJECT_ID: 주체의 ID입니다(예: test_subject).
  • VERSION_ID: 삭제할 주제의 버전입니다(예: 2 또는 latest).
  • SERVICE_ACCOUNT: 서비스 계정(예: test-service-account@test-project.iam.gserviceaccount.com)

요청이 성공하면 API는 200 OK 상태 코드와 빈 응답 본문을 반환합니다.

자세한 내용은 projects.locations.schemaRegistries.subjects.versions.delete 메서드 문서를 참조하세요.

다음 단계

Apache Kafka®는 미국 및/또는 다른 국가에서 사용되는 Apache Software Foundation 또는 해당 계열사의 등록 상표입니다.