Introduzione ai componenti aggiuntivi per i cluster
Scopri i componenti aggiuntivi di cluster essenziali e il portafoglio crescente di componenti aggiuntivi di cluster opzionali che puoi gestire utilizzando Kubernetes Engine (OKE).
Quando si utilizzano cluster avanzati, è possibile utilizzare Kubernetes Engine per gestire sia i componenti aggiuntivi essenziali che un portafoglio crescente di componenti aggiuntivi opzionali. È possibile effettuare le seguenti operazioni.
- Abilita o disabilita componenti aggiuntivi essenziali e componenti aggiuntivi facoltativi specifici.
- Opt-in e out dagli aggiornamenti automatici da parte di Oracle (vedere Updating Add-on Versions).
- Selezionare le versioni dei componenti aggiuntivi (vedere Versioni supportate dei componenti aggiuntivi cluster).
- Gestisci le personalizzazioni specifiche del componente aggiuntivo utilizzando argomenti di configurazione della coppia chiave/valore approvati (vedere Argomenti di configurazione dei componenti aggiuntivi del cluster).
Componenti aggiuntivi essenziali
I componenti aggiuntivi cluster essenziali sono componenti di base di un cluster Kubernetes e sono necessari per il corretto funzionamento di un cluster. Di seguito sono riportati alcuni componenti aggiuntivi essenziali per i cluster.
- CoreDNS: il componente aggiuntivo CoreDNS è un server DNS affidabile e di uso generale, modulare e integrabile. Kubernetes Engine crea cluster con CoreDNS come server DNS. Il processo kubelet su ogni nodo di lavoro indirizza i singoli container al server DNS per tradurre i nomi DNS in indirizzi IP.
- kube-proxy: il componente aggiuntivo kube-proxy è il proxy di rete Kubernetes che gestisce le regole di rete e instrada le richieste.
- un plugin CNI per il pod networking: uno dei seguenti componenti aggiuntivi del plugin CNI per implementare la connettività di rete per i pod in esecuzione sui nodi di lavoro:
- Plugin CNI networking pod VCN nativo OCI
- flanella CNI plugin
I plugin CNI configurano le interfacce di rete, eseguono il provisioning degli indirizzi IP e mantengono la connettività.
I componenti aggiuntivi cluster essenziali vengono distribuiti per impostazione predefinita nei nuovi cluster Kubernetes. Quando si utilizzano cluster avanzati, è possibile configurare componenti aggiuntivi di cluster essenziali utilizzando Kubernetes Engine.
Componenti aggiuntivi facoltativi
I componenti aggiuntivi cluster facoltativi sono componenti che è possibile scegliere di distribuire su un cluster Kubernetes. I componenti aggiuntivi opzionali estendono la funzionalità Kubernetes di base per migliorare la gestibilità e le prestazioni dei cluster. Di seguito sono riportati alcuni esempi di componenti aggiuntivi cluster opzionali.
- Dashboard Kubernetes: il componente aggiuntivo Kubernetes Dashboard facoltativo è un'interfaccia di gestione basata sul Web che consente di distribuire, modificare, osservare e risolvere i problemi delle applicazioni containerizzate. Si sconsiglia di distribuire il dashboard Kubernetes sui cluster di produzione a causa della mancanza di supporto di autenticazione estensibile. Per ulteriori informazioni, vedere Accesso a un cluster mediante il dashboard Kubernetes.
- Tiller (non consigliato): il componente aggiuntivo Tiller opzionale è la parte server di Helm. Con Tiller in esecuzione nel cluster, puoi utilizzare Helm per gestire le risorse Kubernetes. Tiller è stato rimosso da Helm nella versione 3 (e versioni successive) a causa di rischi noti per la sicurezza. A causa di questi rischi per la sicurezza, si consiglia vivamente di non distribuire Tiller sui cluster di produzione. Per lo stesso motivo, il componente aggiuntivo Tiller non viene visualizzato nella console. Se decidi di voler distribuire il componente aggiuntivo Tiller nonostante i rischi per la sicurezza, utilizza l'interfaccia CLI o l'API OCI.
- Operatore di database: il componente aggiuntivo opzionale Oracle Database Operator for Kubernetes estende l'API Kubernetes con risorse e controller personalizzati per automatizzare la gestione del ciclo di vita di Oracle Database. Oracle Database Operator supporta varie configurazioni di database e operazioni del ciclo di vita. Tenere presente che per utilizzare Oracle Database Operator come componente aggiuntivo del cluster, è inoltre necessario distribuire cert-manager ( standalone o come componente aggiuntivo del cluster). Per ulteriori informazioni, consulta la documentazione di Oracle Database Operator for Kubernetes su GitHub.
- Operatore Weblogic: l'add-on opzionale Operatore WebLogic Kubernetes supporta l'esecuzione di domini WebLogic Server e dell'infrastruttura Fusion Middleware su Kubernetes. Per ulteriori informazioni, consultare la WebLogic documentazione dell'operatore Kubernetes su GitHub.
- Certificate Manager: il componente aggiuntivo facoltativo Certificate Manager, noto anche come cert-manager, aggiunge certificati ed emittenti di certificati ai cluster Kubernetes come tipi di risorse. Il Certificate Manager semplifica inoltre il processo di recupero, utilizzo e rinnovo di tali certificati. Per ulteriori informazioni, vedere la documentazione di cert-manager su GitHub.
- Cluster Autoscaler: il componente aggiuntivo Cluster Autoscaler opzionale ridimensiona automaticamente i pool di nodi gestiti di un cluster in base alle richieste del carico di lavoro dell'applicazione utilizzando Kubernetes Cluster Autoscaler. La distribuzione dell'Autoscaler del cluster Kubernetes come componente aggiuntivo cluster anziché come programma standalone semplifica la configurazione e la manutenzione continua e consente di specificare che si desidera che Oracle aggiorni automaticamente l'Autoscaler del cluster Kubernetes. Per ulteriori informazioni, vedere Utilizzo di Cluster Autoscaler come componente aggiuntivo cluster.
- Istio: l'add-on opzionale Istio fornisce resilienza automatica del traffico baseline, raccolta delle metriche dei servizi, trace distribuito, cifratura del traffico, aggiornamenti del protocollo e funzionalità di instradamento avanzato per tutte le comunicazioni service-to-service. Per ulteriori informazioni, vedere Utilizzo di Istio come componente aggiuntivo cluster.
- Controller di entrata nativo: l'add-on del controller di entrata nativo OCI opzionale bilancia il carico e instrada il traffico in entrata ai pod del servizio in esecuzione sui nodi di lavoro in un cluster Kubernetes. Per ulteriori informazioni, vedere Utilizzo del controller di entrata nativo OCI come componente aggiuntivo cluster.
- Server delle metriche Kubernetes: il server delle metriche Kubernetes facoltativo è un aggregatore a livello di cluster di dati sull'uso delle risorse. Il server delle metriche Kubernetes raccoglie le metriche delle risorse dal kubelet in esecuzione su ciascun nodo di lavoro ed le espone nel server API Kubernetes tramite l'API delle metriche Kubernetes. Tenere presente che per utilizzare Kubernetes Metrics Server come componente aggiuntivo del cluster, è inoltre necessario distribuire cert-manager (sia standalone che come componente aggiuntivo del cluster). Per ulteriori informazioni, vedere Utilizzo del server delle metriche Kubernetes come componente aggiuntivo cluster.
- Plugin GPU NVIDIA: il componente aggiuntivo opzionale Plugin GPU NVIDIA è un modo conveniente per gestire il plugin dispositivo NVIDIA per Kubernetes. Il plugin dispositivo NVIDIA per Kubernetes è l'implementazione NVIDIA del framework plugin del dispositivo Kubernetes per esporre il numero di GPU NVIDIA su ogni nodo di lavoro e tenere traccia dello stato di tali GPU. Per ulteriori informazioni sul plugin dispositivo NVIDIA per Kubernetes, consulta la documentazione NVIDIA/k8s-device-plugin su github.
I componenti aggiuntivi cluster facoltativi non vengono distribuiti per impostazione predefinita. Quando si utilizzano cluster avanzati, è possibile scegliere se distribuire e configurare un numero crescente di componenti aggiuntivi cluster opzionali utilizzando Kubernetes Engine.
Aggiornamento delle versioni del componente aggiuntivo
Quando si abilita un componente aggiuntivo cluster, è possibile specificare che si desidera che Oracle aggiorni automaticamente il componente aggiuntivo quando diventano disponibili nuove versioni o che si desidera scegliere una particolare versione del componente aggiuntivo da distribuire.
- Se si specifica che si desidera che il componente aggiuntivo venga aggiornato automaticamente (comportamento predefinito), Oracle distribuisce la versione più recente del componente aggiuntivo che supporta la versione Kubernetes specificata per il cluster. Se in seguito viene rilasciata una nuova versione del componente aggiuntivo, Oracle aggiorna automaticamente il componente aggiuntivo, a condizione che il componente aggiuntivo aggiornato sia compatibile con le versioni di Kubernetes attualmente supportate da Kubernetes Engine.
Se si configura un componente aggiuntivo utilizzando uno o più argomenti di configurazione delle coppie chiave-valore approvati (vedere Argomenti di configurazione dei componenti aggiuntivi del cluster), la configurazione viene mantenuta quando il componente aggiuntivo viene aggiornato automaticamente. Tenere tuttavia presente che eventuali altre personalizzazioni apportate al componente aggiuntivo vengono eliminate quando il componente aggiuntivo viene aggiornato automaticamente.
Tieni presente che è tua responsabilità eseguire l'upgrade dei cluster per eseguire versioni di Kubernetes supportate da Kubernetes Engine. Per sfruttare gli aggiornamenti automatici dei componenti aggiuntivi, ti consigliamo di eseguire l'upgrade dei cluster in modo tempestivo per garantire che i cluster eseguano sempre le versioni supportate di Kubernetes. Gli aggiornamenti per un componente aggiuntivo del cluster potrebbero non essere compatibili con le versioni precedenti di Kubernetes non più supportate da Kubernetes Engine. Se un cluster esegue una versione Kubernetes non supportata che non è compatibile con gli aggiornamenti di un componente aggiuntivo del cluster, il componente aggiuntivo non viene aggiornato automaticamente.
- Se si specifica che si desidera scegliere la versione del componente aggiuntivo da distribuire, Oracle distribuisce la versione del componente aggiuntivo scelta dall'utente. È responsabilità dell'utente verificare che la versione del componente aggiuntivo sia compatibile con la versione Kubernetes in esecuzione nel cluster.
Tenere presente che è responsabilità dell'utente eseguire l'upgrade dei cluster per eseguire versioni di Kubernetes supportate da Kubernetes Engine. Quando Oracle annuncia che Kubernetes Engine deve cessare il supporto per una versione precedente di Kubernetes, è responsabilità dell'utente sia aggiornare qualsiasi cluster in cui è in esecuzione la versione precedente di Kubernetes sia, se necessario, aggiornare il componente aggiuntivo a una versione compatibile con la versione più recente di Kubernetes.
Dopo aver abilitato un componente aggiuntivo cluster e aver specificato che si desidera che Oracle aggiorni automaticamente il componente aggiuntivo, è possibile specificare successivamente che si desidera distribuire una determinata versione del componente aggiuntivo. Analogamente, se è stato specificato che si desidera scegliere la versione del componente aggiuntivo da distribuire, è possibile successivamente specificare che si desidera che Oracle aggiorni automaticamente il componente aggiuntivo.
Si noti che nel caso del componente aggiuntivo del plugin CNI Pod Networking VCN nativo OCI, indipendentemente dal fatto che si scelga di aggiornare automaticamente il componente aggiuntivo da parte di Oracle o si scelga di aggiornarlo personalmente, gli aggiornamenti vengono applicati solo al successivo riavvio dei nodi di lavoro. Vedere Aggiornamento del plugin CNI Networking pod VCN nativo OCI.
Note sui componenti aggiuntivi per cluster
Tenere presente quanto riportato di seguito durante la configurazione dei componenti aggiuntivi cluster.
- Quando si crea un nuovo cluster, non è possibile disabilitare i componenti aggiuntivi cluster essenziali. Tuttavia, quando si modifica un cluster esistente, è possibile scegliere di disabilitare un componente aggiuntivo essenziale. Se disattivi un componente aggiuntivo cluster essenziale, ti assumi la responsabilità di distribuire e configurare un componente aggiuntivo alternativo per fornire funzionalità equivalenti.
- Quando si crea un nuovo cluster, i componenti aggiuntivi cluster essenziali vengono impostati per l'aggiornamento automatico. Tuttavia, puoi scegliere di non aggiornare automaticamente un componente aggiuntivo essenziale. Se esegui questa operazione, ti assumi la responsabilità di aggiornare il componente aggiuntivo.
- Quando si abilita un componente aggiuntivo cluster, è possibile configurarlo specificando una o più coppie chiave-valore da passare come argomenti al componente aggiuntivo cluster. Ad esempio, per il dashboard Kubernetes, è necessario specificare il valore
3
per la chiavenumOfReplicas
. - Quando si disabilita un componente aggiuntivo cluster utilizzando la console, il componente aggiuntivo non viene rimosso dal cluster ma semplicemente non viene utilizzato. Per rimuovere completamente il componente aggiuntivo, utilizzare l'interfaccia CLI o l'API.
- Kubernetes Engine riconcilia regolarmente la configurazione dei componenti aggiuntivi del cluster distribuiti su cluster di base e avanzati con le configurazioni aggiuntive del cluster predefinite corrispondenti. Se si configura un componente aggiuntivo cluster distribuito su un cluster avanzato utilizzando uno o più argomenti di configurazione della coppia chiave/valore approvati (vedere Argomenti di configurazione dei componenti aggiuntivi cluster), Kubernetes Engine unisce le personalizzazioni alla configurazione predefinita. Tuttavia, Kubernetes Engine elimina tutte le altre personalizzazioni apportate alle configurazioni dei componenti aggiuntivi del cluster e ripristina le configurazioni predefinite.
Nel caso dei cluster di base, le personalizzazioni dei componenti aggiuntivi cluster essenziali non sono garantite per la persistenza. Se si effettua una personalizzazione di un componente aggiuntivo cluster essenziale che causa un conflitto durante il processo di riconciliazione, la personalizzazione viene annullata. Per mantenere le personalizzazioni essenziali dei componenti aggiuntivi del cluster, eseguire l'upgrade dei cluster di base a cluster avanzati.
- È possibile distribuire, aggiornare e gestire componenti aggiuntivi cluster su un cluster in cui è in esecuzione una versione precedente di Kubernetes non più supportata da Kubernetes Engine. Tuttavia, tenere presente che Oracle non fornisce supporto per i cluster che eseguono versioni di Kubernetes oltre quelle elencate nelle versioni Kubernetes attualmente supportate. Se richiedi il supporto per un cluster in cui è in esecuzione una versione non supportata di Kubernetes, ti verrà chiesto di eseguire l'upgrade del cluster a una versione supportata di Kubernetes.
Se si distribuisce un componente aggiuntivo su un cluster in cui è in esecuzione una versione Kubernetes non supportata e si specifica che il componente aggiuntivo deve essere aggiornato automaticamente (comportamento predefinito), Oracle distribuisce inizialmente la versione più recente del componente aggiuntivo compatibile con la versione Kubernetes non supportata. Nell'improbabile caso in cui venga rilasciata successivamente una nuova versione del componente aggiuntivo compatibile con la versione Kubernetes non supportata, Oracle aggiorna automaticamente il componente aggiuntivo.
Tenere presente che, nel caso di cluster che eseguono versioni Kubernetes non supportate, Kubernetes Engine non riconcilia la configurazione dei componenti aggiuntivi del cluster unendo le personalizzazioni alle configurazioni predefinite. Se Kubernetes Engine rileva le differenze tra la configurazione corrente di un componente aggiuntivo del cluster e la relativa configurazione predefinita, il componente aggiuntivo del cluster viene visualizzato con lo stato Richiede attenzione. In questo caso, rivedere il messaggio della richiesta di lavoro associata:
- Se il messaggio associato è
Addon out of sync
, considerare la possibilità di eseguire l'upgrade della versione Kubernetes non supportata a una versione supportata. - Se il messaggio associato indica un errore di configurazione, rimuovere le modifiche ai valori degli argomenti di configurazione della coppia chiave/valore approvati, in modo che gli argomenti tornino ai valori predefiniti.
- Se il messaggio associato è