Nesta página, descrevemos como configurar a conectividade de rede para origens autogerenciadas do Oracle para migrações heterogêneas do Oracle para o Cloud SQL para PostgreSQL com o Database Migration Service.
Há três métodos diferentes que podem ser usados para configurar a conectividade de rede necessária para migrações de origens do Oracle auto-hospedadas:
- Lista de permissões de IP público
- Túnel SSH encaminhado
- Conectividade de IP particular com interfaces do Private Service Connect
- Conectividade de IP particular com peering de nuvem privada virtual
Configurar a conectividade da lista de permissões de IP
Para usar o método de conectividade de lista de permissões de IP público, siga estas etapas:
- Verifique se o banco de dados de origem tem um endereço IP que pode ser acessado pela Internet pública. Não é necessário usar o endereço IP para se conectar. Se você tiver um registro DNS associado ao IP, use-o.
- Crie uma regra de firewall de entrada no servidor de banco de dados de origem para aceitar
conexões do Database Migration Service. Use a seguinte configuração:
- Para o tipo de regra, use
port. - Para o intervalo de endereços IP permitido, adicione todos os endereços IP públicos do Database Migration Service para a região em que você criará o job de migração.
- Defina o protocolo como
TCP. - Defina o número da porta associada à regra como a porta em que
o banco de dados de origem está detectando conexões de entrada. Esse é o mesmo número de porta que você precisa inserir no perfil de conexão de origem.
Por padrão, o servidor Oracle usa a porta
1521.
As etapas para configurar regras de firewall variam de acordo com o software servidor usado. Para mais informações, consulte a documentação do seu produto de firewall.
- Para o tipo de regra, use
- Em uma etapa posterior, ao criar o perfil de conexão de origem, na seção Definir método de conectividade, selecione Lista de permissões de IP.
Configurar a conectividade em um túnel SSH com encaminhamento
Para se conectar ao banco de dados de origem com um túnel Secure Shell (SSH), siga estas etapas:
- Crie uma máquina virtual (VM) que possa abrir o túnel
entre o Database Migration Service e o banco de dados de origem. O servidor de túnel pode ser qualquer
host Unix/Linux que:
- Pode ser acessada pela Internet pública via SSH.
- Pode acessar o endereço IP particular do banco de dados de origem.
No servidor SSH, crie uma conta de usuário que o Database Migration Service possa usar para se conectar ao túnel SSH.
Por exemplo, em um sistema Ubuntu, use os seguintes comandos:
- Crie uma conta de usuário:
adduser TUNNEL_ACCOUNT_USERNAME - Restrinja o acesso ao shell para a conta de usuário para aumentar a segurança:
usermod -s /usr/sbin/nologin TUNNEL_ACCOUNT_USERNAME
- Crie uma conta de usuário:
Decida qual método de autenticação você quer que o Database Migration Service use ao se conectar ao túnel.
É possível usar uma senha ou gerar chaves SSH no formato
PEMque podem ser enviadas ao Database Migration Service ao criar o perfil de conexão de origem.- Se você quiser usar uma senha, não será necessário configurar mais nada. Lembre-se da senha que você criou para a conta TUNNEL_ACCOUNT_USERNAME.
- Se você quiser usar a autenticação baseada em chave, gere
um par de chaves pública-privada. Por exemplo, use o utilitário
ssh-keygen:- Gere o par de chaves:
ssh-keygen -m PEM -f YOUR_KEY_NAME
- Copie a chave pública (
YOUR_KEY_NAME.pub) para o diretório~/.ssh/no servidor de túnel. - Salve a chave privada. Você precisará fazer o upload dele mais tarde para o Database Migration Service ao criar o perfil de conexão de origem.
- Gere o par de chaves:
- Edite o arquivo
/etc/ssh/sshd_configpara configurar o túnel de encaminhamento de SSH de acordo com os requisitos da sua organização. Recomendamos usar as seguintes configurações:# Only allow the Database Migration Service user to connect. AllowUsers TUNNEL_ACCOUNT_USERNAME # Send keep-alive packets every 60 seconds to ensure that # the tunnel doesn't close during the migration ServerAliveInterval=60 # Optional: Force key-based authentication PasswordAuthentication no # Enables Database Migration Service to connect from a different host PermitTunnel yes GatewayPorts yes
- Execute o comando
sshpara iniciar o túnel.Antes de usar os dados do comando abaixo, faça estas substituições:
- TUNNEL_SERVER_SSH_PORT pelo número da porta em que o servidor detecta conexões SSH.
- SOURCE_DATABASE_PRIVATE_IP pelo endereço IP privado do banco de dados de origem. O servidor SSH precisa ser capaz de alcançar esse IP.
- SOURCE_DATABASE_PORT pelo número da porta
em que o banco de dados de origem está detectando conexões. O número da porta padrão
para conexões TCP no Oracle é
1433. - USERNAME pelo nome da conta de usuário que executará o túnel. Essa é uma conta separada do TUNNEL_ACCOUNT_USERNAME.
- TUNNEL_SERVER_PUBLIC_IP pelo IP público do servidor de túnel SSH.
ssh -N -L \ TUNNEL_SERVER_SSH_PORT:SOURCE_DATABASE_PRIVATE_IP:SOURCE_DATABASE_PORT \ USERNAME@TUNNEL_SERVER_PUBLIC_IP
- Crie uma regra de firewall de entrada no túnel SSH para aceitar conexões de endereços IP públicos do Database Migration Service para a região em que você criou o job de migração.
- Em uma etapa posterior, ao
criar o perfil de conexão de origem, faça o seguinte:
- Na seção Definir detalhes da conexão, insira o IP particular da instância de origem do Oracle.
- Na seção Definir método de conectividade, selecione Túnel SSH com encaminhamento.
- Informe o endereço IP público ou o nome do host do servidor SSH.
- Informe a porta que você designou para as conexões SSH no servidor de túnel.
- Insira o nome de usuário que você criou para o Database Migration Service se conectar (ou seja, o valor de TUNNEL_ACCOUNT_USERNAME).
- No menu suspenso Método de autenticação, selecione
o método de autenticação que você quer usar com o
usuário TUNNEL_ACCOUNT_USERNAME:
- Se você quiser usar a senha do usuário, selecione Senha e digite a senha de TUNNEL_ACCOUNT_USERNAME no formulário.
- Se você configurou o servidor SSH para usar a autenticação baseada em chave,
selecione Par de chaves privada/pública e faça upload da chave privada
gerada com o
ssh-keygencomando.
Configurar a conectividade particular com interfaces do Private Service Connect
Esse método de conectividade permite que você se conecte ao IP privado do banco de dados de origem sem consumir a cota de peering de VPC. As interfaces do Private Service Connect são o método recomendado para conexão por IP privado.
Funções exigidas
Para receber as permissões necessárias para configurar interfaces do Private Service Connect, peça ao administrador para conceder os papéis do IAM necessários no projeto para as seguintes contas envolvidas no processo de migração
- Conta de usuário que realiza a migração:
- Para criar e gerenciar anexos de rede:
Administrador de rede do Compute (
roles/compute.networkAdmin) - Para criar e gerenciar configurações de conectividade privada:
Administrador de migração do banco de dados (
roles/datamigration.admin)
- Para criar e gerenciar anexos de rede:
Administrador de rede do Compute (
Se você precisar criar um anexo de rede ou a sub-rede dele em um projeto diferente do Database Migration Service (por exemplo, se você usar um projeto host de VPC compartilhada), será necessário conceder o seguinte papel à conta de serviço do Database Migration Service (
service-PROJECT_NUMBER@gcp-sa-datamigration.iam.gserviceaccount.com): Leitor de rede do Compute (roles/compute.networkViewer)
Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.
Esses papéis predefinidos contêm as permissões necessárias para realizar migrações homogêneas do SQL Server com o Database Migration Service. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para realizar migrações homogêneas do SQL Server com o Database Migration Service:
- Conta de usuário que realiza a migração:
datamigration.*compute.networkAttachments.createcompute.networkAttachments.getcompute.networkAttachments.listcompute.networkAttachments.updatecompute.networkAttachments.delete
- Conta de serviço do Database Migration Service:
compute.networkAttachments.getcompute.networkAttachments.updatecompute.subnetworks.getcompute.subnetworks.list
Essas permissões também podem ser concedidas com papéis personalizados ou outros papéis predefinidos.
Para fontes auto-hospedadas no Google Cloud
Para usar a conectividade particular com interfaces do Private Service Connect em um banco de dados Oracle de origem hospedado em uma VM do Compute Engine, siga estas etapas:
- Crie um anexo de rede na VPC em que a origem autohospedada reside.
Siga estas etapas:
- No console do Google Cloud , acesse a página Anexos de rede.
- Clique em Criar anexo de rede.
- Digite um nome para o anexo.
- No menu Rede, selecione a VPC em que a origem autogerenciada está localizada.
-
Para a região, use a mesma região em que você planeja criar o banco de dados de destino.
O Database Migration Service é um produto totalmente regional, o que significa que todas as entidades relacionadas à migração (perfis de conexão de origem e destino, jobs de migração, bancos de dados de destino, espaços de trabalho de conversão) precisam ser salvas em uma única região.
-
Em Preferência de conexão, selecione Aceitar conexões para projetos selecionados.
O Database Migration Service adiciona automaticamente o projeto de produtor à lista de Projetos aceitos quando você cria a configuração de conectividade particular.
- Não adicione Projetos aceitos ou Projetos rejeitados.
- Clique em Criar anexo de rede.
- No Database Migration Service, crie uma configuração de conectividade particular para interfaces do Private Service Connect.
- Em uma etapa posterior, ao
criar o perfil de conexão de origem, faça o seguinte:
- Na seção Definir detalhes da conexão,
insira o endereço IP da VM do Compute Engine em que você hospeda o
banco de dados Oracle.
É possível ver o endereço IP da VM no console do Google Cloud .
- Na seção Definir método de conectividade, selecione Conectividade particular.
- No menu suspenso, selecione a configuração de conectividade particular que você criou na etapa anterior.
- Na seção Definir detalhes da conexão,
insira o endereço IP da VM do Compute Engine em que você hospeda o
banco de dados Oracle.
Para fontes auto-hospedadas fora do Google Cloud
Para usar a conectividade particular com as interfaces do Private Service Connect em um banco de dados de origem Oracle autohospedado que reside em uma rede fora do Google Cloud, siga estas etapas:
-
Configure a conectividade direta com o Cloud VPN para sua origem do Oracle.
Dependendo da arquitetura de rede, talvez seja necessário configurar outros gateways de VPN no sistema. Para mais informações, consulte Criar um gateway de VPN de alta disponibilidade para um gateway de VPN de peering na documentação do Cloud VPN.
- Opcional: se não for possível criar a configuração de conectividade privada na mesma rede VPC em que você tem o Cloud VPN, crie uma máquina virtual (VM) de proxy reverso no Compute Engine para encaminhar as conexões entre VPCs.
- Crie um anexo de rede na VPC em que você tem o Cloud VPN.
Siga estas etapas:
- No console do Google Cloud , acesse a página Anexos de rede.
- Clique em Criar anexo de rede.
- Digite um nome para o anexo.
- No menu Rede, selecione a VPC em que a origem autogerenciada está localizada.
-
Para a região, use a mesma região em que você planeja criar o banco de dados de destino.
O Database Migration Service é um produto totalmente regional, o que significa que todas as entidades relacionadas à migração (perfis de conexão de origem e destino, jobs de migração, bancos de dados de destino, espaços de trabalho de conversão) precisam ser salvas em uma única região.
- No menu Sub-rede, selecione uma sub-rede em que você
tenha pelo menos seis endereços IP utilizáveis para o
Database Migration Service (ou seja, um intervalo
/29). -
Em Preferência de conexão, selecione Aceitar conexões para projetos selecionados.
O Database Migration Service adiciona automaticamente o projeto de produtor à lista de Projetos aceitos quando você cria a configuração de conectividade particular.
- Não adicione Projetos aceitos ou Projetos rejeitados.
- Clique em Criar anexo de rede.
- No Database Migration Service, crie uma configuração de conectividade particular para interfaces do Private Service Connect.
- Em uma etapa posterior, ao
criar o perfil de conexão de origem, faça o seguinte:
- Na seção Definir detalhes da conexão, insira o IP particular da origem do Oracle.
- Na seção Definir método de conectividade, selecione Conectividade particular.
- No menu suspenso, selecione a configuração de conectividade particular que você criou na etapa anterior.
Configurar a conectividade particular com o peering de VPC
Esse método de conectividade exige que o endereço IP ou o nome do host do banco de dados de origem possa ser acessado pela VPC do Google Cloud . As origens auto-hospedadas que residem em redes fora do Google Cloud podem exigir o uso de componentes de rede adicionais, como o Cloud VPN ou o Cloud Interconnect.
Para fontes auto-hospedadas no Google Cloud
Para usar a conectividade particular com o peering de nuvem privada virtual em um banco de dados Oracle de origem hospedado em uma VM do Compute Engine, siga estas etapas:
- Verifique se a rede de nuvem privada virtual em que sua VM tem um endereço IP atribuído está configurada para acesso a serviços particulares. Para mais informações, consulte Configurar o acesso a serviços particulares.
- No Database Migration Service, crie uma configuração de conectividade privada para fazer peering com a rede VPC em que o banco de dados Oracle está hospedado em uma VM do Compute Engine.
- Em uma etapa posterior, ao
criar o perfil de conexão de origem, faça o seguinte:
- Na seção Definir detalhes da conexão,
insira o endereço IP da VM do Compute Engine em que você hospeda o
banco de dados Oracle.
É possível ver o endereço IP da VM no console do Google Cloud .
- Na seção Definir método de conectividade, selecione Conectividade particular (peering de VPC).
- No menu suspenso, selecione a configuração de conectividade particular que você criou na etapa anterior.
- Na seção Definir detalhes da conexão,
insira o endereço IP da VM do Compute Engine em que você hospeda o
banco de dados Oracle.
Para fontes auto-hospedadas fora do Google Cloud
Para usar a conectividade particular com o peering de nuvem privada virtual em um banco de dados de origem autohospedado do Oracle que reside em uma rede fora doGoogle Cloud, siga estas etapas:
-
Configure a conectividade direta com o Cloud VPN para sua origem do Oracle.
Dependendo da arquitetura de rede, talvez seja necessário configurar outros gateways de VPN no sistema. Para mais informações, consulte Criar um gateway de VPN de alta disponibilidade para um gateway de VPN de peering na documentação do Cloud VPN.
- Opcional: se não for possível criar a configuração de conectividade privada na mesma rede VPC em que você tem o Cloud VPN, crie uma máquina virtual (VM) de proxy reverso no Compute Engine para encaminhar as conexões entre VPCs.
- No Database Migration Service, crie uma configuração de conectividade privada para fazer peering com a rede VPC em que você tem o Cloud VPN.
- Em uma etapa posterior, ao
criar o perfil de conexão de origem, faça o seguinte:
- Na seção Definir detalhes da conexão, insira o IP particular da origem do Oracle.
- Na seção Definir método de conectividade, selecione Conectividade particular (peering de VPC).
- No menu suspenso, selecione a configuração de conectividade particular que você criou na etapa anterior.
A seguir
Para saber mais sobre a conectividade de rede do banco de dados de origem, consulte Visão geral dos métodos de rede de origem.
Para um tutorial completo de migração, consulte o guia de migração do Oracle para o Cloud SQL para PostgreSQL.