Implantar o AlloyDB Omni em uma única VM do GCE

1. Introdução

Este codelab mostra como implantar o AlloyDB Omni em uma única máquina virtual do Google Compute Engine (GCE). Ao final deste codelab, você terá provisionado uma única VM do GCE executando o Rocky Linux 9 e instalado o AlloyDB Omni usando os pacotes RPM oficiais. Essa máquina virtual contém todas as ferramentas de desenvolvimento necessárias. Ela oferece um diretório principal persistente de 20 GB, além de ser executada no Google Cloud. Isso aprimora o desempenho e a autenticação da rede.

Pré-requisitos

  • Acesso a um projeto do Google Cloud e ao Cloud Shell no Cloud Console.
  • SDK Google Cloud (gcloud) instalado e configurado. Para detalhes sobre como instalar o gcloud, consulte gcloud-install.

O que você vai aprender

  • Como criar e preparar uma VM do GCE para o AlloyDB Omni usando gcloud.
  • Como instalar RPMs do AlloyDB Omni em um único nó do Linux.
  • Como fazer o bootstrap e configurar o AlloyDB Omni.
  • Como verificar a instalação do banco de dados local.

O que é necessário

  • Receba um link de URL para os RPMs do AlloyDB Omni. Os links são enviados para seu e-mail, que inclui o servidor de URL do repositório. Inicialize a seguinte variável de ambiente para manter o URL pronto para uso durante o codelab.
    export ALLOYDB_OMNI_REPOSITORY_URL="..."
    
  • Um terminal em funcionamento com acesso ao Google Cloud. Você pode usar o Cloud Shell para essa finalidade.

2. Configuração e requisitos

Configuração do projeto

Criar um projeto do Google Cloud

  1. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto na nuvem do Google Cloud.
  2. Verifique se o faturamento está ativado para seu projeto do Cloud. Saiba como verificar se o faturamento está ativado em um projeto.

Inicie o Cloud Shell

Embora seja possível operar o Google Cloud remotamente em um laptop, neste codelab você vai usar o Google Cloud Shell, um ambiente de linha de comando executado na nuvem.

Ícone para ativar o Cloud Shell

  1. Abra o console do Google Cloud e clique no ícone do Cloud Shell na barra de ferramentas superior à direita.Também é possível abrir o Cloud Shell de uma das seguintes maneiras:
    • Se você estiver usando o console do Google Cloud, pressione G e depois S.
    • Clique neste link.

Normalmente, leva alguns instantes para provisionar e se conectar ao ambiente. Quando essa operação for concluída, você verá algo semelhante a isto:

Terminal do Google Cloud Shell mostrando que o ambiente foi conectado{: width="624"}

3. Criar a VM do Compute Engine

Nesta seção, você vai criar uma única máquina virtual (VM) do Compute Engine (GCE) usando a ferramenta de linha de comando gcloud. Você usa uma imagem do Rocky Linux 9, que é totalmente compatível com os RPMs do AlloyDB Omni.

  1. Defina variáveis de ambiente para o ID do projeto, o nome da VM, a zona e a região.
    export PROJECT="your-project-id"
    export INSTANCE_NAME="alloydb-omni-vm"
    export ZONE="us-central1-c"
    export REGION="us-central1"
    
  2. Faça login com o usuário da sua conta do Google Cloud e configure o projeto padrão.
    gcloud auth login
    gcloud config set project $PROJECT
    
  3. Crie uma regra de firewall para permitir conexões SSH com sua VM.
    gcloud compute firewall-rules create allow-ssh-alloydb-omni \
        --project=$PROJECT \
        --direction=INGRESS \
        --action=allow \
        --rules=tcp:22 \
        --source-ranges="0.0.0.0/0"
    
  4. Como a VM é criada sem um endereço IP público, configure um Cloud Router e um gateway do Cloud NAT para permitir que a VM acesse repositórios de pacotes externos e faça o download do software necessário.
    gcloud compute routers create alloydb-omni-router \
        --project=$PROJECT \
        --network=default \
        --region=$REGION
    
    gcloud compute routers nats create alloydb-omni-nat \
        --project=$PROJECT \
        --router=alloydb-omni-router \
        --region=$REGION \
        --nat-all-subnet-ip-ranges \
        --auto-allocate-nat-external-ips
    
  5. Verifique se a rede VPC tem uma rota de gateway de Internet padrão válida. Em alguns ambientes compartilhados ou de teste, as rotas padrão são removidas ocasionalmente por scripts de limpeza. Essa rota é necessária para que o Cloud NAT encaminhe o tráfego de saída para a Internet.
    gcloud compute routes create default-internet-route \
        --project=$PROJECT \
        --network=default \
        --destination-range=0.0.0.0/0 \
        --next-hop-gateway=default-internet-gateway
    
  6. Crie a instância de VM do Compute Engine com as especificações necessárias (16 vCPUs, disco permanente equilibrado de 20 GB, Rocky Linux 9). Para aumentar a segurança, usamos a flag --no-address para garantir que a VM não receba um endereço IP público.
    gcloud compute instances create $INSTANCE_NAME \
        --project=$PROJECT \
        --zone=$ZONE \
        --machine-type=n2-highmem-16 \
        --image-family=rocky-linux-9 \
        --image-project=rocky-linux-cloud \
        --boot-disk-size=20GB \
        --boot-disk-type=pd-balanced \
        --no-address
    
  7. Depois que a VM for criada, verifique o status dela.
    gcloud compute instances list --filter="name=$INSTANCE_NAME" --project=$PROJECT
    

4. Preparar VM

Nesta seção, você se conecta à VM recém-criada e prepara o ambiente do sistema operacional, o que inclui configurar o diretório de dados e o SELinux.

  1. Conecte-se à VM por SSH usando o Identity-Aware Proxy (IAP). Como a VM não tem um endereço IP público, o gcloud vai encapsular automaticamente a conexão SSH pelo IAP.
    gcloud compute ssh $INSTANCE_NAME --zone=$ZONE --project=$PROJECT --tunnel-through-iap
    
  2. Defina variáveis de ambiente na VM para o diretório de dados e o URL do repositório do AlloyDB Omni. Substitua o URL pelo que você recebeu no formulário de inscrição.
    export PGDATA="/var/lib/alloydbomni"
    export ALLOYDB_OMNI_REPOSITORY_URL="..."
    
  3. Crie o diretório de dados em que o AlloyDB Omni vai armazenar os arquivos de banco de dados.
    sudo mkdir -p $PGDATA
    
  4. Instale o pacote policycoreutils-python-utils para que a política do SELinux possa ser configurada e permitir que o serviço de banco de dados do AlloyDB Omni seja executado corretamente.
    sudo dnf install -y policycoreutils-python-utils
    

5. Instalar o AlloyDB Omni

Com a VM preparada, agora é possível configurar o repositório de pacotes e instalar o pacote RPM do AlloyDB Omni.

  1. Configure o repositório YUM na VM criando o arquivo de configuração do repositório.
    sudo tee /etc/yum.repos.d/alloydbomni.repo << EOF
    [alloydbomni]
    name=alloydbomni
    baseurl=$ALLOYDB_OMNI_REPOSITORY_URL
    enabled=1
    repo_gpgcheck=0
    gpgcheck=1
    gpgkey=https://dl.google.com/linux/linux_signing_key.pub
    EOF
    
  2. Atualize o cache do YUM para garantir que o novo repositório seja reconhecido.
    sudo yum makecache
    
    Observação: para a versão de prévia do RPM do AlloyDB Omni, a integridade do pacote é verificada no nível do RPM individual. Para continuar com a configuração do repositório YUM, configure repo_gpgcheck=0 .
  3. Instale a versão 18 do pacote RPM do AlloyDB Omni.
    sudo dnf install -y alloydbomni18
    

6. Configurar o AlloyDB Omni

Depois de instalar o pacote RPM, é necessário inicializar, configurar e iniciar o serviço de banco de dados do AlloyDB Omni.

  1. Defina uma senha forte para o usuário administrador postgres do PostgreSQL.
    export PGPASSWORD="YourStrongPassword123!"
    
  2. Inicialize a instância de banco de dados do AlloyDB Omni.
    sudo PGPASSWORD=$PGPASSWORD PGDATA=$PGDATA /usr/lib/postgresql/18/bin/alloydbomni18-setup initdb
    
  3. Configure o contexto de arquivo do SELinux para permitir que o serviço do AlloyDB Omni leia e grave dados no diretório de dados personalizado e restaure o contexto de segurança correto.
    sudo setenforce 0
    
  4. Prepare a instância de banco de dados do AlloyDB Omni.
    sudo PGPASSWORD=$PGPASSWORD PGDATA=$PGDATA /usr/lib/postgresql/18/bin/alloydbomni18-setup preparedb
    
  5. (Opcional) Para uma execução otimizada do serviço AlloyDB Omni, execute o utilitário de configuração do host para configurar automaticamente as configurações recomendadas de kernel e memória.
    sudo /usr/lib/postgresql/18/bin/alloydbomni18-setup-host
    
  6. Ative e inicie o serviço systemd do AlloyDB Omni.
    sudo systemctl enable alloydbomni18
    sudo systemctl start alloydbomni18
    
  7. Verifique se o serviço do AlloyDB Omni está ativo e em execução.
    sudo systemctl status alloydbomni18
    
    Verifique se a saída indica Active: active (running).

7. Verificar o AlloyDB Omni

Para verificar se o banco de dados AlloyDB Omni de nó único está funcionando corretamente, conecte-se a ele usando o cliente padrão do PostgreSQL (psql) instalado com o pacote.

  1. Conecte-se à instância do banco de dados local como usuário postgres. Você vai precisar inserir a senha que configurou antes.
    /usr/lib/postgresql/18/bin/psql -h localhost -U postgres -W
    
  2. Depois que a conexão for estabelecida, execute uma consulta SQL básica para verificar a versão do servidor de banco de dados e se o AlloyDB Omni está em execução.
    postgres=# SELECT version();
    
    A saída resultante indica que o PostgreSQL 18 está sendo executado com o AlloyDB Omni.
  3. Digite \q para sair do comando psql.

8. Revisão dos dados e pesquisa

Depois de concluir o codelab, limpe os recursos do Google Cloud para evitar cobranças indesejadas.

  1. Desconecte-se da sessão SSH na VM para voltar ao terminal local do Cloud Shell.
    exit
    
  2. Exclua a instância de VM do Compute Engine.
    gcloud compute instances delete $INSTANCE_NAME --zone=$ZONE --project=$PROJECT --quiet
    
  3. Exclua a regra de firewall criada para acesso SSH.
    gcloud compute firewall-rules delete allow-ssh-alloydb-omni --project=$PROJECT --quiet
    
  4. Exclua o gateway do Cloud NAT e o Cloud Router.
    gcloud compute routers nats delete alloydb-omni-nat --router=alloydb-omni-router --region=$REGION --project=$PROJECT --quiet
    gcloud compute routers delete alloydb-omni-router --region=$REGION --project=$PROJECT --quiet
    

9. Parabéns

Parabéns por concluir o codelab! Você implantou e configurou o AlloyDB Omni em uma única máquina virtual do Compute Engine.

O que vimos

  • Como provisionar e preparar uma VM do Compute Engine para o AlloyDB Omni.
  • Como configurar o repositório de pacotes do AlloyDB Omni e instalar os RPMs.
  • Como inicializar, configurar e gerenciar o serviço de banco de dados do AlloyDB Omni usando systemd.
  • Como verificar a funcionalidade do banco de dados usando ferramentas padrão do PostgreSQL.

Para mais informações, consulte a Visão geral do AlloyDB Omni.

10. Pesquisa

Como você usará este tutorial?

Apenas leitura Leitura e exercícios