Recentemente, você passou a trabalhar para uma empresa de TI que usa o Google Cloud como principal provedor de nuvem. Por ser especialista em bancos de dados SQL, você recebeu a tarefa de pesquisar e adotar os serviços SQL oferecidos pelo Google Cloud.
Estas são algumas das suas principais responsabilidades:
Implantação
Segurança
Integração de apps
Métodos de conectividade
Como você já usou o Azure, sabe implantar o SQL Server. O modelo de preços é baseado em um valor personalizável de unidades de transação de banco de dados (DTUs, na sigla em inglês) categorizadas em várias opções para diferentes casos de uso.
No Azure, você usa o seguinte:
Uma implementação de proxy para garantir a conexão segura com seu banco de dados
Um balanceador de carga HTTP para manter a disponibilidade do banco de dados do seu aplicativo
É possível usar diversos métodos para conectar vários aplicativos implantados. Estes são alguns exemplos:
Strings de conexão
Integração de serviços de apps da Web
Cloud SQL com endereços IP particulares
Agora você vai descobrir como usar os recursos do Cloud SQL para criar e conectar um banco de dados seguro a um aplicativo.
Visão geral
Neste laboratório, você definirá a configuração de um servidor Cloud SQL e aprenderá a conectar um aplicativo a ele usando um proxy em uma conexão externa. Você também definirá uma conexão por um link de IP privado que oferece benefícios de desempenho e segurança. Escolhemos o Wordpress para demonstrar neste laboratório, mas as informações e as práticas recomendadas são aplicáveis a qualquer aplicativo que precise do SQL Server.
Ao final do laboratório, haverá duas instâncias funcionais do front-end do Wordpress conectadas aos respectivos back-ends de instâncias do SQL por dois tipos de conexão. Veja no diagrama:
Objetivos
Neste laboratório, você aprenderá a fazer o seguinte:
Criar um banco de dados do Cloud SQL
Configurar uma máquina virtual para executar um proxy
Criar uma conexão entre um aplicativo e o Cloud SQL
Conectar um aplicativo ao Cloud SQL usando um endereço IP privado
Instalação
Para cada laboratório, você recebe um novo projeto do Google Cloud e um conjunto de recursos por um determinado período e sem custos financeiros.
Faça login no Qwiklabs em uma janela anônima.
Confira o tempo de acesso do laboratório (por exemplo, 1:15:00) e finalize todas as atividades nesse prazo.
Não é possível pausar o laboratório. Você pode reiniciar o desafio, mas vai precisar refazer todas as etapas.
Quando tudo estiver pronto, clique em Começar o laboratório.
Anote as credenciais (Nome de usuário e Senha). É com elas que você vai fazer login no Console do Google Cloud.
Clique em Abrir Console do Google.
Clique em Usar outra conta, depois copie e cole as credenciais deste laboratório nos locais indicados.
Se você usar outras credenciais, vai receber mensagens de erro ou cobranças.
Aceite os termos e pule a página de recursos de recuperação.
Tarefa 1. Crie um banco de dados do Cloud SQL
Nesta tarefa, você vai configurar um servidor SQL seguindo as práticas recomendadas do Google Cloud e criar uma conexão de IP privado.
No Menu de navegação (), clique em SQL.
Clique em Criar instância.
Clique em Escolher MySQL.
Especifique os seguintes valores e não altere as configurações restantes:
Propriedade
Valor
ID da instância
wordpress-db
Senha raiz
Digite uma senha
Edição do Cloud SQL
Enterprise
Versão do banco de dados
MySQL 5.7
Região
Zona
Qualquer
Observação:
Anote a senha raiz, porque ela será utilizada em uma etapa posterior e chamada de [ROOT_PASSWORD].
Expanda Mostrar opções de configuração.
Expanda a seção Tipo de máquina.
Provisione a quantidade certa de vCPUs e memória. Para escolher um Tipo de máquina, clique no menu suspenso e conheça as opções.
Observação: considere os pontos a seguir:
Máquinas com núcleos compartilhados são boas para prototipagem, mas não são cobertas pelo SLA do Cloud.
O limite de cada vCPU é de 250 MB/s de capacidade de rede com o melhor desempenho. Teoricamente, cada núcleo adicional aumenta esse limite até o máximo de 2.000 MB/s.
Para cargas de trabalho que exigem maior desempenho, como processamento de transações on-line (OLTP, na sigla em inglês), a recomendação é que cada instância tenha memória suficiente para conter todo o conjunto de trabalho e acomodar o número de conexões ativas.
Para este laboratório, selecione Núcleo dedicado no menu suspenso e escolha 1 vCPU, 3,75 GB.
Em seguida, expanda a seção Armazenamento e selecione Tipo de armazenamento e Capacidade de armazenamento.
Observação: considere os pontos a seguir:
Uma unidade de estado sólido (SSD, na sigla em inglês) é a melhor escolha para a maioria dos casos. Um HDD (disco rígido) não oferece um desempenho tão bom, mas tem custo de armazenamento muito mais baixo. Por isso, o mais adequado é armazenar em um HDD os dados que são acessados com pouca frequência e que não exigem latência muito baixa.
Existe uma relação direta entre o tamanho e a capacidade do armazenamento.
Clique em cada uma das opções de capacidade para ver como elas afetam a capacidade. Redefina a opção para 10 GB.
Observação:
se o tamanho do armazenamento for pequeno demais, e o aumento automático não estiver ativado, sua instância vai correr o risco de perder o SLA.
Expanda a seção Conexões.
Selecione IP privado.
Na lista suspensa Rede, selecione padrão.
Clique no botão Configurar conexão que é exibido.
No painel à direita, clique em Ativar API, em Usar um intervalo de IP alocado automaticamente, em Continuar e em Criar conexão.
Clique em Criar instância na parte de baixo da página para criar a instância do banco de dados.
Observação:
talvez seja necessário aguardar a propagação das mudanças no IP privado para que o botão Criar
fique disponível.
Selecione Verificar meu progresso para conferir o objetivo.
Crie uma instância do Cloud SQL
Tarefa 2. Configure um proxy em uma máquina virtual
Quando o aplicativo não estiver na mesma rede VPC e na mesma região que a instância do Cloud SQL, use um proxy para proteger a conexão externa.
Para configurar o proxy, é preciso saber o nome da conexão da instância do Cloud SQL.
Observação:
o laboratório inclui duas máquinas virtuais pré-configuradas com o Wordpress e as dependências dele. Para conferir o script de inicialização e o acesso da conta de serviço, clique no nome de uma máquina virtual. Como usamos o princípio do privilégio mínimo, a VM só permite o acesso do SQL. Também há uma tag de rede e um firewall pré-configurado para aceitar conexões de qualquer host na porta 80.
No Menu de navegação () clique em Compute Engine.
Clique em SSH ao lado de wordpress-proxy.
Faça o download do Cloud SQL Proxy e torne-o executável:
Para iniciar o proxy, você precisa saber o nome da conexão da instância do Cloud SQL. Mantenha a janela do SSH aberta e volte ao console do Cloud.
No Menu de navegação (), clique em SQL.
Clique na instância wordpress-db e aguarde até a marca de verificação verde aparecer ao lado do nome dela para ter certeza de que a instância está funcionando (talvez demore alguns minutos).
Anote o Nome da conexão da instância porque ele será usado posteriormente e indicado como [SQL_CONNECTION_NAME].
Para o aplicativo funcionar, você precisa criar uma tabela. Clique em Bancos de dados.
Clique em Criar banco de dados, digite wordpress (porque o aplicativo procura por esse nome) e clique em Criar.
Volte à janela do SSH e salve o nome da conexão em uma variável de ambiente, substituindo [SQL_CONNECTION_NAME] pelo nome exclusivo que você copiou em uma etapa anterior:
export SQL_CONNECTION=[SQL_CONNECTION_NAME]
Para confirmar se a variável de ambiente foi definida, execute este comando:
echo $SQL_CONNECTION
O nome da conexão será exibido.
Para ativar a conexão do proxy com o banco de dados do Cloud SQL e enviar o processo para o segundo plano, execute este comando:
Listening on 127.0.0.1:3306 for [SQL_CONNECTION_NAME]
Ready for new connections
Pressione ENTER.
Observação:
o proxy receberá as solicitações em 127.0.0.1:3306 (localhost) e as encaminhará por um túnel seguro para o Cloud SQL usando o endereço IP externo da máquina.
Selecione Verificar meu progresso para conferir o objetivo.
Crie um banco de dados e configure um proxy em uma máquina virtual
Tarefa 3. Conecte um aplicativo à instância do Cloud SQL
Nesta tarefa, você vai conectar um aplicativo de amostra à instância do Cloud SQL.
Configure o aplicativo Wordpress. Para descobrir o endereço IP externo da sua máquina virtual, consulte os metadados:
Em um navegador, acesse o endereço IP externo de wordpress-proxy e configure o aplicativo Wordpress.
Clique em Let's Go.
Especifique as opções a seguir, substituindo [ROOT_PASSWORD] pela senha que você definiu quando criou a máquina, e não altere as outras configurações padrão.
Propriedade
Valor
Nome do banco de dados
wordpress
Nome de usuário
root
Senha
[ROOT_PASSWORD]
Host do banco de dados
127.0.0.1
Observação:
Você está usando 127.0.0.1, localhost como o IP do banco de dados porque o proxy iniciado recebe as solicitações nesse endereço e redireciona o tráfego para seu servidor SQL com segurança.
Clique em Enviar.
Quando a conexão for estabelecida, clique em Run the installation para criar uma instância do Wordpress e o banco de dados dele no Cloud SQL. Talvez essa operação demore alguns minutos.
Preencha aleatoriamente as informações do site de demonstração e clique em Install Wordpress. Não será necessário lembrar desses detalhes.
Observação:
a instalação do Wordpress pode demorar até três minutos porque todos os dados são propagados para o SQL Server.
Quando aparecer a janela "Success!", remova o texto após o endereço IP da barra de endereço do navegador da Web e pressione ENTER.
Um blog do Wordpress vai aparecer para você.
Tarefa 4. Conecte-se ao Cloud SQL usando um IP interno
Se for possível hospedar seu aplicativo na mesma região e na mesma rede VPC que o Cloud SQL, use um IP privado para ter uma configuração mais segura e com melhor desempenho.
Com um IP privado, a latência diminui e o desempenho aumenta. Além disso, a superfície de ataque da sua instância do Cloud SQL é minimizada porque só é possível se comunicar com ela usando IPs internos.
No console do Cloud, acesse o Menu de navegação () e clique em SQL.
Clique em wordpress-db.
Anote o endereço IP privado do servidor do Cloud SQL, que será indicado depois como [SQL_PRIVATE_IP].
Abra o Menu de navegação e clique em Compute Engine.
Observação:
o endereço wordpress-private-ip está localizado em , na mesma região da sua instância do Cloud SQL, o que permite usar uma conexão mais segura.
Copie o endereço IP externo de wordpress-private-ip, cole em uma janela do navegador e pressione ENTER.
Clique em Let's Go.
Especifique os seguintes valores e não altere as configurações restantes:
Propriedade
Valor
Nome do banco de dados
wordpress
Nome de usuário
root
Senha
Digite a senha [ROOT_PASSWORD] que você definiu quando criou a instância do Cloud SQL
Host do banco de dados
[SQL_PRIVATE_IP]
Clique em Enviar.
Observação:
Desta vez, você está criando uma conexão direta com um IP privado em vez de configurar um proxy. A conexão é privada, ou seja, não se comunica com a Internet, por isso oferece mais segurança e um desempenho melhor.
Clique em Run the installation.
Você verá uma janela com a mensagem "Already Installed!", o que significa que o aplicativo está conectado ao servidor do Cloud SQL por meio de um IP privado.
Na barra de endereço do navegador da Web, remova o texto após o endereço IP e pressione Enter.
Um blog do Wordpress vai aparecer para você.
Tarefa 5. Revisão
Neste laboratório, você criou um banco de dados do Cloud SQL e o configurou para usar tanto uma conexão externa, utilizando um proxy seguro, quanto um endereço IP privado, que oferece mais segurança e um desempenho melhor. Vale lembrar que só é possível estabelecer conexões usando um IP privado quando o aplicativo e o servidor do Cloud SQL estão na mesma região e na mesma rede VPC. Se o aplicativo estiver hospedado em um projeto, uma VPC ou uma região diferente, use um proxy como proteção em uma conexão externa.
Agora que você sabe mais sobre a criação e a configuração de um banco de dados no Cloud SQL, vamos analisar algumas semelhanças e diferenças entre o Google Cloud SQL e o Azure SQL.
Semelhanças:
O Azure e o Google Cloud gerenciam a infraestrutura dos bancos de dados para incluir instâncias, backups, atualizações e failover.
O Cloud SQL e o Azure SQL implantam um proxy para receber com segurança conexões fora da sua VPC.
Os dois serviços criam uma conexão usando uma string de conexão.
Eles também podem usar um IP interno para conectar diretamente um aplicativo e uma instância do SQL Server se estiverem na mesma região e forem parte da mesma rede VPC. Usando apenas endereços IP internos, você melhora a segurança porque nenhuma conexão pública é permitida.
Diferenças:
As especificações para criar um SQL Server são diferentes no Google Cloud e no Azure. No Azure, você escolhe entre categorias, DTUs e armazenamento definido. No Google Cloud, você especifica diretamente o número de CPUs e o armazenamento necessário.
No Google Cloud, a autenticação do banco de dados é integrada (usuário-senha), e você pode implementar o proxy de autenticação do Cloud SQL e as bibliotecas de conector do Cloud SQL para fornecer acesso baseado em IAM. No Azure, você pode usar políticas para definir como as solicitações serão admitidas. Também é possível usar um método de redirecionamento (por padrão) ou uma política de conexão de proxy para processar a solicitação. A autenticação do Azure Active Directory também é aceita.
No Google Cloud, você estabelece uma conexão com a instância usando o Cloud SQL com duas opções principais:
Proxy de autenticação do Cloud SQL: um túnel seguro que não precisa de uma rede autorizada ou de SSL. A autenticação e a autorização são feitas pelo Identity and Access Management (IAM) e OAuth 2.0
IP privado: uma conexão privada entre sua rede VPC e a rede VPC do produtor de serviços do Google
Finalize o laboratório
Clique em Terminar o laboratório após a conclusão. O Google Cloud Ensina remove os recursos usados e limpa a conta por você.
Você vai poder avaliar sua experiência no laboratório. Basta selecionar o número de estrelas, digitar um comentário e clicar em Enviar.
O número de estrelas indica o seguinte:
1 estrela = muito insatisfeito
2 estrelas = insatisfeito
3 estrelas = neutro
4 estrelas = satisfeito
5 estrelas = muito satisfeito
Feche a caixa de diálogo se não quiser enviar feedback.
Para enviar seu feedback, fazer sugestões ou correções, use a guia Suporte.
Copyright 2020 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.
Os laboratórios criam um projeto e recursos do Google Cloud por um período fixo
Os laboratórios têm um limite de tempo e não têm o recurso de pausa. Se você encerrar o laboratório, vai precisar recomeçar do início.
No canto superior esquerdo da tela, clique em Começar o laboratório
Usar a navegação anônima
Copie o nome de usuário e a senha fornecidos para o laboratório
Clique em Abrir console no modo anônimo
Fazer login no console
Faça login usando suas credenciais do laboratório. Usar outras credenciais pode causar erros ou gerar cobranças.
Aceite os termos e pule a página de recursos de recuperação
Não clique em Terminar o laboratório a menos que você tenha concluído ou queira recomeçar, porque isso vai apagar seu trabalho e remover o projeto
Este conteúdo não está disponível no momento
Você vai receber uma notificação por e-mail quando ele estiver disponível
Ótimo!
Vamos entrar em contato por e-mail se ele ficar disponível
Um laboratório por vez
Confirme para encerrar todos os laboratórios atuais e iniciar este
Use a navegação anônima para executar o laboratório
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.
Neste laboratório, você criará uma instância do Cloud SQL e uma instância de VM cliente. Em seguida, você vai definir a configuração do acesso criptografado usando certificados SSL.
Duração:
Configuração: 1 minutos
·
Tempo de acesso: 90 minutos
·
Tempo para conclusão: 45 minutos