Este documento descreve como excluir uma versão específica de um assunto de esquema de um registro de esquema. Há duas maneiras de excluir uma versão do assunto:
Exclusão reversível. Marca a versão como excluída, mas as informações dela são mantidas e podem ser recuperadas.
Exclusão permanente. Remove permanentemente a versão e os dados associados a ela.
Papéis e permissões necessárias
Para receber as permissões
necessárias para excluir uma versão de assunto do esquema,
peça ao administrador para conceder a você o
papel do IAM de Editor do Managed Kafka Schema Registry (roles/managedkafka.schemaRegistryEditor)
no assunto principal.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém as permissões necessárias para excluir uma versão de assunto do esquema. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para excluir uma versão de assunto do esquema:
-
Conceda a seguinte permissão no assunto principal:
managedkafka.googleapis.com/subjectVersions.delete
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Para mais informações sobre papéis predefinidos, consulte os papéis predefinidos do Managed Service para Apache Kafka.
Excluir reversivelmente uma versão de assunto do esquema
Confira algumas práticas recomendadas para exclusão temporária de uma versão de assunto do esquema:
Verifique se não há produtores ou consumidores ativos usando a versão do assunto do esquema que você quer excluir.
Depois de excluir uma versão de assunto do esquema, monitore seus aplicativos para garantir que eles continuem funcionando conforme o esperado.
A exclusão reversível permite a recuperação de versões excluídas de assuntos de esquema, o que é útil se você não tiver certeza sobre a exclusão de uma versão de assunto de esquema.
Para fazer uma exclusão temporária de uma versão de assunto do esquema, siga estas etapas.
Console
No console do Google Cloud , acesse a página Registros de esquema.
Clique no nome do registro de esquema em que seu assunto está localizado.
Em Assuntos neste registro de esquema, clique no nome do assunto.
Na lista Todas as versões, encontre a que você quer excluir e clique em Mais ações.
Clique em Excluir versão.
Na janela Excluir versão do esquema, clique em Exclusão reversível.
Confirme a exclusão digitando
deletee clique em Excluir.
REST
Para excluir de forma reversível uma versão de assunto do esquema, faça uma solicitação DELETE ao
método
projects.locations.schemaRegistries.subjects.versions.delete.
A solicitação precisa ser autenticada com um token de acesso no cabeçalho Authorization. Para conseguir um token de acesso para o Application Default
Credentials atual, execute o seguinte comando:
gcloud auth application-default print-access-token.
Para excluir de forma reversível a versão do assunto do esquema:
Use o seguinte comando para o contexto padrão:
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)Use o comando a seguir para um contexto específico:
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)
Substitua:
- PROJECT_ID: o ID do projeto do Google Cloud , por exemplo,
test-project. - LOCATION: a região Google Cloud em que o
registro de esquema está localizado, por exemplo,
us-central1. - REGISTRY_ID: o ID do seu registro de esquema, por
exemplo,
test_registry. - CONTEXT_ID: o ID do seu contexto. Por exemplo,
test_context. - SUBJECT_ID: o ID do assunto, por exemplo,
test_subject. - VERSION_ID: a versão do assunto a ser excluída, por
exemplo,
2oulatest. - SERVICE_ACCOUNT: a conta de serviço. Por exemplo,
test-service-account@test-project.iam.gserviceaccount.com.
Se a solicitação for bem-sucedida, a API vai retornar um código de status 200 OK e um corpo de resposta vazio.
Para mais informações, consulte a
documentação
do método projects.locations.schemaRegistries.subjects.versions.delete.
Excluir permanentemente uma versão de assunto do esquema
Confira algumas práticas recomendadas para excluir permanentemente uma versão de assunto do esquema:
Verifique se você tem um backup ou uma maneira de recriar a versão do assunto do esquema, se necessário.
Verifique se não há produtores ou consumidores ativos usando a versão do assunto do esquema que você quer excluir.
Sempre teste as exclusões de versão de assunto do esquema em um ambiente de desenvolvimento ou de pré-produção antes de aplicar as mudanças à produção.
Depois de excluir uma versão de assunto do esquema, monitore seus aplicativos para garantir que eles continuem funcionando conforme o esperado.
Use a exclusão permanente quando precisar remover permanentemente uma versão de assunto do esquema.
Para excluir permanentemente uma versão de assunto do esquema, siga estas etapas.
Console
No console do Google Cloud , acesse a página Registros de esquema.
Clique no nome do registro de esquema em que seu assunto está localizado.
Em Assuntos neste registro de esquema, clique no nome do assunto.
Na lista Todas as versões, encontre a que você quer excluir e clique em Mais ações.
Clique em Excluir versão.
Na janela Excluir versão do esquema, clique em Exclusão permanente.
Confirme a exclusão digitando
deletee clique em Excluir. Essa ação exclui a versão do assunto de forma reversível antes de excluir permanentemente.
REST
Para excluir permanentemente uma versão de assunto do esquema usando a API REST, primeiro é preciso fazer uma exclusão temporária. Depois da exclusão temporária, você pode continuar com a exclusão permanente.
Para excluir permanentemente uma versão de assunto do esquema, faça uma solicitação DELETE ao método
projects.locations.schemaRegistries.subjects.versions.delete. Para excluir permanentemente a versão do assunto do esquema, inclua o parâmetro de consulta hardDelete=true.
A solicitação precisa ser autenticada com um token de acesso no cabeçalho Authorization. Para conseguir um token de acesso para o Application Default
Credentials atual, execute o seguinte comando:
gcloud auth application-default print-access-token.
Para excluir permanentemente a versão do assunto do esquema:
Use o seguinte comando para o contexto padrão:
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)Use o comando a seguir para um contexto específico:
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)
Substitua:
- PROJECT_ID: o ID do projeto do Google Cloud , por
exemplo,
test-project. - LOCATION: a região Google Cloud em que o
registro de esquema está localizado, por exemplo,
us-central1. - REGISTRY_ID: o ID do seu registro de esquema, por
exemplo,
test_registry. - CONTEXT_ID: o ID do seu contexto. Por exemplo,
test_context. - SUBJECT_ID: o ID do assunto, por exemplo,
test_subject. - VERSION_ID: a versão do assunto a ser excluída, por
exemplo,
2oulatest. - SERVICE_ACCOUNT: a conta de serviço. Por exemplo,
test-service-account@test-project.iam.gserviceaccount.com.
Se a solicitação for bem-sucedida, a API vai retornar um código de status 200 OK e um corpo de resposta vazio.
Para mais informações, consulte a
documentação
do método projects.locations.schemaRegistries.subjects.versions.delete.
A seguir
- Saiba mais sobre o registro de esquema
- Listar versões do assunto
- Registrar uma nova versão do esquema