Sobre os serviços do GCP

Nesta visão geral, apresentamos alguns dos serviços do Google Cloud Platform (GCP) mais usados. A lista completa de serviços está disponível na página Produtos e serviços.

Esta visão geral abrange os seguintes tipos de serviços:

Serviços de computação e hospedagem

O GCP oferece opções de computação e hospedagem. As opções incluem:

  • trabalhar em um ambiente sem servidor;
  • usar uma plataforma de aplicativos gerenciados;
  • aproveitar as tecnologias de contêiner para ter mais flexibilidade;
  • criar a própria infraestrutura na nuvem para ter mais controle e flexibilidade.

Imagine que, de um lado, boa parte das responsabilidades pelo gerenciamento de recursos seja sua e, de outro, é o Google quem cuida da maioria delas:

As opções de computação e hospedagem oferecem uma variedade de requisitos operacionais.

Computação sem servidor

O Cloud Functions, a oferta de funções como serviço (FaaS, na sigla em inglês) do GCP, dispõe de um ambiente de execução sem servidor para criar e conectar serviços de nuvem. Com ele, você grava funções simples e específicas, vinculadas a eventos gerados pela infraestrutura e pelos serviços em nuvem. A Função do Cloud é executada quando um evento monitorado é gerado. O código é executado em um ambiente totalmente gerenciado. Não é preciso provisionar infraestruturas nem se preocupar com o gerenciamento de servidores.

Grave as Funções do Cloud com o JavaScript e execute-as em um ambiente do Node.js v6.11.5 no GCP. É possível executar a Função do Cloud em qualquer ambiente de execução padrão do Node.js, o que facilita a portabilidade e o teste local.

As Funções do Cloud são uma boa opção para casos de uso com:

  • Operações de processamento de dados e ETL em situações como transcodificação de vídeo e dados de streaming da Internet das Coisas (IoT na sigla em inglês).
  • Webhooks para responder a gatilhos de HTTP.
  • APIs leves que compreendem uma lógica superficialmente acoplada a aplicativos.
  • Funções de back-end para dispositivos móveis.

Plataforma do aplicativo

O App Engine é a Platform as a Service (PaaS, na sigla em inglês) do GCP. Com o App Engine, o Google lida com boa parte do gerenciamento dos recursos para você. Por exemplo, se o aplicativo precisa de mais recursos de computação porque o tráfego para o site cresce, o Google escalona automaticamente o sistema para fornecê-los. Se o software do sistema precisar de atualização da segurança, ela também está inclusa.

Ao criar o aplicativo no App Engine, é possível:

  • criar o aplicativo com os ambientes de execução do ambiente padrão do App Engine nas linguagens compatíveis com esse ambiente, como Python 2.7, Java 8, Java 7, PHP 5.5, e Go 1.8, 1.6;

  • criar o aplicativo com os ambientes de execução do ambiente flexível do App Engine nas linguagens compatíveis com o App Engine flexível, como Python 2.7/3.6, Java 8, Go 1.8, Node.js, PHP 5.6, 7, .NET, e Ruby; Também é possível usar ambientes de execução personalizados para usar uma implementação alternativa de uma linguagem compatível ou qualquer outra linguagem;

  • permitir que o Google gerencie a hospedagem, o escalonamento, o monitoramento e a infraestrutura do aplicativo para você;

  • usar o SDK do App Engine para desenvolver e testar a máquina local em um ambiente que simule o App Engine no GCP;

  • usar facilmente as tecnologias de armazenamento compatíveis com o projeto do App Engine nos ambientes padrão e flexível.

    O Cloud SQL é um banco de dados SQL compatível com MySQL, SQL Server e PostgreSQL. O Cloud Datastore é um armazenamento de dados NoSQL sem esquema. O Cloud Storage oferece espaço para seus arquivos grandes.

    No ambiente padrão, escolha um dos vários bancos de dados de terceiros, como Redis, MongoDB, Cassandra e Hadoop, para usar com os aplicativos.

    No ambiente flexível, use tranquilamente qualquer banco de dados de terceiros compatível com sua linguagem se puder acessá-lo na instância do App Engine.

    Em qualquer um dos ambientes, os bancos de dados de terceiros podem ser hospedados no Compute Engine, em outro provedor de nuvem, no local ou gerenciados por um fornecedor terceirizado;

  • usar o Cloud Endpoints no ambiente padrão para gerar APIs e bibliotecas de cliente que possam ser usadas para simplificar o acesso aos dados de outros aplicativos. O Endpoints facilita a criação de um back-end da Web para clientes da Web e clientes de dispositivos móveis, como Android ou iOS;

  • usar os serviços gerenciados integrados em atividades como e-mail e gerenciamento de usuários;

  • usar a API Web Security Scanner para identificar vulnerabilidades de segurança como um complemento aos seus processos seguros de design e desenvolvimento;

  • implantar o app pelo aplicativo GUI do Iniciador do App Engine no macOS ou no Microsoft Windows ou pela linha de comando;

  • e, para o ambiente padrão, executar o aplicativo nas regiões Central dos EUA ou Europa Ocidental.

Para obter uma lista completa e uma descrição dos recursos do App Engine, consulte a documentação do App Engine.

Contêineres

Com a computação com base em contêiner, é possível se concentrar no código do aplicativo, não nas implantações e integrações a ambientes de hospedagem. O Google Kubernetes Engine (GKE), oferta de contêineres como serviço (CaaS, na sigla em inglês) do GCP, é criado no sistema de código aberto Kubernetes, que oferece a flexibilidade de nuvens híbridas ou no local, além da infraestrutura em nuvem pública do GCP.

Ao criar com o GKE, é possível:

  • criar e gerenciar grupos de instâncias do Compute Engine que executam o Kubernetes, chamados clusters. O GKE usa instâncias do Compute Engine na forma de nós em clusters. Cada nó executa o ambiente de execução do Docker, um agente de nós do Kubernetes que monitora a integridade do nó e um proxy de rede simples;

  • declarar os requisitos dos contêineres do Docker criando um arquivo de configuração JSON simples;

  • usar o Container Registry no armazenamento seguro e particular de imagens do Docker; É possível enviar imagens por Push para o registro e, em seguida, enviá-las por Pull para qualquer instância do Compute Engine ou seu próprio hardware usando um endpoint HTTP;

  • criar pods de um ou vários contêineres. Cada pod representa um host lógico que pode conter um ou mais contêineres. Os contêineres pod funcionam juntos nos pods ao compartilharem recursos, como os de rede. Juntos, um grupo de pods pode abranger um aplicativo inteiro, um microsserviço ou uma camada em um aplicativo de vários níveis;

  • criar e gerenciar controladores de replicação, que gerenciam a criação e a exclusão de réplicas de pods com base em um modelo. Os controladores de replicação ajudam a garantir que o aplicativo tenha os recursos necessários para ter uma execução segura e escalonamento adequado;

  • criar e gerenciar serviços. Os serviços criam uma camada de abstração que desconecta os clientes de front-end dos pods com funções de back-end. Assim, os clientes podem trabalhar sem dúvidas sobre quais pods estão sendo criados e excluídos em um dado momento;

  • e criar um balanceador de carga de rede externa.

Máquinas virtuais

O serviço de computação não gerenciado do GCP é o Compute Engine. Pense no Compute Engine como um fornecedor de Infrastructure as a Service (IaaS, na sigla em inglês) porque o sistema oferece uma infraestrutura de computação robusta, mas é preciso escolher e configurar os componentes da plataforma que você quer usar. Com o Compute Engine, é sua responsabilidade configurar, administrar e monitorar os sistemas. O Google garantirá que os recursos estejam disponíveis, sejam seguros e estejam prontos para você usar, mas cabe a você provisioná-los e gerenciá-los. A vantagem, nesse caso, é que você tem controle total dos sistemas e flexibilidade ilimitada.

Ao criar no Compute Engine, é possível:

  • usar máquinas virtuais (VMs, na sigla em inglês), chamadas instâncias, para criar o aplicativo, de maneira semelhante ao que você faz na infraestrutura de hardware. Escolha dentre uma variedade de tipos de instância para personalizar a configuração a fim de atender às necessidades e ao orçamento;

  • escolher em quais regiões e zonas do globo os recursos devem ser implantados, tendo controle de onde os dados são armazenados e usados;

  • escolher quais sistemas operacionais, pilhas de desenvolvimento, linguagens, frameworks, serviços e outras tecnologias de software você prefere;

  • criar instâncias com base em imagens públicas ou particulares;

  • usar as tecnologias de armazenamento do GCP ou qualquer outra tecnologia de terceiros de sua preferência;

  • usar o GCP Marketplace para implantar rapidamente pacotes de software pré-configurados. Por exemplo, é possível implantar uma pilha LAMP ou MEAN com apenas alguns cliques;

  • criar grupos de instâncias para gerenciar com mais facilidade várias instâncias juntas;

  • usar o escalonamento automático com um grupo de instâncias para adicionar e remover a capacidade automaticamente;

  • conectar e desconectar discos conforme necessário;

  • e usar SSH para se conectar diretamente às instâncias.

Combinação das opções de computação e hospedagem

Você não precisa se ater a apenas um tipo de serviço de computação. Por exemplo, é possível combinar o App Engine com o Compute Engine para usufruir dos recursos e das vantagens de cada um. Para ver um exemplo do uso do App Engine e do Compute Engine, consulte Agendamento de tarefas seguro no Compute Engine.

Para ver mais detalhes das opções para exibição de websites, consulte Como exibir sites.

Serviços de armazenamento

Seja qual for o aplicativo, você provavelmente precisará armazenar alguns arquivos de mídia, backups ou outros objetos semelhantes a arquivos. No GCP, há uma grande variedade de serviços de armazenamento, incluindo:

  • Armazenamento de dados consistente, escalonável e de grande capacidade no Cloud Storage, que tem vários modelos:

    • O Multi-Regional oferece disponibilidade e redundância geográfica máximas.
    • O Regional oferece alta disponibilidade e um local de armazenamento específico.
    • O Nearline oferece armazenamento de arquivos com baixo custo para dados acessados menos de uma vez por mês.
    • O Coldline oferece armazenamento de arquivos com o menor custo para backup e recuperação de desastres.
  • Discos permanentes no Compute Engine, para uso como armazenamento principal das instâncias. O Compute Engine oferece tanto discos permanentes com base em disco rígido, chamados discos permanentes padrão, como discos permanentes em estado sólido (SSD, na sigla em inglês);

  • Servidores de arquivos NFS totalmente gerenciados no Cloud Filestore. É possível usar instâncias do Cloud Filestore para armazenar dados de aplicativos em execução nas instâncias de VM do Compute Engine ou clusters do GKE.

    Para entender toda a linha e as vantagens dos serviços de armazenamento no GCP, saiba mais sobre nossas opções de armazenamento.

Serviços de banco de dados

O GCP dispõe de uma variedade de serviços de banco de dados SQL e NoSQL:

  • Um banco de dados SQL no Cloud SQL, que contém os bancos de dados MySQL ou PostgreSQL.

  • Um serviço de banco de dados relacional essencial e totalmente gerenciado no Cloud Spanner, que oferece consistência transacional em escala global, esquemas, consultas SQL e replicação síncrona automática para alta disponibilidade.

  • Duas opções de armazenamento de dados NoSQL: o Cloud Firestore , para dados parecidos com documentos, e o Cloud Bigtable, para dados em tabelas.

Também é possível configurar a tecnologia de banco de dados de sua preferência no Compute Engine usando discos permanentes. Por exemplo, é possível configurar MongoDB para o armazenamento de documentos NoSQL.

Para conhecer as diferenças entre nossos serviços de banco de dados, leia mais sobre os bancos de dados do GCP .

Serviços de redes

Enquanto o App Engine gerencia a rede para você e o GKE usa o modelo Kubernetes, o Compute Engine fornece um conjunto de serviços de rede. Esses serviços ajudam a balancear a carga do tráfego nos recursos, criar registros DNS e conectar a rede em uso à rede do Google.

Redes, firewalls e rotas

A nuvem privada virtual (VPC, na sigla em inglês) oferece um conjunto de serviços de rede para uso pelas instâncias de VM. Cada instância pode ser conectada apenas a uma rede. Todo projeto de VPC tem uma rede padrão. É possível criar redes adicionais no projeto, mas elas não podem ser compartilhadas entre projetos.

O tráfego que chega às instâncias por meio de uma rede é controlado pelas regras de firewall. A rede padrão tem um conjunto padrão de regras de firewall, e também é possível criar regras personalizadas.

Com uma rota, é possível implementar funções de rede mais avançadas nas instâncias, como a criação de VPNs. Uma rota especifica como os pacotes que saem de uma instância devem ser direcionados. Por exemplo, uma rota pode especificar que os pacotes destinados a um intervalo de rede específico devem ser processados por uma instância de máquina virtual de gateway que você configura e opera.

Balanceamento de carga

Se o site ou o aplicativo estiver em execução no Compute Engine, você estará perto de distribuir a carga de trabalho para várias instâncias. Os recursos de balanceamento de carga do servidor contam com as seguintes opções:

  • O balanceamento de carga da rede permite distribuir o tráfego para instâncias do servidor na mesma região com base nos dados do protocolo IP de entrada, como endereço, porta e protocolo. O balanceamento de carga da rede será uma ótima solução se, por exemplo, você quiser atender às demandas do aumento de tráfego no seu site.

  • O balanceamento de carga HTTP(S) permite distribuir o tráfego entre regiões para garantir que as solicitações sejam roteadas para a região mais próxima ou, em caso de falha ou limitações de capacidade extra, para uma instância íntegra na região mais próxima a seguir. Também é possível usar o balanceamento de carga HTTP(S) para distribuir o tráfego com base no tipo de conteúdo. Por exemplo, convém configurar os servidores para disponibilizar conteúdo estático, como imagens e CSS, usando um servidor e outro servidor para conteúdo dinâmico, como páginas PHP. O balanceador de carga pode direcionar cada solicitação para o servidor que fornece cada tipo de conteúdo.

Cloud DNS

É possível publicar e manter registros do Sistema de Nome de Domínio (DNS, na sigla em inglês) usando a mesma infraestrutura que o Google usa. É possível usar o Console do Google Cloud Platform, a linha de comando ou a API REST para trabalhar com zonas gerenciadas e registros DNS.

Conectividade avançada

Caso já tenha uma rede que você quer conectar aos recursos do GCP, o GCP dispõe das seguintes opções de conectividade avançada:

  • O Cloud Interconnect permite conectar a rede atual à rede VPC por meio de uma conexão empresarial altamente disponível e de baixa latência. Para se conectar ao Google, é possível fazer isso diretamente com a Interconexão dedicada ou usar o Partner Interconnect por meio de um provedor de serviços autorizado.

  • O Cloud VPN permite conectar a rede atual à rede VPC por meio de uma conexão IPsec. Também é possível usar a VPN para conectar dois gateways do Cloud VPN.

  • O peering direto (em inglês) permite alternar o tráfego da Internet entre a rede comercial e o Google em um dos locais de rede de grande alcance do Google. Acesse o site de peering do Google (em inglês) para obter mais informações sobre os pontos de extremidade.

  • O peering por operadora permite conectar a infraestrutura ao ponto de extremidade da rede do Google por meio de conexões de alta disponibilidade e latência mais baixa usando provedores de serviços. Também é possível estender a rede privada até a rede privada de VPN virtual sobre links do peering por operadora usando um túnel de VPN entre as redes.

Serviços de Big Data

Os serviços de Big Data permitem processar e consultar Big Data na nuvem para receber respostas rápidas para perguntas complicadas.

Análise de dados

O BigQuery oferece serviços de análise de dados. Com o BigQuery, é possível:

  • criar esquemas personalizados que organizam os dados em conjuntos de dados e tabelas;
  • carregar dados de uma grande variedade de fontes, como dados de streaming;
  • usar comandos semelhantes aos do SQL para consultar conjuntos de dados enormes em um instante. O BigQuery foi projetado e otimizado para oferecer velocidade;
  • usar a IU da Web, a interface de linha de comando ou a API;
  • carregar, consultar, exportar e copiar dados usando jobs;
  • gerenciar e proteger os dados usando permissões.

Para testar de forma rápida e fácil o BigQuery, experimente o Guia de início rápido de IU da Web para consultar um conjunto de dados público.

Processamento de dados em lote e streaming

O Cloud Dataflow oferece um serviço gerenciado e um conjunto de SDKs que podem ser usados para realizar tarefas de processamento de dados em lote e streaming. Funciona bem para computação de grande volume, ainda mais quando as tarefas de processamento podem ser divididas com clareza e facilidade em cargas de trabalho paralelas. Também é ótimo para tarefas de extração, transformação e carregamento (ETL, na sigla em inglês), que são úteis para mover dados entre diferentes mídias de armazenamento, transformando os dados em um formato mais acessível ou carregando dados em um novo sistema de armazenamento.

Mensagens assíncronas

O Cloud Pub/Sub é um serviço de mensagens assíncronas. O aplicativo pode enviar mensagens no formato de estruturas de dados JSON para uma unidade de publicação, chamada tópico. Como os tópicos do Cloud Pub/Sub são um recurso global, outros aplicativos em projetos de sua propriedade podem ter assinatura do tópico para receber as mensagens na solicitação HTTP ou nos corpos de resposta. Para se familiarizar com o Cloud Pub/Sub, consulte o Guia de início rápido do Cloud Pub/Sub.

O Cloud Pub/Sub não tem utilidade apenas para Big Data. Ele pode ser usado em diversas situações em que você precisa de um serviço de mensagens assíncronas. Para um exemplo que use o Cloud Pub/Sub para coordenar o App Engine e o Compute Engine, consulte Agendamento de tarefas seguro no Compute Engine.

Serviços de machine learning

O AI Platform oferece diversos serviços avançados de machine learning (ML, na sigla em inglês). Use APIs que forneçam modelos pré-treinados e otimizados para aplicativos específicos ou crie e treine modelos sofisticados e em grande escala próprios usando uma estrutura gerenciada do TensorFlow.

APIs de machine learning

O GCP oferece várias APIs. Com elas, você usa o ML do Google sem criar ou treinar modelos próprios.

  • A API Cloud Video Intelligence permite que você use a tecnologia de análise de vídeo que fornece detecção de rótulos, de conteúdo explícito e de trocas, bem como recursos de regionalização.

  • O Cloud Speech-to-Text permite converter áudio em texto e reconhece mais de 110 idiomas e variantes para oferecer suporte à sua base de usuários global. É possível transcrever a fala de usuários no aplicativo por meio de um microfone, ativar o controle e comando de voz ou transcrever arquivos de áudio, entre muitos outros casos de uso.

  • O Cloud Vision permite integrar facilmente recursos de detecção de visão, incluindo marcação de imagens, detecção de rostos e pontos de referência, reconhecimento ótico de caracteres (OCR, na sigla em inglês) e marcação de conteúdo explícito.

  • A API Cloud Natural Language permite que você adicione análise de sentimento, de entidade, de sentimento e entidade e de sintaxe, bem como classificação de conteúdo.

  • A API Translation permite que você traduza rapidamente o texto de origem para qualquer um dos mais de cem idiomas compatíveis. A detecção de idioma ajuda nos casos em que não se conhece o idioma de origem.

  • O Dialogflow permite criar interfaces de conversação para sites, aplicativos de dispositivos móveis, plataformas populares de mensagens e dispositivos de IoT. Use-o para criar interfaces, como bots de chat, que têm interações naturais e ricas com os seres humanos.

AI Platform

O AI Platform combina a infraestrutura gerenciada do GCP com a potência e a flexibilidade do TensorFlow. Use-o para treinar seus modelos de machine learning conforme necessário e hospede modelos treinados para fazer previsões sobre novos dados na nuvem.

Com o AI Platform, é possível treinar modelos de machine learning executando aplicativos de treinamento do TensorFlow no GCP. Ele hospeda esses modelos treinados para que você possa usá-los e, assim, fazer previsões sobre os dados novos. O AI Platform gerencia os recursos de computação que seu job de treinamento precisa executar para que você se concentre mais no modelo do que na configuração de hardware ou no gerenciamento de recursos.

Para conhecer o AI Platform, consulte Primeiros passos: treinamento e previsão com Keras.

A seguir: saiba mais sobre as ferramentas de desenvolvimento e administração

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

Enviar comentários sobre…