Como criar e excluir serviços gerenciados

Nesta página, descrevemos como gerenciar o ciclo de vida de serviços gerenciados usando a API Service Management.

O ciclo de vida padrão de um serviço gerenciado inclui as seguintes ações:

  • Uso do método services.create para criar um serviço gerenciado. Depois de criá-lo, saiba mais sobre como usar a API com configuração de serviço e distribuições nos respectivos guias.
  • Uso do método services.delete para descartar um serviço gerenciado seu. O Service Management faz a exclusão reversível do serviço gerenciado e o mantém por 30 dias.
  • Uso do método services.undelete para restabelecer um serviço gerenciado excluído na janela de retenção de 30 dias.

Antes de começar

Para executar os exemplos deste guia, primeiro siga as instruções para concluir a configuração inicial em Primeiros passos com a API Service Management.

Como criar um serviço gerenciado

Use o método services.create para criar um serviço gerenciado. É necessário especificar um nome de serviço compatível com DNS e um nome de domínio verificado. Para saber como atender a esses requisitos, consulte Como configurar endpoints.

O snippet de código a seguir cria um serviço com o nome endpointsapis.appspot.com no projeto endpointsapis:

# Create managed service `endpointsapis.appspot.com`
# in the project `endpointsapis`.
$ gcurl -d '{
  "serviceName": "endpointsapis.appspot.com",
  "producerProjectId": "endpointsapis"
}' https://servicemanagement.googleapis.com/v1/services
{
  "name": "operations/services.endpointsapis.appspot.com-0",
  "metadata": {
    "@type":     "type.googleapis.com/google.api.servicemanagement.v1.OperationMetadata",
    "resourceNames": [
      "/services/endpointsapis.appspot.com"
    ],
    "startTime": ...
    "persisted": true
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.api.servicemanagement.v1.ManagedService",
    "serviceName": "endpointsapis.appspot.com",
    "producerProjectId": "endpointsapis",
    ...
  }
}

O método services.create retorna um recurso de operação de longa duração. Com ele, é possível fazer pesquisas sobre o status da operação por meio do método operations.get até que ela seja concluída. Para saber como fazer isso, consulte Como pesquisar operações de longa duração.

Como receber serviços

Use os métodos services.list ou services.get para listar os serviços ou recuperar um serviço gerenciado específico:

# List services owned by the project `endpointsapis`.
$ gcurl https://servicemanagement.googleapis.com/v1/services?producerProjectId=endpointsapis
{
  "services": [
    {
      "serviceName": "endpointsapis.appspot.com",
      "producerProjectId": "endpointsapis"
    }
    ....
  ]
}

# Get a specified service.
$ gcurl https://servicemanagement.googleapis.com/v1/services/endpointsapis.appspot.com
{
  "serviceName": "endpointsapis.appspot.com",
  "producerProjectId": "endpointsapis"
}

Como excluir um serviço gerenciado

Com o método services.delete, é possível solicitar a exclusão de um serviço gerenciado:

# Delete the managed service `endpointsapis.appspot.com`.
$ gcurl -X DELETE https://servicemanagement.googleapis.com/v1/services/endpointsapis.appspot.com
{
  "name": "operations/services.endpointsapis.appspot.com-1",
  "metadata": {
    "@type":     "type.googleapis.com/google.api.servicemanagement.v1.OperationMetadata",
    "resourceNames": [
      "/services/endpointsapis.appspot.com"
    ],
    "startTime": ...
    "persisted": true
  },
  "response": {
  }
}

O método services.delete retorna um recurso de operação de longa duração. Com ele, é possível fazer pesquisas sobre o status da operação por meio do método operations.get até que ela seja concluída. Para saber como fazer isso, consulte Como pesquisar operações de longa duração.

Chamar o método services.delete *não* exclui o serviço gerenciado de modo imediato e permanente. O serviço gerenciado fica desativado por 30 dias, após o que é permanentemente excluído.

Como cancelar a exclusão de um serviço gerenciado

O método services.undelete possibilita restabelecer um serviço gerenciado excluído. Você pode usar esse método para restaurar serviços gerenciados até 30 dias após a exclusão. O snippet de código a seguir cancela a exclusão do serviço gerenciado especificado:

# Undelete the managed service `endpointsapis.appspot.com`.
$ gcurl -d '{}' https://servicemanagement.googleapis.com/v1/services/endpointsapis.appspot.com:undelete
{
  "name": "operations/services.endpointsapis.appspot.com-2",
  "metadata": {
    "@type":     "type.googleapis.com/google.api.servicemanagement.v1.OperationMetadata",
    "resourceNames": [
      "/services/endpointsapis.appspot.com"
    ],
    "startTime": ...
    "persisted": true
  },
  "response": {
    "@type": "type.googleapis.com/google.api.servicemanagement.v1.ManagedService",
    "serviceName": "endpointsapis.appspot.com",
    "producerProjectId": "endpointsapis",
    ...
  }
}

O método services.undelete retorna um recurso de operação de longa duração. Com ele, é possível fazer pesquisas sobre o status da operação por meio do método operations.get até que ela seja concluída. Para saber como fazer isso, consulte Como pesquisar operações de longa duração.

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Service Infrastructure