Nota:

Gestire i carichi di lavoro dei container su OCI utilizzando il servizio Istanze contenitore

Introduzione

Le istanze di container in Oracle Cloud Infrastructure (OCI) offrono un modo nuovo e semplificato di eseguire i container di applicazioni. Si tratta di un servizio di computazione serverless che ti consente di eseguire immediatamente i container senza gestire alcuna infrastruttura.

Le istanze di container offrono un modo semplice e sicuro per avviare rapidamente i carichi di lavoro dei container su OCI, senza la necessità di pianificare e gestire server o altra infrastruttura. Il servizio gestisce il provisioning, la gestione del ciclo di vita, l'applicazione di patch e gli upgrade per l'infrastruttura, consentendo agli utenti di dedicarsi allo sviluppo delle applicazioni. Una istanza contenitore è una risorsa OCI, offerta dal servizio che può essere utilizzata per eseguire uno o più container.

L'esperienza di creazione di un'istanza di container è semplice e consente all'utente di selezionare il numero di memorie centrali e memoria della CPU insieme alle immagini dei container che l'utente desidera eseguire all'interno di un'istanza di container. Sono inoltre disponibili controlli avanzati per limitare l'utilizzo di singoli container all'interno di un'istanza del container in modo da evitare che alcuni container possano monopolizzare le risorse, gestire l'interruzione estesa dei container e fornire variabili di ambiente e parametri di override per i container che gli utenti desiderano eseguire. Le immagini dei container possono essere estratte da qualsiasi registro di immagini dei container, incluso OCI Container Image Registry (OCIR) e da 3 registri di terze parti come ghcr, quay.io, dockerhub o altri registri privati. Una volta avviata, un'istanza del container può essere allocata a indirizzi IP pubblici o privati e l'applicazione può essere esposta agli utenti. Inoltre, il servizio Istanza contenitore offre funzionalità di log e monitoraggio pronte all'uso. Tutta la gestione dell'infrastruttura, inclusi l'applicazione di patch e gli upgrade, viene gestita in modo trasparente senza alcun onere per l'utente o il carico di lavoro.

Questa esercitazione descrive in dettaglio come iniziare a usare il servizio Container Instance e a utilizzare i vari controlli per avviare e gestire in modo rapido e semplice i carichi di lavoro dei container su Oracle Cloud Infrastructure.

Obiettivo

Prerequisiti

Task 1: creare e configurare un'istanza contenitore

In questa esercitazione verrà creato un sito WordPress completamente funzionale, eseguendo sia i contenitori WordPress che MySQL nell'istanza contenitore.

  1. Passare a Servizi per sviluppatori, Container e artifact, Istanze contenitore.

    La pagina del servizio istanze contenitore, mostrata di seguito, visualizza le istanze contenitore attualmente in esecuzione ed è possibile creare anche una nuova istanza contenitore da qui.

    Home istanze contenitore

  2. Fare clic su Crea istanza contenitore per aprire la Creazione guidata dell'istanza contenitore.

    Panoramica della creazione guidata

    Nota: durante la creazione di un'istanza contenitore, è innanzitutto necessario impostare alcuni parametri di base, ad esempio le opzioni di posizionamento, forma e networking. Quindi, scegli uno o più container da avviare all'interno dell'istanza del container e, facoltativamente, imposta i parametri per i container.

    • Assegnare un nome all'istanza del container e scegliere un compartimento corrispondente. In questo esempio, denominiamo l'istanza del contenitore Wordpress.

      assegnare un nome all'istanza del contenitore

    • Le opzioni di posizionamento includono il dominio di disponibilità in cui desideri inserire l'istanza del container, nonché l'opzione per scegliere un dominio di errore di tua scelta. La selezione delle forme offre le piattaforme di computazione supportate e puoi scegliere la quantità di memorie centrali CPU e memoria necessaria per i tuoi container. Questa capacità offre la flessibilità di dimensionare le istanze di container per carichi di lavoro associati a CPU o memoria, ottimizzando al contempo i costi. Scegli 2 OCPU e 16 GB di memoria.

      Selezione CPU

    • La configurazione di networking ti consente di scegliere le opzioni di networking come la VCN e la subnet in cui desideri che l'istanza del container si trovi. Se lo desideri, puoi anche assegnare un indirizzo IP pubblico alla tua istanza di container per esporre pubblicamente le tue applicazioni. Ricorda che per consentire alle porte di ascolto delle applicazioni, è necessario disporre della lista di sicurezza della subnet o del gruppo di sicurezza di rete (NSG) per consentire all'istanza di ricevere le connessioni.

      Rete

    • Le opzioni avanzate ti consentono di impostare un timeout normale di chiusura, vale a dire il tempo concesso ai container all'interno di un'istanza contenitore per uscire gradualmente quando l'istanza del contenitore viene interrotta. È inoltre possibile impostare un criterio di riavvio del contenitore per riavviare automaticamente i contenitori che consentono di uscire/interrompere o di basare il criterio di riavvio sullo stato di uscita del contenitore.

    Avanzate

  3. Fare clic su Next. Il passo successivo consiste nel scegliere e configurare i container che si desidera eseguire nell'istanza del container.

  4. Iniziare definendo il primo contenitore nella sezione di configurazione del contenitore. In questo esempio, consente di iniziare con il contenitore WordPress. Assegnare al contenitore un nome wordpress.

    nome contenitore wp

  5. Fare clic su Seleziona immagine per aprire la finestra di dialogo di selezione dell'immagine.

    selezionare l'immagine wp

    Nella finestra di dialogo di selezione dell'immagine sono disponibili opzioni per scegliere le immagini da OCIR oppure da un registro esterno. Le immagini ufficiali per WordPress vengono pubblicate su DockerHub e DockerHub è il registro esterno predefinito. Selezionare quindi la scheda Registro esterno e digitare wordpress per il nome dell'immagine. La tag immagine è facoltativa e il valore predefinito è latest. In questo caso abbiamo bisogno dell'ultima immagine wordpress, quindi lasciamo il vuoto e il servizio lo imposterà automaticamente su latest.

    È inoltre possibile visualizzare altri registri esterni, per i quali è possibile fornire l'URL del teh e le informazioni di autenticazione. Se l'URL del registro è raggiungibile, il servizio di istanza del container può estrarre immagini da qualsiasi registro conforme a OCI (Open Container Initiative).

  6. Successivamente, impostare alcune variabili d'ambiente, come descritto nella sezione Come utilizzare questa immagine della documentazione per l'immagine. Vengono impostati le seguenti variabili e i seguenti valori.

    variabile valore
    WORDPRESS_DB_HOST 127.0.0.1
    WORDPRESS_DB_USER wordpress
    WORDPRESS_DB_PASSWORD wordpress
    WORDPRESS_DB_NAME wordpress

    set di variabili

    • Quando hai più container all'interno di un'istanza di container, condividi le risorse di computazione quali la CPU e la memoria disponibili per l'istanza di container. Inoltre, condividono lo spazio di nomi per la rete, motivo per cui il contenitore WordPress può connettersi al contenitore MySQL tramite localhost o l'indirizzo di loopback 127.0.0.1 come configurato in precedenza.

    • Per evitare che un container utilizzi troppe di queste risorse e ami altri container nell'istanza del container, puoi limitare le risorse rese disponibili per ogni container. È inoltre possibile sostituire alcune impostazioni predefinite dell'immagine, ad esempio ENTRYPOINT, CMD e WORKDIR. Queste opzioni sono disponibili per ogni contenitore in Opzioni avanzate. Consente di espandere le opzioni avanzate per questo contenitore e impostare il contenitore WordPress in modo che utilizzi non più del 50% delle memorie centrali CPU.

      Opzioni avanzate wp

    • WordPress richiede anche il funzionamento di un database. In questa esercitazione verrà eseguito un database MySQL come secondo contenitore all'interno dell'istanza del contenitore. Per le distribuzioni di produzione reali, è consigliabile utilizzare un servizio di database come il servizio di database MySQL.

  7. Per iniziare con il contenitore MySQL, fare clic su + Altro contenitore per aggiungere un altro contenitore all'istanza del contenitore. Come prima, iniziamo nominando il contenitore e questa volta lo chiamiamo "mysql".

  8. Fare clic su Seleziona immagine per fornire i dettagli dell'immagine. Oracle pubblica le immagini MySQL ufficiali su DockerHub e per questa esercitazione verrà utilizzata la release MySQL 8.0.31.

    Seleziona immagine MySQL

    • Impostare le seguenti variabili di ambiente per inizializzare il database.

      variabile valore
      MYSQL_ROOT_PASSWORD wordpressonmysql
      MYSQL_DATABASE wordpress
      MYSQL_USER wordpress
      MYSQL_PASSWORD wordpress

      Imposta parametri MySQL

    • Analogamente al contenitore WordPress, vengono impostati i limiti del contenitore e viene inoltre impostato un parametro di avvio per sostituire l'argomento ENTRYPOINT del contenitore MySQL. L'argomento --default-authentication-plugin=mysql_native_password viene passato per abilitare il plugin di autenticazione delle password del database.

      Imposta sostituzione ENTRYPOINT MySQL

  9. Fare clic su Avanti per rivedere tutte le informazioni, quindi fare clic su Crea per creare l'istanza del contenitore. L'istanza contenitore appena configurata avrà due contenitori, ognuno con limitazioni per occupare solo il 50% della CPU e della memoria disponibili nell'istanza contenitore. Abbiamo scelto le immagini pubbliche per WordPress e MySQL per creare il nostro sito WordPress, ognuno configurato mediante variabili di ambiente per inizializzare i contenitori.

L'istanza del contenitore viene avviata in pochi secondi e il carico di lavoro è ora attivo. Poiché abbiamo scelto di assegnare un indirizzo IP pubblico all'istanza del container, possiamo utilizzarlo per raggiungere il nostro sito WordPress su Internet. L'indirizzo IP pubblico assegnato nella pagina di panoramica dell'istanza del contenitore.

Attivo istanza container

Visitando l'indirizzo IP da un browser, puoi accedere al tuo sito web WordPress in diretta su Internet.

il sito è attivo

Approvazioni

Altre risorse di apprendimento

Esplora altri laboratori su docs.oracle.com/learn o accedi a contenuti di formazione gratuiti sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Explorer di Oracle Learning.

Per la documentazione sul prodotto, visitare il sito Oracle Help Center.