Esta página descreve a criação de um serviço e a visualização de informações sobre um serviço. Os serviços são os principais recursos do Knative Serving.
Criar um serviço
Cria um novo serviço e a respetiva revisão implementando uma imagem de contentor no mesmo pela primeira vez. Consulte o artigo Implementar um novo serviço para saber mais sobre a criação de serviços.
Ver a lista de serviços no seu projeto
Pode ver uma lista dos serviços disponíveis no seu projeto através da Google Cloud consola ou da CLI do Google Cloud:
Consola
Para ver a lista de serviços:
Aceda ao Knative serving na Google Cloud consola:
Examine a lista de serviços apresentada para o seu projeto:
Linha de comandos
Para listar os serviços no seu projeto:
gcloud run services list
Pode filtrar esta lista por propriedades da definição de serviço, como uma etiqueta atribuída.
Copiar um serviço
Pode fazer uma cópia de um serviço existente através da Google Cloud consola ou do YAML. Pode alterar o que quiser na cópia, incluindo o nome e a região.
Consola
Para copiar um serviço:
Aceda ao Knative serving na Google Cloud consola:
Selecione o serviço a copiar na lista de serviços apresentada para o seu projeto:
Clique em Copiar.
Na página de cópia do serviço, defina ou altere os valores que quer alterar, como a região, etc. Se mantiver a mesma região, tem de indicar um novo nome para o serviço.
Clique em Criar para fazer uma cópia e implementá-la com o novo nome do serviço.
YAML
Pode transferir a configuração de um serviço existente para um ficheiro YAML com o comando gcloud run services describe
usando a flag --format=export
.
Em seguida, pode modificar esse ficheiro YAML e implementar essas alterações com o comando gcloud run services replace
.
Tem de garantir que modifica apenas os atributos especificados.
Transfira a configuração do seu serviço para um ficheiro denominado
service.yaml
no espaço de trabalho local:gcloud run services describe SERVICE --format export > service.yaml
Substitua SERVICE pelo nome do seu serviço de fornecimento do Knative.
Faça as alterações de configuração desejadas ao serviço, conforme descrito nas várias páginas de configuração.
apiVersion: serving.knative.dev/v1 kind: Service metadata: annotations: ... name: SERVICE ... spec: template: metadata: annotations: ... name: REVISION-NAME
Se estiver a implementar a cópia no mesmo cluster do Kubernetes, substitua SERVICE pelo nome que quer usar para a cópia. Se estiver a implementar a cópia num cluster do Kubernetes diferente, pode usar o mesmo nome.
Certifique-se de que o valor de REVISION-NAME começa com o nome do serviço (SERVICE). Por exemplo, se o novo nome do serviço for
mynewfoo
, o nome da revisão tem de estar no formatomynewfoo-whatever
. Opcionalmente, elimine o valor por completo e é criado automaticamente um novo nome de revisão.
Copie o serviço através do seguinte comando:
gcloud run services replace service.yaml
Use a flag
--region
para implementar a cópia numa região diferente.
Ver mais detalhes sobre um serviço
Para ver mais detalhes sobre um serviço:
Consola
Para ver os detalhes de um serviço:
Aceda ao Knative serving na Google Cloud consola:
Clique no serviço pretendido na lista de serviços apresentada para o seu projeto para abrir a vista de detalhes do serviço:
Tenha em atenção os separadores REVISÕES, REGISTOS e DETALHES. O separador Revisões mostra a lista de revisões, o separador Registos mostra os registos de serviços e o separador Detalhes mostra as definições de autenticação ou conetividade atuais.
Linha de comandos
Para ver detalhes sobre um serviço:
gcloud run services describe SERVICE
Pode usar a flag --format
para formatar a saída. Por exemplo, como YAML:
gcloud run services describe SERVICE --format yaml
Pode usar --format export
para exportar como YAML sem etiquetas ou estado gerados automaticamente:
gcloud run services describe SERVICE --format export
Também pode usar a flag --format
para obter o URL do serviço:
gcloud run services describe SERVICE --format='value(status.url)'
Para ver detalhes sobre as revisões de um serviço, consulte o artigo Gerir revisões.
Alterar as definições de conetividade do serviço
Um serviço de publicação do Knative pode ter uma das duas opções de ligação:
externo, que permite o acesso externo ao seu serviço
internal, que restringe o acesso apenas a outros serviços no seu cluster.
Pode usar a consola ou a Google Cloud CLI para alterar as definições.
Consola
Para alterar as definições de conetividade do serviço:
Aceda ao Knative serving na Google Cloud consola:
Clique no serviço pretendido na lista de serviços apresentada para o seu projeto para abrir a vista de detalhes do serviço.
Clique no separador Acionadores.
Selecione a definição pretendida e clique em Guardar.
Linha de comandos
Para alterar as definições de conetividade do serviço, atualize o serviço com a definição de conetividade pretendida:
gcloud run services update [SERVICE] --connectivity=[OPTION]
Substitua
[SERVICE]
pelo nome do serviço que está a atualizar. Pode omitir este parâmetro na íntegra, mas é-lhe pedido o nome do serviço se o omitir.Substitua
[OPTION]
porinternal
ouexternal
.
Eliminar serviços existentes
A eliminação de um serviço elimina todos os recursos relacionados com este serviço, incluindo todas as revisões deste serviço, quer estejam a publicar tráfego ou não.
Quando elimina um serviço, as imagens de contentores usadas pelas revisões eliminadas não são eliminadas automaticamente do Container Registry. Para eliminar imagens de contentores do Container Registry, consulte o artigo Eliminar imagens.
Tenha em atenção que a eliminação de um serviço é definitiva: não existe a opção de anular ou restaurar. No entanto, se, após eliminar um serviço, implementar um novo serviço com o mesmo nome no mesmo cluster, este terá o mesmo URL do ponto final.
Consola
Para eliminar um serviço:
Aceda ao Knative serving na Google Cloud consola:
Localize o serviço que quer eliminar na lista de serviços e clique na caixa de verificação para o selecionar.
Clique em ELIMINAR. Esta ação elimina todas as revisões do serviço.
Linha de comandos
Para eliminar um serviço, use o comando:
gcloud run services delete [SERVICE]
Substitua [SERVICE]
pelo nome do seu serviço.