Come coda di coda in kubectl

Come coda di coda in kubectl
Per l'orchestrazione del contenitore, Kubernetes è ora diventato lo standard del settore. Fornisce l'astrazione necessaria per l'amministrazione corretta dei sistemi contenitori su larga scala con configurazioni chiare, un metodo di distribuzione diretto e capacità di scalabilità. Come qualsiasi altro sistema, i registri consentono agli sviluppatori di ottenere visibilità nei contenitori e sui cluster di Kubernetes su cui operano e la loro importanza è chiara in molti fallimenti di Kubernetes. Tuttavia, Kubernetes presenta un insieme distinto di problemi di registrazione. I registri delle applicazioni possono aiutarti a capire cosa sta succedendo all'interno della tua app. I registri sono molto utili per la risoluzione dei problemi e il monitoraggio delle attività del cluster. Una funzione di registrazione è presente in quasi tutti i programmi attuali. Anche i motori del contenitore sono costruiti per gestire la registrazione. La pubblicazione di output standard e flussi di errori standard è l'opzione di registrazione più semplice e più spesso utilizzata per le applicazioni containerizzate. Questi registri mostrano cosa sta succedendo e possono essere utili per il debug di problemi di nodo master. Sfortunatamente, questi registri non possono essere visualizzati tramite il comando kubectl; Invece, devono essere visualizzati direttamente dal computer. Potrebbe essere necessario SSH nel nodo direttamente, in base a dove si ospita il computer. Questa comprensione consente di osservare le relazioni tra queste risorse e le conseguenze di un'azione su un'altra. In questa guida, stiamo controllando modi diversi per i registri di coda in kubectl. Per eseguire l'intero processo, stiamo utilizzando Ubuntu 20.04 LTS. Abbiamo installato e avviato il cluster minikube. Inoltre, Kubectl è già installato e configurato sul nostro sistema.

Registrazione di base in kubernetes con baccelli

Inizialmente, dobbiamo creare un file di configurazione per i pod con l'aiuto del comando "touch". L'abbiamo chiamato "registri.yaml ".

All'esecuzione, il file può essere visto nella directory home del sistema.

I registri di un pod operativo sono di gran lunga la cosa più normale che vorresti guardare. Il comando Kubectl contiene un'operazione di registro che fornisce informazioni sui tuoi baccelli operativi e offre varie scelte per ottenere rapidamente ciò di cui hai bisogno. Nelle seguenti illustrazioni, userò un contenitore di base che stampa un timestamp ogni secondo. L'abbiamo chiamato come "esempio" (visualizzato nella riga n. 7)

Usa il seguente comando per avviare questo pod:

$ kubectl Crea log -f.Yaml

L'output descrive che è stato creato in modo efficace. Diamo un'occhiata ai registri dopo che abbiamo distribuito questo pod. Possiamo farlo usando il comando Esempio di registro Kubectl, che dovrebbe produrre il seguente output. Non dovrai accedere ai nodi nel cluster se si utilizza kubectl per recuperare i registri. Kubectl può visualizzare solo i registri di un singolo baccello alla volta.

Ora esegui il comando seguente come:

$ kubectl Esempio di registro

Registrazione di base in kubernetes con distribuzioni

Inizialmente, dobbiamo creare un file di configurazione per le distribuzioni con l'aiuto del comando "touch". L'abbiamo chiamato "Deploymentlog.yaml ".

All'esecuzione, il file può essere visto nella directory home del sistema. Di seguito è riportato il descrittore di distribuzione:

Usa il seguente comando in Ubuntu 20.04 Terminal per avviare questa distribuzione:

$ kubectl crea -f deploymentlog.Yaml

L'output descrive che è stato creato in modo efficace. Ogni pod ora visualizzerà il suo nome e il timestamp. Utilizza la distribuzione/esempio del registro Kubectl per tenere traccia di tutti quei diversi baccelli e dei loro registri di generazione. Sfortunatamente, questo sceglierà solo uno dei baccelli. Vi è, tuttavia, una tecnica per esaminarli tutti. Guarda il comando di cui sopra ed eseguilo in Ubuntu 20.04 Terminal:

$ kubectl logs -f -l app = esempio

Il flag "-l" consente di filtrare i risultati per etichetta. Potremmo vedere alcuni dei nostri pod di distribuzione perché li abbiamo etichettati con l'etichetta di esempio. Il flag "-f" visualizza quindi l'output da quei baccelli costante. Dobbiamo mantenere il numero di registri che usciranno al minimo ora che li abbiamo ricevuti. Se scegli un pod per impostazione predefinita, visualizzerà tutto. Se si utilizza un selettore per selezionare più pod, produrrà solo 10 righe per pod, come mostrato nel comando sotto citato presentato nell'immagine allegata.

Se si utilizza una selezione e desideri più registri per pod rispetto agli ultimi dieci, basta sollevare il numero "-tail" alla quantità appropriata di registri. Se si supera solo, i registri del pod sono raggruppati. Non riunisce i risultati. Ora esegui il comando di seguito nel terminale.

$ kubectl logs -c esempio

Il flag "-c" specifica da quale contenitore i registri dovrebbero essere ottenuti. Ora eseguire il comando visualizzato aggiunto nella shell.

$ kubectl logs -Esempio di timestamp

I messaggi di registro sono spesso alla fine e il timestamp è all'inizio, come puoi vedere dall'esempio sopra. Questo può aiutarti a capire da dove proveniva il messaggio di registro e quando è successo le cose, in particolare se il testo del registro non ha un timestamp integrato. Il flag "-timestamp" sul comando kubectl prefissa ogni record con un timestamp.

Conclusione

Nel complesso, i registri di coda di Kubernetes includono molte informazioni riguardanti il ​​cluster e la salute delle app. "Kubectl Logs" è utile per iniziare con Kubernetes, ma dimostra rapidamente i suoi limiti. Spero che questa guida ti abbia aiutato a familiarizzare con le istruzioni dei registri Kubectl e ti aiuterà a rivedere i registri nel cluster Kubernetes.