arrow_back

Cloud Endpoints: Qwik Start

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Cloud Endpoints: Qwik Start

Lab 1 hora universal_currency_alt 1 crédito show_chart Introdutório
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP164

Laboratórios autoguiados do Google Cloud

Visão geral

Neste laboratório, você implantará uma API de amostra usando o Google Cloud Endpoints, que é um conjunto de ferramentas para gerar APIs em um aplicativo do App Engine. O código de amostra inclui:

  • uma API REST que você pode consultar para encontrar o nome de um aeroporto usando o código IATA de três letras (por exemplo: SFO, JFK e AMS);
  • um script que faz upload da configuração da API para o Cloud Endpoints;
  • um script que implanta um back-end do ambiente flexível do Google App Engine para hospedar a API de amostra.

Depois de enviar algumas solicitações para a API de amostra, você vê gráficos e registros de atividade do Cloud Endpoints. Com essas ferramentas, é possível monitorar APIs e receber informações sobre o uso delas.

Configuração e requisitos

Antes de clicar no botão Start Lab

Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é iniciado quando você clica em Começar o laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.

Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.

Confira os requisitos para concluir o laboratório:

  • Acesso a um navegador de Internet padrão (recomendamos o Chrome).
Observação: para executar este laboratório, use o modo de navegação anônima ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e a conta de estudante, o que poderia causar cobranças extras na sua conta pessoal.
  • Tempo para concluir o laboratório---não se esqueça: depois de começar, não será possível pausar o laboratório.
Observação: não use seu projeto ou conta do Google Cloud neste laboratório para evitar cobranças extras na sua conta.

Como iniciar seu laboratório e fazer login no console do Google Cloud

  1. Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento. No painel Detalhes do laboratório à esquerda, você verá o seguinte:

    • O botão Abrir Console do Cloud
    • Tempo restante
    • As credenciais temporárias que você vai usar neste laboratório
    • Outras informações se forem necessárias
  2. Clique em Abrir Console do Google. O laboratório ativa recursos e depois abre outra guia com a página Fazer login.

    Dica: coloque as guias em janelas separadas lado a lado.

    Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta.
  3. Caso seja preciso, copie o Nome de usuário no painel Detalhes do laboratório e cole esse nome na caixa de diálogo Fazer login. Clique em Avançar.

  4. Copie a Senha no painel Detalhes do laboratório e a cole na caixa de diálogo Olá. Clique em Avançar.

    Importante: você precisa usar as credenciais do painel à esquerda. Não use suas credenciais do Google Cloud Ensina. Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais.
  5. Acesse as próximas páginas:

    • Aceite os Termos e Condições.
    • Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
    • Não se inscreva em testes gratuitos.

Depois de alguns instantes, o console do GCP vai ser aberto nesta guia.

Observação: para ver uma lista dos produtos e serviços do Google Cloud, clique no Menu de navegação no canto superior esquerdo. Ícone do menu de navegação

Ativar o Cloud Shell

O Cloud Shell é uma máquina virtual com várias ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.

  1. Clique em Ativar o Cloud Shell Ícone "Ativar o Cloud Shell" na parte de cima do console do Google Cloud.

Depois de se conectar, vai notar que sua conta já está autenticada, e que o projeto está configurado com seu PROJECT_ID. A saída contém uma linha que declara o projeto PROJECT_ID para esta sessão:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.

  1. (Opcional) É possível listar o nome da conta ativa usando este comando:
gcloud auth list
  1. Clique em Autorizar.

  2. A saída será parecida com esta:

Saída:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Opcional) É possível listar o ID do projeto usando este comando:
gcloud config list project

Saída:

[core] project = <project_ID>

Exemplo de saída:

[core] project = qwiklabs-gcp-44776a13dea667a6 Observação: para conferir a documentação completa da gcloud, acesse o guia com informações gerais sobre a gcloud CLI no Google Cloud.

Tarefa 1: Obter o exemplo de código

  1. Para receber scripts e a API de amostra, digite o comando a seguir no Cloud Shell:
gsutil cp gs://spls/gsp164/endpoints-quickstart.zip . unzip endpoints-quickstart.zip
  1. Acesse o diretório que contém o exemplo de código:
cd endpoints-quickstart

Tarefa 2: Implantar a configuração do Endpoints

Para publicar uma API REST no Endpoints, é necessário um arquivo de configuração OpenAPI que a descreva. A API de amostra do laboratório vem com um arquivo OpenAPI pré-configurado chamado openapi.yaml.

O Endpoints usa o Service Management, um serviço de infraestrutura do Google Cloud para criar e gerenciar APIs e serviços. Para gerenciar APIs com o Endpoints, implante a configuração OpenAPI da API no Service Management.

Para implantar a configuração do Endpoints, faça o seguinte:

  1. No diretório endpoints-qwikstart, digite o comando a seguir:
cd scripts
  1. Execute este script, que está na amostra:
./deploy_api.sh

O Cloud Endpoints usa o campo host no arquivo de configuração OpenAPI para identificar o serviço. O script deploy_api.sh define o ID do projeto na nuvem como parte do nome configurado no campo host. Quando você preparar um arquivo de configuração OpenAPI para seu próprio serviço, precisará fazer isso manualmente.

Em seguida, o script implanta a configuração OpenAPI no Service Management usando este comando: gcloud endpoints services deploy openapi.yaml.

Durante a criação e a configuração do serviço, o Service Management envia algumas informações para o console. É seguro ignorar os avisos sobre os caminhos em openapi.yaml que não exigem uma chave de API. Após a conclusão, uma linha semelhante a esta aparece com o ID das configurações e o nome do serviço:

Service Configuration [2017-02-13-r2] uploaded for service [airports-api.endpoints.example-project.cloud.goog]

Clique em Verificar meu progresso para conferir o objetivo. Implantar a configuração do Endpoints.

Tarefa 3: Implantar o back-end da API

Até agora, você implantou a configuração OpenAPI no Service Management, mas não o código que atenderá o back-end da API. O script deploy_app.sh incluído na amostra do laboratório cria um ambiente flexível do App Engine para hospedar o back-end da API e depois implanta a API no App Engine.

  • Verifique se você está no diretório endpoints-quickstart/scripts para implantar o back-end da API. Depois execute este script:
./deploy_app.sh

O script executa este comando para criar um ambiente flexível do App Engine na região : gcloud app create --region="$REGION"

Leva alguns minutos para criar o back-end do ambiente flexível do App Engine.

Observação: se você receber uma mensagem ERROR: NOT_FOUND: Unable to retrieve P4SA: from GAIA, execute o script deploy_app.sh novamente.

Você verá a seguinte mensagem no Cloud Shell quando o processo estiver concluído:

Success! The app is now created. Please use `gcloud app deploy` to deploy your first app.

O script executa o comando gcloud app deploy para implantar a API de amostra no App Engine.

Em seguida, você verá uma linha como esta no Cloud Shell:

Deploying ../app/app_template.yaml...You are about to deploy the following services:

A implantação da API no App Engine demora vários minutos. Quando ela é concluída, você vê uma linha semelhante a esta:

Deployed service [default] to [https://example-project.appspot.com]

Clique em Verificar meu progresso para conferir o objetivo. Implantar o back-end da API.

Tarefa 4: Enviar solicitações à API

  1. Depois de implantar a API de amostra, você pode enviar solicitações para ela executando este script:
./query_api.sh

O script devolve (ecoa) o comando curl que usou para enviar uma solicitação à API e depois mostra o resultado. Você verá algo parecido com a mensagem a seguir no Cloud Shell:

curl "https://example-project.appspot.com/airportName?iataCode=SFO" San Francisco International Airport

A API espera um parâmetro de consulta, iataCode, que está definido como um código aeroportuário IATA válido (por exemplo, SEA ou JFK).

  1. Para testar, execute este exemplo no Cloud Shell:
./query_api.sh JFK

Você acabou de implantar e testar uma API no Cloud Endpoints.

Clique em Verificar meu progresso para conferir o objetivo. Enviar solicitações à API.

Tarefa 5: Rastrear a atividade da API

Usando as APIs implantadas com o Cloud Endpoints, você monitora métricas de operações importantes no console do Cloud e recebe insights sobre seus usuários e a utilização com o Logging.

  1. Execute este script de geração de tráfego no Cloud Shell para preencher os gráficos e registros:
./generate_traffic.sh Observação: este script gera solicitações repetidas e expira automaticamente em 5 minutos. Para encerrar o script antes disso, pressione Ctrl+C no Cloud Shell.
  1. No console, acesse Menu de navegação > Endpoints > Serviços e selecione a opção Códigos de aeroportos para verificar os gráficos de atividade. Talvez leve alguns instantes para a solicitação aparecer nos gráficos. É possível fazer o seguinte enquanto você espera que os dados sejam mostrados:
  • Se o painel lateral "Permissões" não estiver aberto, clique em Mostrar painel de permissões. Nele, é possível controlar quem pode usar a API e o nível de acesso.

  • Clique na guia Histórico de implantações Esta guia exibe um histórico de implantações da API, inclusive o horário da implantação e quem fez a alteração.

  • Clique na guia Visão geral. Nesse local, você vai encontrar o tráfego de entrada. Depois de um minuto executando o script de geração de tráfego, role para baixo e confira as três linhas no gráfico Latência total (50º, 95º e 99º percentis). Esses dados mostram uma estimativa rápida dos tempos de resposta.

  1. Na parte de baixo dos gráficos dos Endpoints, em "Método", clique no link Acessar registros de GET/airportName. A página "Visualizador de registros" mostra os registros de solicitações da API.

  2. Pressione Ctrl+C no Cloud Shell para interromper o script.

Tarefa 6: Adicionar uma cota à API

Observação: esta é uma versão Beta do recurso de cotas. Talvez ela tenha mudanças incompatíveis com versões anteriores e não está sujeita a SLAs nem políticas de descontinuação.

O Cloud Endpoints permite que você defina cotas para controlar a frequência com que os aplicativos podem chamar sua API. Você pode usar cotas para proteger sua API do uso excessivo por um único cliente.

  1. Implante a configuração do Endpoints com uma cota:

    ./deploy_api.sh ../openapi_with_ratelimit.yaml
  2. Implante o aplicativo mais uma vez para usar a nova configuração do Endpoints. Isso talvez demore alguns minutos:

    ./deploy_app.sh

    Clique em Verificar meu progresso para conferir o objetivo. Adicionar uma cota à API.

  3. No console, acesse Menu de navegação > APIs e serviços > Credenciais.

  4. Clique em Criar credenciais e selecione Chave de API. Uma nova chave de API aparece na tela.

  5. Clique no ícone Copiar para a área de transferência.

  6. No Cloud Shell, digite este comando. Substitua YOUR-API-KEY pela chave de API que você acabou de criar:

    export API_KEY=YOUR-API-KEY
  7. Envie à sua API uma solicitação usando a variável de chave de API recém-criada:

    ./query_api_with_key.sh $API_KEY

    Você verá algo parecido com isto no console:

    curl -H 'x-api-key: AIzeSyDbdQdaSdhPMdiAuddd_FALbY7JevoMzAB' "https://example-project.appspot.com/airportName?iataCode=SFO" San Francisco International Airport
  8. Agora a API tem um limite de cinco solicitações por segundo. Execute o comando a seguir para enviar o tráfego para a API e acionar o limite da cota:

    ./generate_traffic_with_key.sh $API_KEY
  9. Depois de executar o script durante 5 a 10 segundos, pressione Ctrl+C no Cloud Shell para interrompê-lo.

  10. Envie outra solicitação autenticada à API:

    ./query_api_with_key.sh $API_KEY

    Você verá algo parecido com isto no console:

{ "code": 8, "message": "Insufficient tokens for quota 'airport_requests' and limit 'limit-on-airport-requests' of service 'example-project.appspot.com' for consumer 'api_key:AIzeSyDbdQdaSdhPMdiAuddd_FALbY7JevoMzAB'.", "details": [ { "@type": "type.googleapis.com/google.rpc.DebugInfo", "stackEntries": [], "detail": "internal" } ] }

Se você receber uma resposta diferente, execute o script generate_traffic_with_key.sh e tente de novo.

Clique em Verificar meu progresso para conferir o objetivo. Criar uma chave de API e um limite de cota de teste enviando solicitações.

Parabéns!

Parabéns! Você criou uma limitação de taxa para sua API. Você também pode definir limites variados em diferentes métodos de API, criar diversos tipos de cotas e acompanhar quais consumidores usam quais APIs.

Comece o próximo laboratório

Este laboratório faz parte de uma série chamada Qwik Starts. Ela foi desenvolvida para apresentar a você alguns dos vários recursos disponíveis no Google Cloud. Procure “Qwik Starts” no catálogo de laboratórios para decidir qual deles você quer fazer em seguida.

Próximas etapas / Saiba mais

Para mais informações sobre cotas, consulte estes documentos:

Treinamento e certificação do Google Cloud

Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.

Manual atualizado em 22 de novembro de 2023

Laboratório testado em 22 de novembro de 2023

Copyright 2024 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.