Checkpoints
Create a Cloud SQL instance
/ 5
Create a database and configure a proxy on a Virtual Machine
/ 5
Como implementar o Cloud SQL (Azure)
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 app 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 |
Região | |
Zona | Qualquer uma |
Versão do banco de dados | MySQL 5.7 |
-
Expanda Mostrar opções de configuração.
-
Expanda a seção Tipo de máquina.
-
Provisione a quantidade certa de vCPU 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:
-
Para este laboratório, selecione standard no menu suspenso. Em seguida, 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:
- Clique em cada uma das opções de capacidade para ver como elas afetam a capacidade. Redefina a opção para 10 GB.
-
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.
Selecione Verificar meu progresso para conferir o objetivo.
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.
-
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é 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:
- Para confirmar se a variável de ambiente foi definida, execute este comando:
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:
A resposta esperada é:
- Pressione ENTER.
Selecione Verificar meu progresso para conferir o objetivo.
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 de usuário | root |
Senha | [ROOT_PASSWORD] |
Host do banco de dados | 127.0.0.1 |
-
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.
- 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.
-
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 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.
-
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. Também é possível usar a autenticação do Azure Active Directory.
- 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.