Utilizzo degli endpoint del servizio con Code Engine
Tutti i progetti IBM Cloud® Code Engine offrono integrazione con gli endpoint del servizio IBM Cloud®. Questo supporto consente di connettersi dall'infrastruttura classica ai carichi di lavoro di Code Engine rimanendo all'interno della rete IBM Cloud.
Puoi controllare la visibilità dei carichi di lavoro Code Engine e specificare se esporre l'applicazione o la funzione a endpoint pubblici o privati. Si accede a un'applicazione o a una funzione configurata per visibility = private tramite gli endpoint del servizio. Le applicazioni o le funzioni a cui si accede tramite un endpoint del servizio non lasciano la rete IBM e rimangono nella rete IBM Cloud.
Endpoint pubblici
Gli endpoint pubblici forniscono una connessione alla tua distribuzione sulla rete pubblica. Al momento del provisioning, un endpoint pubblico è l'opzione predefinita per tutte le distribuzioni. Il tuo ambiente deve disporre di un accesso a Internet per stabilire una connessione a una distribuzione.
Endpoint privati
Una distribuzione con un endpoint del servizio sulla rete privata ottiene un endpoint che non è accessibile da internet pubblico. Tutto il traffico viene instradato verso l'hardware dedicato alle distribuzioni Code Engine e rimane sulla rete privata IBM Cloud. Tutto il traffico da e verso questo endpoint è gratuito e non comporta addebiti a condizione che il traffico rimanga in IBM Cloud. Una volta che l'ambiente ha accesso alla rete privata IBM Cloud, non è necessaria una connessione a Internet per collegarsi all'installazione.
Le distribuzioni dell'applicazione Code Engine con endpoint privati sono raggiungibili da qualsiasi account all'interno della rete privata e l'accesso a ciascuna istanza richiede l'autenticazione. Per limitare l'accesso a indirizzi IP specifici, intervalli di indirizzi IP, servizi IBM Cloud o VPC, configurare regole di restrizione basate sul contesto.
Gestione sicura delle risorse Code Engine utilizzando gli endpoint del servizio
-
Specifica un progetto Code Engine per utilizzare l'endpoint privato. Puoi configurare un progetto Code Engine per utilizzare l'endpoint privato solo con la CLI. 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 avete creato un nuovo progetto e avete selezionato un progetto esistente e volete che la vostra applicazione sia visibile solo all'endpoint privato, confermate che il progetto esistente supporta 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 -
Creare un'applicazione o una funzione che sia visibile solo all'endpoint privato. Utilizzare il comando
ibmcloud ce application createo ilibmcloud ce function createcon l'opzione--visibility=private. In alternativa, è possibile utilizzare la console per creare o aggiornare un'applicazione o una funzione e impostare la visibilità dell'applicazione.ibmcloud ce application create -n myapp --visibility=private
Accesso sicuro all'applicazione con gli endpoint di servizio
-
Dal tuo progetto Code Engine, conferma che la tua applicazione è configurata con un'impostazione
visibility=private. Vedere Distribuzione dell'applicazione con un endpoint privato. -
Recupera l' URL dell'applicazione Code Engine esposta alla rete privata. Il sito URL ha il seguente formato:
<app>.<uuid>.private.<region>.codeengine.appdomain.cloud.-
Dalla console Code Engine, accedete alla scheda Domain mappings dell'applicazione per visualizzare la visibilità di un'applicazione e gli URL disponibili.
-
Dalla CLICode Engine, utilizza il comando
ibmcloud ce application getcon l'opzione--option url. Nell'esempio seguente, poiché la visibilità dimyappè impostata suvisibility=private, specificando--option urlcon questo comando si ottiene l' URL della rete privata.ibmcloud ce application get -n myapp -output urlOutput di esempio
http://myapp.4svg40kna19.private.us-south.codeengine.appdomain.cloud
-
-
Chiamare l'applicazione dalla rete privata IBM Cloud (ad esempio, chiamando l'applicazione dalla IBM Cloud Shell ).
L'applicazione
myappè una semplice applicazione Hello World. Quando si esegue l'applicazionemyapputilizzando cURL, viene restituitoHello World. Ad esempio, dalla shell IBM Cloud, eseguire:curl http://myapp.4svg40kna19.private.us-south.codeengine.appdomain.cloud
Accesso sicuro alla tua funzione con gli endpoint del servizio
-
Dal tuo progetto Code Engine, conferma che la tua funzione è configurata con un'impostazione
visibility=private. Vedi Distribuzione della tua funzione con un endpoint privato. -
Recupera l' URL della funzione Code Engine esposta alla rete privata. Il sito URL ha il seguente formato:
<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 funzione e i suoi URL disponibili.
-
Dalla CLICode Engine, utilizzare il comando
ibmcloud ce function get. Nell'esempio seguente, poiché la visibilità dimyfunctionè impostata suvisibility=private, questo comando invia l' URL alla rete privata.ibmcloud ce function get -n myfunctionOutput di esempio
http://myfunction.1abc23def19.private.us-south.codeengine.appdomain.cloud
-