O Google Service Management é um serviço de infraestrutura do Google Cloud Platform que gerencia outras APIs e serviços, incluindo os próprios serviços do Google Cloud Platform e as respectivas APIs, além dos serviços criados com o Google Cloud Endpoints.
Se você é um usuário ou um consumidor de serviços, use o Service Management para descobrir serviços e ativá-los ou desativá-los em seus projetos do Google. Como consumidor, use o Service Management por meio do Google Cloud Console (a abordagem mais simples) a partir da linha de comando com o Google Cloud SDK (gcloud), ou programaticamente com a Service Management API. Veja mais detalhes em Ativação e desativação de serviços.
O Service Management também fornece funcionalidade para produtores de serviços, incluindo a publicação de serviços no Google Cloud Platform. Dessa forma, os consumidores de serviços podem encontrá-los, gerenciar a vida útil do serviço e fazer a integração com sistemas de registro e monitoramento. Atualmente, essa funcionalidade é fornecida para usuários do Google Cloud Platform que produzem serviços por meio do Google Cloud Endpoints, que processa muitos dos detalhes de configuração e gerenciamento de serviços para você. Se você é um usuário do Endpoints, provavelmente não precisará chamar a API de produtor do Service Management diretamente, mas interagirá com a interface de linha de comando gcloud para algumas tarefas de implantação e gerenciamento.
Serviços gerenciados
URL da REST: https://servicemanagement.googleapis.com/v1/services/{service-name}
O esquema da REST está definido aqui.
Um serviço gerenciado se refere a um serviço de rede gerenciado pelo Service Management. Cada serviço gerenciado tem um nome exclusivo, como example.googleapis.com, que deve ser um nome DNS válido e totalmente qualificado de acordo com a RFC 1035.
Normalmente, um serviço gerenciado fornece algumas REST APIs e/ou outras funções aos consumidores dos serviços dele, como apps para dispositivos móveis ou serviços na nuvem.
Os produtores de serviços podem usar métodos, como services.create, services.delete ou services.undelete, para manipular os serviços gerenciados deles.
Produtores de serviços
Um produtor de serviços é o projeto do desenvolvedor do Google responsável pela publicação e manutenção de um serviço gerenciado. Cada serviço gerenciado pertence a exatamente um produtor de serviços.
Consumidores de serviços
Um consumidor de serviços é um projeto de desenvolvedor do Google que ativou e pode invocar APIs em um serviço gerenciado. Um serviço gerenciado pode ter vários consumidores de serviços.
Configurações de serviços
URL da REST: https://servicemanagement.googleapis.com/v1/services/{service-name}/configs/{config_id}
O esquema da REST está definido aqui.
Cada serviço gerenciado é descrito por uma configuração de serviços que abrange vários recursos, incluindo os respectivos nome, título, definições da RPC API, definições da REST API, documentação, autenticação e outros mais.
Para alterar a configuração de um serviço gerenciado, o produtor de serviços precisa publicar uma configuração de serviços atualizada no Service Management.
O Service Management mantém um histórico de configurações de serviços publicadas, o que permite reconstituir como uma configuração de serviços evoluiu com o tempo. As configurações de serviços podem ser publicadas com os métodos services.configs.create ou services.configs.submit.
Como alternativa, services.configs.submit permite a publicação de uma especificação OpenAPI, anteriormente conhecida como Especificação Swagger, que é convertida automaticamente em uma configuração de serviços correspondente.
Implementações de serviços
URL da REST: https://servicemanagement.googleapis.com/v1/services/{service-name}/rollouts/{rollout-id}
O esquema da REST está definido aqui.
Uma Rollout define como o Google Service Management deve implantar configurações de serviços em sistemas back-end e como a configuração afeta o tempo de execução. Ela permite que os produtores de serviços especifiquem várias versões da configuração de serviços que serão implantadas juntas e uma estratégia que indica como devem ser usadas.
Atualizar a configuração de um serviço gerenciado pode ser algo perigoso, já que um erro de configuração pode levar à paralisação do serviço. Para mitigar os riscos, o Service Management é compatível com a implementação gradual de alterações na configuração de serviços. Esse recurso permite que os produtores de serviços tenham tempo para identificar possíveis problemas e reverter alterações na configuração de serviços em caso de erros, minimizando assim o impacto de configurações inválidas sobre o consumidor. Por exemplo, você pode especificar que 5% do tráfego usem a configuração 1, enquanto os 95% restantes usem a configuração 2.
O Service Management mantém um histórico de implementações para que os produtores de serviços possam reverter para versões de configuração anteriores. Reverta uma configuração iniciando uma nova Rollout que clone um registro de implementação enviado anteriormente.