Attiva indirizzi IP

Puoi abilitare qualsiasi istanza di macchina virtuale (VM) in modo che sia raggiungibile dalla rete esterna o da un'altra organizzazione, operazione nota come ingresso VM. Un carico di lavoro VM in un progetto dell'organizzazione può raggiungere la rete esterna o la VM corrente esposta ai servizi in altre organizzazioni, noto come uscita VM.

Puoi utilizzare VirtualMachineExternalAccess (VMEA) per controllare insieme l'ingresso e l'uscita delle VM. Puoi trovare gli indirizzi IP in entrata e in uscita che hai abilitato per un'istanza VM nell'API VMM dell'appliance air-gapped Google Distributed Cloud (GDC) o tramite la console GDC.

Prima di iniziare

Per utilizzare i comandi dell'interfaccia a riga di comando (CLI) gdcloud, assicurati di aver scaricato, installato e configurato la CLI gdcloud. Tutti i comandi per l'appliance GDC air-gapped utilizzano la CLI gdcloud o kubectl e richiedono un ambiente del sistema operativo (OS).

Recupera il percorso del file kubeconfig

Per eseguire comandi sul server API Management, assicurati di disporre delle seguenti risorse:

  1. Individua il nome del server dell'API Management o chiedi all'amministratore della piattaforma (PA) qual è il nome del server.

  2. Accedi e genera il file kubeconfig per il server API Management se non ne hai uno.

  3. Utilizza il percorso per sostituire MANAGEMENT_API_SERVER{"</var>"}} in queste istruzioni.

Richiedere autorizzazioni e accesso

Per eseguire le attività elencate in questa pagina, devi disporre del ruolo Amministratore macchina virtuale progetto. Segui i passaggi per verificare o chiedere all'amministratore IAM progetto di assegnarti il ruolo Amministratore VirtualMachine progetto (project-vm-admin) nello spazio dei nomi del progetto in cui si trova la VM.

Per le operazioni sulle VM che utilizzano la console GDC o gcloud CLI, chiedi all'amministratore IAM del progetto di assegnarti sia il ruolo Project VirtualMachine Admin sia il ruolo Project Viewer (project-viewer).

Configura l'accesso esterno alla VM

VirtualMachineExternalAccess (VMEA) controlla l'ingresso e l'uscita delle VM. VMEA non può controllare separatamente l'ingresso e l'uscita delle VM. L'ingresso e l'uscita di una VM devono essere abilitati o disabilitati contemporaneamente.

Puoi configurare e controllare VMEA dall'interfaccia utente o dall'API VMM dell'appliance GDC air-gapped. Una VM può avere un solo VMEA. Se una VM non ha un VMEA, sia l'ingresso che l'uscita sono disattivati per impostazione predefinita.

Attiva l'accesso esterno

Per abilitare una VM con accesso esterno per il trasferimento dei dati in entrata e in uscita, puoi configurare VMEA dalla console GDC o dall'appliance GDC air-gapped API Virtual Machine Manager.

Per impostazione predefinita, il traffico di rete intraprogetto è consentito e puoi accedere direttamente alla tua VM all'interno del progetto. Una policy di rete blocca tutto il traffico in entrata alla VM dall'esterno del progetto. Devi creare manualmente un nuovo criterio di rete per consentire all'indirizzo IP di origine di accedere alla VM tramite il trasferimento dei dati in entrata. Questa policy di rete può essere una policy di rete per il traffico tra progetti o una policy di rete per il traffico tra organizzazioni. La posizione dipende da dove vuoi accedere alla VM.

Puoi attivare e disattivare l'accesso esterno di una VM specificando true o false nel campo enabled della specifica VMEA. Per l'ingresso VM, puoi configurare il trasferimento dei dati nelle porte specificando il nome, il protocollo e il numero di porta per ogni porta che vuoi aggiungere nel campo ports della specifica VMEA.

Per abilitare l'accesso esterno di una VM creando un nuovo VMEA, completa i seguenti passaggi:

Console

  1. Durante la procedura di creazione della VM utilizzando la console, vai alla pagina Dettagli di rete dalla pagina Crea istanza VM.
  2. Individua Rete nel menu di navigazione verticale della pagina.
  3. Seleziona Consenti accesso esterno per attivare l'accesso esterno sulla VM.

Abilita l&#39;accesso esterno durante la creazione della VM

API

Esegui questo comando:

kubectl --kubeconfig MANAGEMENT_API_SERVER apply -n PROJECT -f - <<EOF
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineExternalAccess
metadata:
   name: VM_NAME
spec:
   enabled: true
   ports:
     - name: PORT_NAME
       protocol: PROTOCOL
       port: PORT_NUMBER
EOF

Sostituisci le seguenti variabili:

  • MANAGEMENT_API_SERVER: il file kubeconfig del server API di gestione.
  • VM_NAME: il nome della VM.
  • PORT_NAME: il nome della porta.
  • PROTOCOL: il protocollo che vuoi che utilizzi il servizio di ingresso. Il nome del protocollo deve essere scritto in maiuscolo e deve essere un protocollo supportato da Kubernetes, ad esempio TCP, UDP o SCTP.
  • PORT_NUMBER: il numero di porta.

Per abilitare l'accesso esterno di una VM modificando un VMEA esistente tramite l'API VMM, esegui questo comando:

kubectl --kubeconfig MANAGEMENT_API_SERVER edit virtualmachineexternalaccesses.virtualmachine.gdc.goog VM_NAME -n PROJECT

Disattivare l'accesso esterno

Se una VM non ha un VMEA corrispondente, sia l'ingresso che l'uscita sono disattivati. Se una VM ha un VMEA corrispondente, puoi disattivarlo impostando il campo enabled su false o eliminando direttamente il VMEA. Puoi eseguire queste operazioni tramite l'API VMM dell'appliance GDC air-gapped.

Per disattivare l'accesso esterno, completa i seguenti passaggi:

API

Disattiva l'accesso esterno eliminando un VMEA:

kubectl --kubeconfig MANAGEMENT_API_SERVER delete virtualmachineexternalaccesses.virtualmachine.gdc.goog VM_NAME -n PROJECT

Sostituisci quanto segue:

  • MANAGEMENT_API_SERVER: il file kubeconfig del server dell'API Management.
  • VM_NAME: il nome della VM.
  • PROJECT: il progetto dell'appliance GDC air-gapped in cui si trova la VM.

Disattiva l'accesso esterno modificando un VMEA:

kubectl --kubeconfig MANAGEMENT_API_SERVER edit virtualmachineexternalaccesses.virtualmachine.gdc.goog VM_NAME -n PROJECT

Aggiorna il campo enabled su false.

In entrata

Visualizzare gli indirizzi IP in entrata

Se una VM è abilitata con Ingress, dopo la creazione viene visualizzato un indirizzo IP Ingress nella console GDC. Puoi trovare questo indirizzo IP di ingresso nella pagina Dettagli VM della console GDC.

Per recuperare l'indirizzo IP, utilizza l'API VMM dell'appliance air-gapped GDC. Completa i seguenti passaggi:

API

Recupera l'indirizzo IP:

kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachineexternalaccesses.virtualmachine.gdc.goog VM_NAME -n PROJECT -ojsonpath='{.status.ingressIP}'

Per una VM con un sistema operativo diverso, utilizza il comando ssh per accedere alla VM con l'indirizzo IP di ingresso con la porta che hai attivato con TCP.

Modifica Ingress

Dopo aver abilitato VMEA per una VM, puoi personalizzare l'ingresso modificando VMEA. Puoi modificare direttamente la specifica dell'ingresso VM dalla console GDC. Puoi anche utilizzare l'interfaccia a riga di comando kubectl per modificare l'ingresso VM dalle specifiche di VMEA.

Per modificare il VMEA per personalizzare l'ingresso, completa i seguenti passaggi:

Ad esempio, utilizza i seguenti comandi per aggiungere la porta PORT_NUMBER a un ingresso VM esistente utilizzando il protocollo TCP:

Console

Modifica direttamente le porte nel servizio di ingresso VM dalla console GDC:

  1. Nel menu di navigazione verticale, fai clic su Istanze.
  2. Nella pagina, scorri fino a Dettagli della rete.
  3. Fai clic sull'icona di modifica in Porte di ingresso per modificare la porta di ingresso.

    Interfaccia utente della console che mostra l&#39;elenco dei dettagli di rete con l&#39;icona di modifica sulle porte Ingress

API

kubectl --kubeconfig MANAGEMENT_API_SERVER patch virtualmachineexternalaccesses.virtualmachine.gdc.goog VM_NAME -n PROJECT --type "json" -p '[{"op":"add","path":"/spec/ports/-","value": {"name":"PORT_NAME","port":PORT_NUMBER, "Protocol":"TCP"}}]'

Sostituisci quanto segue:

  • MANAGEMENT_API_SERVER: il file kubeconfig del server dell'API Management.
  • VM_NAME: il nome della VM.
  • PROJECT: il progetto dell'appliance GDC air-gapped in cui si trova la VM.
  • PORT_NAME: il nome della porta da aggiungere.
  • PORT_NUMBER: il numero di porta.

Abilita Ingress con protocollo non TCP

L'appliance air-gap GDC consente di abilitare l'ingresso della VM con protocolli diversi. Per impostazione predefinita, un servizio di ingresso VM utilizza il protocollo TCP. Puoi aggiungere il tuo ingresso del protocollo non TCP per la tua VM. L'appliance GDC air-gapped supporta i seguenti protocolli:

  • Transmission Control Protocol (TCP).
  • User Datagram Protocol (UDP).
  • Stream Control Transmission Protocol (SCTP).

Puoi abilitare il trasferimento dei dati in entrata con un protocollo non TCP specificando nomi di protocollo diversi durante la creazione di VMEA.

In uscita

Un workload VM in un progetto dell'organizzazione può raggiungere la rete esterna o essere esposto a servizi in altre organizzazioni. Se attivi il trasferimento dei dati in uscita per la VM, viene generato un indirizzo IP di uscita. La VM si connette ai servizi esterni con questo indirizzo IP.

Per eseguire il trasferimento dei dati in uscita da questo indirizzo IP dalla rete esterna, potresti dover applicare criteri di rete del progetto. Per ulteriori informazioni, consulta le norme di rete per il traffico in uscita tra organizzazioni.

Visualizzare l'indirizzo IP di uscita

Se una VM è abilitata con Egress, un indirizzo IP di uscita viene visualizzato nella console GDC dopo la creazione. Puoi trovare questo indirizzo IP di uscita anche nella pagina Dettagli VM.

Per visualizzare l'indirizzo IP di uscita:

API

Recupera l'indirizzo IP:

kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachineexternalaccesses.virtualmachine.gdc.goog VM_NAME -n PROJECT -ojsonpath='{.status.egressIP}'

Sostituisci quanto segue:

  • MANAGEMENT_API_SERVER: il file kubeconfig del server dell'API Management.
  • VM_NAME: il nome della VM.
  • PROJECT: il progetto dell'appliance GDC air-gapped in cui si trova la VM.

Il traffico in uscita della VM si basa su un progetto. Le VM all'interno dello stesso progetto contengono lo stesso indirizzo IP in uscita.

Controllo del traffico in uscita

Nelle versioni precedenti dell'appliance air-gap GDC, era necessario riavviare la VM per riflettere le modifiche all'uscita di una VM in esecuzione. Nella versione 1.11, puoi attivare e disattivare l'uscita della VM senza riavviarla. Questa modifica ha effetto subito dopo l'aggiornamento del VMEA.