Utilizzo degli endpoint privati virtuali con Code Engine
Tutti i progetti IBM Cloud® Code Engine offrono l'integrazione con VPE (Virtual Private Endpoints) IBM Cloud® per VPC (Virtual Private Cloud). Questo supporto ti dà la possibilità di connetterti dalla tua rete VPC alle applicazioni o funzioni Code Engine utilizzando gli indirizzi IP di tua scelta, che sono assegnati da una sottorete all'interno del tuo VPC.
Con Code Engine, puoi utilizzare i seguenti tipi di VPE:
- Endpoint privati virtuali per gestire le risorse del progetto. Esiste un VPE statico per regione.
- Endpoint privati virtuali per accedere alle applicazioni. C'è un VPE per progetto Code Engine. È possibile accedere a tutte le app all'interno del progetto utilizzando questo VPE.
Gli endpoint privati forniscono una connessione alle tue risorse, applicazioni o funzioni del progetto sulla rete privata IBM Cloud. Quando ti connetti tramite un endpoint privato virtuale, tutto il traffico viene instradato all'hardware dedicato alle applicazioni Code Engine e rimane sulla rete privata IBM Cloud. Non ci sono addebiti aggiuntivi per tutto il traffico da e verso questo endpoint, a condizione che il traffico rimanga in IBM Cloud.
Un progetto Code Engine è configurato automaticamente sia con un endpoint pubblico che con un endpoint privato virtuale.
Puoi controllare la visibilità delle applicazioni Code Engine e specificare se esporre l'applicazione o le funzioni agli endpoint pubblici o privati. È possibile accedere a un'applicazione o funzione configurata per la rete privata tramite il VPE o altre applicazioni o funzioni Code Engine. Le applicazioni o le funzioni a cui si accede tramite il VPE non lasciano la rete IBM e restano nella rete IBM Cloud.
Utilizzo di VPE per gestire in modo sicuro le risorse del progetto
Prima di cominciare, devi disporre di un accountIBM Cloud.
-
Crea un IBM Cloud® Virtual Private Cloud. Segui le istruzioni Introduzione.
-
Assicurati che il tuo VPC abbia almeno una VSI (istanza del server virtuale) e possa connettersi alla VSI. Puoi utilizzare la console VPC, la CLI e l'API per eseguire il provisioning di una VSI dalla pagina IBM Cloud® Virtual Private Cloud nella console IBM Cloud.
- Crea una chiave SSH per accedere alla VSI.
- Crea un'istanza del server virtuale utilizzando la console.
- Prenota un indirizzo IP mobile in modo che la tua istanza sia raggiungibile da Internet.
- Connetti alla tua VSI.
-
Nella console IBM Cloud, fai clic sull'icona Menu e seleziona Infrastruttura VPC -> Rete -> Gateway endpoint privati virtuali. Crea un VPE per l'endpoint regionale Code Engine
api.<region>.codeengine.cloud.ibm.comcompletando questa istruzione. -
Dopo aver creato il tuo VPE, potrebbero essere necessari alcuni minuti prima che il nuovo VPE e il DNS privato (pDNS) completino il processo e inizino a lavorare per il tuo VPC. Il completamento viene confermato quando vedi un indirizzo IP impostato nella vista dettagli del VPE.
-
Esegui SSH nella tua VSI e utilizza
root@. Ad esempio,ssh root@<VSI_floating_IP_address>. -
Per accedere alle risorse Code Engine dall'interno della VSI, configurare il tuo ambiente CLI Code Engine. Assicurati che la tua CLI IBM Cloud sia connessa a
private.cloud.ibm.com. -
Specifica un progetto Code Engine per utilizzare l'endpoint privato. Per creare un progetto, utilizzare il comando
ibmcloud ce project createcon l'opzione--endpoint=private.ibmcloud ce project create --name myproject --endpoint=privateAttendere che il progetto sia nello stato
active. Con la CLI, puoi confermare lo stato del progetto utilizzando il comandoibmcloud ce project get.Se si desidera che un progetto Code Engine esistente utilizzi l'endpoint privato, utilizzare il comando
ibmcloud ce project selectcon l'opzione--endpoint=private.ibmcloud ce project select --name myproject --endpoint=privatePer i comandi
project createeproject select, se l'opzione--endpointnon viene specificata in modo esplicito, il funzionamento viene determinato dal sistema. Se la CLI IBM Cloud è connessa aprivate.cloud.ibm.com, il progetto Code Engine si comporta come se--endpointfosseprivate. Se la CLI IBM Cloud è connessa acloud.ibm.com, il progetto Code Engine si comporta come se--endpointfossepublic. -
Se non hai creato un nuovo progetto e hai selezionato un progetto esistente e vuoi che la tua applicazione o funzione sia visibile solo all'endpoint privato, conferma che il progetto esistente supporta le applicazioni con visibilità privata. Utilizzare il comando
ibmcloud ce project getper verificare che l'output perApplication Private Visibility Supportedsia impostato sutrue. Se il valore èfalse, contattare il supporto IBM per abilitare questa funzionalità all'interno del progetto esistente.ibmcloud ce project get -n myprojectOutput di esempio
Getting project 'myproject'... OK Name: myproject ID: abcdabcd-abcd-abcd-abcd-f1de4aab5d5d Status: active Enabled: true Application Private Visibility Supported: false Selected: true Region: us-south Resource Group: default Service Binding Service ID: ServiceId-1234abcd-abcd-abcd-1111-1a2b3c4d5e6f Age: 52d Created: Tue, 28 Sep 2021 05:12:16 -0500 Updated: Tue, 28 Sep 2021 05:12:19 -0500 Quotas: Category Used Limit App revisions 1 60 Apps 1 20 Build runs 1 100 Builds 2 100 Configmaps 2 100 CPU 0 64 Ephemeral storage 0 256G Instances (active) 0 250 Instances (total) 0 2500 Job runs 0 100 Jobs 0 100 Memory 0 256G Secrets 6 100 Subscriptions (cron) 0 100 Subscriptions (IBM Cloud Object Storage) 0 100 Subscriptions (Kafka) 0 100 -
Crea un'applicazione visibile solo all'endpoint privato. Utilizzare il comando
ibmcloud ce application createcon l'opzione--visibility=private. In alternativa, puoi utilizzare la console per creare un'applicazione o aggiornare un'applicazione esistente e impostare la visibilità della tua applicazione.ibmcloud ce application create -n myapp --visibility=private
Hai ora configurato e configurato il tuo endpoint privato virtuale per gestire le risorse del progetto. Se vuoi controllare quale applicazione esporre all'endpoint privato, puoi configurare un VPE per accedere alla tua applicazione.
Utilizzo del tuo VPE per accedere a un'applicazione in modo sicuro
Prima di cominciare, devi disporre di un accountIBM Cloud.
Puoi utilizzare il tuo VPE solo per accedere alla tua applicazione con un endpoint privato se il tuo progetto selezionato supporta la visibilità privata dell'applicazione.
Per confermare se il progetto supporta la visibilità privata dell'applicazione, utilizzare il comando ibmcloud ce project get per verificare
che l'output per Application Private Visibility Supported sia impostato su true.
-
Crea un IBM Cloud® Virtual Private Cloud. Segui le istruzioni Introduzione.
-
Assicurati che il tuo VPC abbia almeno una VSI (istanza del server virtuale) e possa connettersi alla VSI. Puoi utilizzare la console, la CLI e l'API per eseguire rapidamente il provisioning delle istanze del server virtuale dalla pagina IBM Cloud® Virtual Private Cloud nella console di IBM Cloud.
- Crea una chiave SSH per accedere alla VSI.
- Crea un'istanza del server virtuale utilizzando l'IU.
- Prenota un indirizzo IP mobile in modo che la tua istanza sia raggiungibile da Internet.
- Connetti alla tua VSI.
-
Dal tuo progetto Code Engine, conferma che la tua applicazione è configurata con un'impostazione
visibility=private. Vedi Distribuzione della tua applicazione con un endpoint privato. -
Nella console IBM Cloud, fai clic sull'icona Menu e seleziona Infrastruttura VPC -> Rete -> Gateway endpoint privati virtuali. Crea un VPE per l'endpoint regionale Code Engine per lo specifico progetto che stai utilizzando per la visibilità dell'applicazione privata completando questa istruzione. Questo progetto è elencato nella tabella con l'endpoint nel formato,
*.<uuid>.private.<region>.codeengine.appdomain.cloud. -
Dopo aver creato il tuo VPE, potrebbero essere necessari alcuni minuti prima che il nuovo VPE e il DNS privato (pDNS) completino il processo e inizino a lavorare per il tuo VPC. Il completamento viene confermato quando vedi un indirizzo IP impostato nella vista dettagli del VPE.
-
Richiama l'URL dell'applicazione Code Engine esposta alla rete privata. L'URL ha il formato seguente:
<app>.<uuid>.private.<region>.codeengine.appdomain.cloud. Dalla console Code Engine, vai alla scheda Mappature dominio per la tua applicazione per visualizzare la visibilità di un'applicazione e i relativi URL disponibili. Dalla CLICode Engine, puoi utilizzare il comandoibmcloud ce application getcon l'opzione--option url. Poiché la visibilità dimyappè impostata suvisibility=private, specificando--option urlcon questo comando viene emesso l'URL per la rete privata.ibmcloud ce application get -n myapp -output urlOutput di esempio
http://myapp.4svg40kna19.private.us-south.codeengine.appdomain.cloud -
Puoi ora utilizzare la tua istanza nella VSI. Chiamare l'applicazione. L'applicazione
myappè una semplice applicazione Hello World. Quando esegui il curl dell'applicazionemyapp, viene restituitoHello World.curl http://myapp.4svg40kna19.private.us-south.codeengine.appdomain.cloud
Utilizzo del tuo VPE per accedere a una funzione in modo sicuro
Prima di cominciare, devi disporre di un accountIBM Cloud.
Puoi utilizzare il tuo VPE solo per accedere alla tua funzione con un endpoint privato se il progetto selezionato supporta la visibilità privata della funzione. Per
confermare se il progetto supporta la visibilità privata della funzione, utilizzare il comando ibmcloud ce project get per verificare che l'output
per Application Private Visibility Supported sia impostato su true.
-
Crea un IBM Cloud® Virtual Private Cloud. Segui le istruzioni Introduzione.
-
Assicurati che il tuo VPC abbia almeno una VSI (istanza del server virtuale) e possa connettersi alla VSI. Puoi utilizzare la console, la CLI e l'API per eseguire rapidamente il provisioning delle istanze del server virtuale dalla pagina IBM Cloud® Virtual Private Cloud nella console di IBM Cloud.
- Crea una chiave SSH per accedere alla VSI.
- Crea un'istanza del server virtuale utilizzando l'IU.
- Prenota un indirizzo IP mobile in modo che la tua istanza sia raggiungibile da Internet.
- Connetti alla tua VSI.
-
Dal tuo progetto Code Engine, conferma che la tua applicazione è configurata con un'impostazione
visibility=private. Vedi Distribuzione della tua applicazione con un endpoint privato. -
Nella console IBM Cloud, fai clic sull'icona Menu e seleziona Infrastruttura VPC -> Rete -> Gateway endpoint privati virtuali. Crea un VPE per l'endpoint regionale Code Engine per lo specifico progetto che stai utilizzando per la visibilità dell'applicazione privata completando questa istruzione. Questo progetto è elencato nella tabella con l'endpoint nel formato,
*.<uuid>.private.<region>.codeengine.appdomain.cloud. -
Dopo aver creato il tuo VPE, potrebbero essere necessari alcuni minuti prima che il nuovo VPE e il DNS privato (pDNS) completino il processo e inizino a lavorare per il tuo VPC. Il completamento viene confermato quando vedi un indirizzo IP impostato nella vista dettagli del VPE.
-
Richiama l'URL della funzione Code Engine esposta alla rete privata. L'URL ha il formato seguente:
<function>.<uuid>.private.<region>.codeengine.appdomain.cloud. Dalla console Code Engine, vai alla scheda Mappature dominio per la tua funzione per visualizzare la visibilità della tua funzione e dei suoi URL disponibili. Dalla CLICode Engine, puoi utilizzare il comandoibmcloud ce function get. Poiché la visibilità dimyfunctionè impostata suvisibility=private, questo comando visualizza l'URL alla rete privata.ibmcloud ce function get -n myfunctionOutput di esempio
http://myfunction.1abc23def19.private.us-south.codeengine.appdomain.cloud
Puoi ora utilizzare la tua istanza nella VSI.