Questa pagina descrive come configurare la connettività di rete alle origini Oracle self-hosted per le migrazioni eterogenee da Oracle a Cloud SQL per PostgreSQL con Database Migration Service.
Esistono tre diversi metodi che puoi utilizzare per configurare la connettività di rete necessaria per le migrazioni da origini Oracle con hosting autonomo:
- Lista consentita di IP pubblici
- Tunnel SSH di forwarding
- Connettività IP privato con il peering Virtual Private Cloud
Configurare la connettività della lista consentita IP
Per utilizzare il metodo di connettività della lista consentita IP pubblico:
- Assicurati che il database di origine abbia un indirizzo IP raggiungibile dall'internet pubblico. Non è necessario utilizzare l'indirizzo IP per la connessione. Se hai un record DNS associato all'IP, puoi utilizzarlo.
- Crea una regola del firewall in entrata sul server del database di origine per accettare le connessioni da Database Migration Service. Utilizza la seguente configurazione:
- Per il tipo di regola, utilizza
port
. - Per l'intervallo di indirizzi IP consentiti, aggiungi tutti indirizzi IP pubblici di Database Migration Service per la regione in cui crei il job di migrazione.
- Imposta il protocollo su
TCP
. - Imposta il numero di porta associato alla regola sulla porta su cui il database di origine è in ascolto per le connessioni in entrata. Si tratta
dello stesso numero di porta che devi inserire nel
profilo di connessione di origine.
Per impostazione predefinita, il server Oracle utilizza la porta
1521
.
I passaggi per la configurazione delle regole del firewall variano a seconda del software del server utilizzato. Per ulteriori informazioni, consulta la documentazione del prodotto firewall.
- Per il tipo di regola, utilizza
- In un secondo momento, quando crei il profilo di connessione di origine, nella sezione Definisci metodo di connettività, seleziona Lista consentita IP.
Configurare la connettività tramite un tunnel SSH di forwarding
Per connetterti al database di origine con un tunnel Secure Shell (SSH), segui questi passaggi:
- Crea una macchina virtuale (VM) che possa aprire il tunnel tra Database Migration Service e il tuo database di origine. Il server del tunnel può essere costituito da un qualunque
host Unix/Linux che:
- Accessibile dalla rete internet pubblica tramite SSH.
- Può accedere all'indirizzo IP privato del database di origine.
Sul server SSH, crea un account utente che Database Migration Service possa utilizzare per connettersi al tunnel SSH.
Ad esempio, su un sistema Ubuntu puoi utilizzare i seguenti comandi:
- Crea un account utente:
adduser
TUNNEL_ACCOUNT_USERNAME - Limita l'accesso alla shell per l'account utente per migliorare la sicurezza:
usermod -s /usr/sbin/nologin
TUNNEL_ACCOUNT_USERNAME
- Crea un account utente:
Decidi quale metodo di autenticazione vuoi che Database Migration Service utilizzi quando si connette al tunnel.
Puoi utilizzare una password o generare chiavi SSH nel formato
PEM
che potrai caricare in un secondo momento in Database Migration Service quando crei il profilo di connessione di origine.- Se vuoi utilizzare una password, non devi configurare altro. Ricorda la password che hai creato per l'account TUNNEL_ACCOUNT_USERNAME.
- Se vuoi utilizzare l'autenticazione basata su chiavi, devi generare
una coppia di chiavi pubblica-privata. Ad esempio, puoi utilizzare l'utilità
ssh-keygen
:- Genera la coppia di chiavi:
ssh-keygen -m PEM -f
YOUR_KEY_NAME - Copia la chiave pubblica (
YOUR_KEY_NAME.pub
) nella directory~/.ssh/
sul server del tunnel. - Salva la chiave privata. Dovrai caricarlo in un secondo momento in Database Migration Service quando crei il profilo di connessione di origine.
- Genera la coppia di chiavi:
- Modifica il file
/etc/ssh/sshd_config
per configurare il tunnel SSH in avanti in base alle esigenze della tua organizzazione. Ti consigliamo di utilizzare le seguenti impostazioni:# 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 - Esegui il comando
ssh
per avviare il tunnel.Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
TUNNEL_SERVER_SSH_PORT con il numero di porta su cui il server è in ascolto per le connessioni SSH.SOURCE_DATABASE_PRIVATE_IP con l'indirizzo IP privato del database di origine. Il server SSH deve essere in grado di raggiungere quell'IP.SOURCE_DATABASE_PORT con il numero di porta su cui il database di origine è in ascolto per le connessioni. Il numero di porta predefinito per le connessioni TCP su Oracle è1433
.USERNAME con il nome dell'account utente che eseguirà il tunnel. Si tratta di un account distinto da TUNNEL_ACCOUNT_USERNAME.TUNNEL_SERVER_PUBLIC_IP con l'IP pubblico del server del tunnel SSH.
ssh -N -L \
TUNNEL_SERVER_SSH_PORT :SOURCE_DATABASE_PRIVATE_IP :SOURCE_DATABASE_PORT \USERNAME @TUNNEL_SERVER_PUBLIC_IP - Crea una regola firewall in entrata sul tunnel SSH per accettare le connessioni dagli indirizzi IP pubblici di Database Migration Service per la regione in cui crei il job di migrazione.
- In un secondo momento, quando
crei il profilo di connessione di origine, procedi nel seguente modo:
- Nella sezione Definire i dettagli di connessione, inserisci l'IP privato dell'istanza Oracle di origine.
- Nella sezione Definisci metodo di connettività, seleziona Tunnel SSH di forwarding.
- Fornisci l'indirizzo IP pubblico o il nome host del tuo server SSH.
- Specifica la porta designata per le connessioni SSH sul server del tunnel.
- Inserisci il nome utente con cui l'utente che hai creato per Database Migration Service deve connettersi (ovvero il valore di TUNNEL_ACCOUNT_USERNAME).
- Nel menu a discesa Metodo di autenticazione, seleziona
il metodo di autenticazione che vuoi utilizzare con l'utente
TUNNEL_ACCOUNT_USERNAME:
- Se vuoi utilizzare la password dell'utente, seleziona Password e inserisci la password TUNNEL_ACCOUNT_USERNAME nel modulo.
- Se hai configurato il server SSH in modo da utilizzare l'autenticazione basata su chiavi,
seleziona Coppia di chiavi privata/pubblica e carica la chiave privata
generata con il comando
ssh-keygen
.
Configurare la connettività privata con il peering VPC
Questo metodo di connettività richiede che l'indirizzo IP o il nome host del database di origine sia raggiungibile dalla tua Google Cloud VPC. Le origini self-hosted che si trovano in reti esterne Google Cloud potrebbero richiedere l'utilizzo di componenti di rete aggiuntivi come Cloud VPN o Cloud Interconnect.
Per le origini self-hosted in Google Cloud
Per utilizzare la connettività privata con il peering Virtual Private Cloud per un database Oracle di origine ospitato su una VM Compute Engine, segui questi passaggi:
- Assicurati che la rete Virtual Private Cloud a cui è assegnato un indirizzo IP della VM sia configurata per l'accesso ai servizi privati. Per ulteriori informazioni, consulta Configurare l'accesso privato ai servizi.
- In Database Migration Service, crea una configurazione di connettività privata per stabilire un peering con la rete VPC in cui è ospitato il tuo database Oracle su una VM Compute Engine.
- In un secondo momento, quando
crei il profilo di connessione di origine, procedi nel seguente modo:
- Nella sezione Definire i dettagli di connessione,
inserisci l'indirizzo IP della VM Compute Engine in cui ospiti il
database Oracle.
Puoi visualizzare l'indirizzo IP della VM nella console Google Cloud.
- Nella sezione Definisci metodo di connettività, seleziona Connettività privata (peering VPC).
- Dal menu a discesa, seleziona la configurazione di connettività privata creata nel passaggio precedente.
- Nella sezione Definire i dettagli di connessione,
inserisci l'indirizzo IP della VM Compute Engine in cui ospiti il
database Oracle.
Per le origini self-hosted esterne Google Cloud
Per utilizzare la connettività privata con il peering Virtual Private Cloud per un database di origine Oracle auto-hosted che si trova in una rete esternaGoogle Cloud, segui questi passaggi:
-
Configura la connettività diretta con Cloud VPN alla fonte Oracle.
A seconda dell'architettura di rete, potresti dover configurare gateway VPN aggiuntivi nel sistema. Per ulteriori informazioni, consulta Crea un gateway VPN ad alta disponibilità connesso a un gateway VPN peer nella documentazione di Cloud VPN.
- (Facoltativo) Se non riesci a creare la configurazione della connettività privata nella stessa rete VPC in cui hai la VPN cloud, crea una macchina virtuale (VM) di reverse proxy su Compute Engine per inoltrare le connessioni tra i VPC.
- In Database Migration Service, crea una configurazione di connettività privata per il peering con la rete VPC in cui si trova la tua VPN Cloud.
- In un secondo momento, quando
crei il profilo di connessione di origine, procedi nel seguente modo:
- Nella sezione Definire i dettagli di connessione, inserisci l'IP privato dell'origine Oracle.
- Nella sezione Definisci metodo di connettività, seleziona Connettività privata (peering VPC).
- Dal menu a discesa, seleziona la configurazione di connettività privata creata nel passaggio precedente.
Passaggi successivi
Per scoprire di più sulla connettività di rete del database di origine, consulta Panoramica dei metodi di connettività di rete di origine.
Per una procedura dettagliata e passo passo per la migrazione, consulta la guida alla migrazione da Oracle a Cloud SQL per PostgreSQL.