Saiba como implantar um app de amostra no Cloud Run
conectado a uma instância do SQL Server usando o Console do Google Cloud e um aplicativo
do cliente.
Supondo que você conclua todas as etapas em tempo hábil, os recursos criados neste guia de início rápido normalmente custam menos de um dólar (USD).
Antes de começar
Sign in to your Google Cloud account. If you're new to
Google Cloud,
create an account to evaluate how our products perform in
real-world scenarios. New customers also get $300 in free credits to
run, test, and deploy workloads.
In the Google Cloud console, on the project selector page,
select or create a Google Cloud project.
Clique no botão a seguir para abrir o Cloud Shell, que fornece
acesso de linha de comando aos recursos do Google Cloud diretamente no navegador.
O Cloud Shell pode ser usado para executar os comandos gcloud apresentados neste guia de início rápido.
gcloud compute addresses create google-managed-services-default \
--global --purpose=VPC_PEERING --prefix-length=16 \
--description="peering range for Google" --network=default
Execute o comando gcloud services vpc-peerings connect
para criar uma conexão particular com o intervalo de endereços IP alocado. Substitua YOUR_PROJECT_ID pelo ID do projeto.
Criar uma instância com SSL e endereço IP privado ativados
Antes de executar o comando abaixo, substitua DB_ROOT_PASSWORD pela senha do usuário do banco de dados.
Se quiser, modifique os valores dos seguintes parâmetros:
--database_version: o tipo e a versão do mecanismo de banco de dados.
Se não for especificado, a API padrão será usada.
Consulte a documentação das versões de banco de dados do gcloud
para ver as versões atuais disponíveis.
--cpu: o número de núcleos na máquina;
--memory: um valor inteiro que indica quanta
memória incluir na máquina. Uma unidade de tamanho pode ser
fornecida (por exemplo, 3.072 MB ou 9 GB). Se nenhuma unidade for especificada,
serão considerados GB.
--region: local regional da instância
(por exemplo, asia-east1, us-east1). Se não for especificado, o padrão
us-central1 será utilizado.
Veja a lista completa de regiões.
Execute o comando gcloud
sql instances create para criar uma instância do Cloud SQL com um endereço IP privado.
Agora é possível configurar um aplicativo de amostra para se conectar à
instância do Cloud SQL usando uma instância, um banco de dados e uma conta de serviço do Cloud SQL
com permissões de cliente.
IP público
O Cloud Run não pode se conectar ao Cloud SQL
para SQL Server por meio de um IP público. Em vez disso, use o IP particular.
IP privado
Para caminhos de IP privados, o aplicativo se conecta diretamente à
instância por meio do acesso VPC sem servidor. Esse método usa um soquete TCP para
se conectar diretamente à instância do Cloud SQL sem usar o proxy do Cloud SQL Auth.
Go
Criar e fazer o download do certificado do servidor SSL
No Console do Google Cloud, acesse a página Instâncias do Cloud SQL.
Na caixa de diálogo Abrir no Cloud Shell, clique em Confirmar para
fazer o download do código do app de amostra e abrir o diretório do app de amostra no editor do Cloud Shell.
Faça upload do arquivo do certificado do servidor SSL para a pasta certs.
Clique com o botão direito do mouse na pasta certs no editor do Cloud Shell e selecione Upload Files.
Selecione o arquivo a seguir na máquina local: server-ca.pem.
Com o arquivo de certificado do servidor SSL selecionado, clique em Abrir para concluir o processo de upload do arquivo para o editor do Cloud Shell.
Execute o comando a seguir no Cloud Shell para criar um contêiner do Docker e publicá-lo no Container Registry.
Substitua YOUR_PROJECT_ID pelo ID do projeto.
Na caixa de diálogo Abrir no Cloud Shell, clique em Confirmar para
fazer o download do código do app de amostra e abrir o diretório do app de amostra no editor do Cloud Shell.
Execute o comando a seguir no Cloud Shell para criar um contêiner do Docker e publicá-lo no Container Registry.
Substitua YOUR_PROJECT_ID pelo ID do projeto.
Na caixa de diálogo Abrir no Cloud Shell, clique em Confirmar para
fazer o download do código do app de amostra e abrir o diretório do app de amostra no editor do Cloud Shell.
Faça upload do arquivo de certificado do servidor SSL para a pasta certs.
Clique com o botão direito do mouse na pasta certs no editor do Cloud Shell e selecione Upload Files.
Selecione o arquivo a seguir na máquina local: server-ca.pem.
Com o arquivo de certificado do servidor SSL selecionado, clique em Abrir para concluir o processo de upload do arquivo para o editor do Cloud Shell.
Execute o comando a seguir no Cloud Shell para criar um contêiner do Docker e publicá-lo no Container Registry.
Substitua YOUR_PROJECT_ID pelo ID do projeto.
Mantenha a opção de implantar a partir de uma imagem de contêiner atual e clique em Selecionar para especificar a imagem de contêiner gcr.io/YOUR_PROJECT_ID/run-sql criada na etapa anterior.
Digite quickstart-service no campo Nome do serviço.
Na seção Autenticação, selecione
a opção Allow unauthenticated invocations.
Expanda a seção
Contêiner, variáveis, secrets, conexões e segurança
.
Para criar as variáveis de ambiente a seguir, clique em Adicionar variável
em Variáveis de ambiente. Defina os valores das variáveis de ambiente desta maneira:
INSTANCE_CONNECTION_NAME: defina o Nome da conexão da instância que aparece
na página Instâncias do Cloud SQL no console do Google Cloud.
Defina DB_PORT como 1433.
INSTANCE_HOST: defina como o endereço IP particular da instância conforme mencionado na página Visão geral da instância do Cloud SQL.
DB_ROOT_CERT: defina como certs/server-ca.pem.
PRIVATE_IP: defina como TRUE.
Ative a conexão com o Cloud SQL:
Clique em Conexões.
Clique em Adicionar conexão na seção Conexões do Cloud SQL.
Selecione a instância do Cloud SQL quickstart-instance criada anteriormente.
Selecione default: Serverless VPC Access Connector "quickstart-connector"
no menu suspenso Rede VPC.
Selecione a opção Rotear todo o tráfego pelo conector VPC.
Clique em Criar para concluir a criação do serviço do Cloud Run.
Depois que o serviço do Cloud Run é implantado, a página
Detalhes do serviço exibe o
URL dele na parte superior da página.
Clique no link URL para ver o app de amostra implantado no Cloud Run conectado ao
Cloud SQL.
gcloud
Antes de executar o comando a seguir, faça as seguintes substituições:
YOUR_PROJECT_ID pelo código do projeto;
INSTANCE_CONNECTION_NAME pelo Nome da conexão da instância
que aparece na página Instâncias do Cloud SQL no `console do Google Cloud.
INSTANCE_HOST pelo endereço IP particular da instância. Acesse a página Visão geral da instância do Cloud SQL
em que o endereço IP privado da instância é exibido.
Para criar o serviço do Cloud Run, execute o comando gcloud run deploy da seguinte maneira:
Os usuários de Java precisam executar o comando gcloud run deploy sem
as sinalizações INSTANCE_HOST, DB_ROOT_CERT e PRIVATE_IP --set-env-vars, conforme mostrado a seguir, para criar o serviço do Cloud Run
porque o conector Java já fornece uma conexão segura:
Digite a opção numérica fornecida para us-central1 quando aparecer a solicitação para especificar uma região.
Depois de ver uma mensagem de confirmação informando que o serviço do Cloud Run foi implantado, clique no
link URL do serviço na mensagem para ver o aplicativo de amostra no Cloud Run conectado ao Cloud SQL.
Limpar
Para evitar cobranças na conta do Google Cloud pelos
recursos usados nesta página, siga estas etapas.
No console do Google Cloud, acesse a página Instâncias do Cloud SQL.