Cos'è Minikube?
Minikube è stato sviluppato per consentire agli utenti di eseguire Kubernetes localmente. Quando installi ed esegui Minikube sul tuo computer, esegue un cluster Kubernetes a nodo singolo all'interno di una macchina virtuale.
Perché Minikube?
Minikube è pensato sia per i nuovi utenti che per gli sviluppatori regolari. L'installazione di Kubernetes richiede tempo e risorse. Con Minikube, ottieni una versione funzionante più piccola di un cluster Kubernetes a nodo singolo sul tuo personal computer.
Se sei uno studente, ti dà la possibilità di giocare e comprendere i concetti di base. Una volta che diventi un praticante regolare, puoi ancora utilizzare Minikube per testare le tue idee a livello locale prima di distribuirlo nel tuo data center o server. Può funzionare come ambiente di test.
Cosa puoi fare con Minikube?
Minikube è ottimo per imparare Kubernetes e testare i tuoi concetti e idee durante lo sviluppo.
Prerequisito
Anche se non è necessario per questo tutorial, una conoscenza di base di contenitori come Docker è utile per comprendere Minikube/Kubernetes.
Definizioni di base dei concetti di Minikube/Kubernetes
Per utilizzare Minikube, devi comprendere le idee di base discusse di seguito. Le definizioni non stanno cercando di spiegare la tecnologia in profondità. Ti dà solo una comprensione dei concetti di base di Kubernetes. In questa discussione, Kubernetes e Minikube significano la stessa cosa
- Contenitore - In Minikube, i contenitori sono utilizzati come elementi costitutivi della creazione di applicazioni.
- pod - Pod è una raccolta di uno o più contenitori che condividono risorse di archiviazione e di rete. I pod contengono la definizione di come devono essere eseguiti i contenitori in Minikube. Minikube utilizza queste definizioni per mantenere le risorse necessarie. Ad esempio, puoi definire che hai bisogno di due pod. Durante l'esecuzione, se un pod si disattiva, Minikube attiverà automaticamente un nuovo pod.
- Servizio - Poiché i pod sono sostituibili, Minikube ha bisogno di un livello di astrazione per mantenere l'interazione tra i diversi pod senza soluzione di continuità. Ad esempio, se un pod muore e viene creato un nuovo pod, gli utenti dell'applicazione non dovrebbero impantanarsi nei dettagli degli indirizzi di rete e dei problemi correlati. I servizi sono involucri attorno ai pod per creare livelli di astrazione.
- Maestro - Il master coordina il cluster. È come il cervello dell'operazione.
- Nodo - I lavoratori che gestiscono i pod.
- kubectl - È l'interfaccia a riga di comando per l'esecuzione di comandi sul cluster Kubernetes.
Per capire meglio come questi concetti si integrano in Kubernetes, guarda questo breve video:
Come installare Minikube
Le tue esigenze hardware hanno la virtualizzazione abilitata nel BIOS del tuo computer. La buona notizia è che la maggior parte delle macchine moderne l'ha già attivata.
Ecco i passaggi per installare Minkube sul tuo computer:
- Installa VirtualBox
- Installa kubectl
- Installa Minikube
Semplice esempio di distribuzione su Minikube
Una volta installato tutto, puoi avviare Minikube con il seguente comando:
$ minikube inizioÈ disponibile una versione più recente di minikube (v0.28.0). Scaricalo qui:
https://github.com/kubernetes/minikube/releases/tag/v0.28.0
Per disabilitare questa notifica, esegui quanto segue:
set di configurazione minikube WantUpdateNotification false
Avvio di Kubernetes v1 locale.9.0 gruppo..
Avvio della macchina virtuale..
Recupero dell'indirizzo IP della VM..
Spostamento dei file nel cluster..
Impostazione dei certificati..
Connessione al cluster..
Configurazione di kubeconfig..
Avvio dei componenti del cluster..
Kubectl è ora configurato per utilizzare il cluster.
Caricamento di immagini memorizzate nella cache dal file di configurazione.
Alla tua prima esecuzione, ci vorrà del tempo per avviare Minikube poiché costruirà la VM per te. Puoi controllare VirtualBox per vedere la macchina virtuale che Minikube gira:
Più tardi, quando riavvierai Minikube, sarà più veloce.
Puoi utilizzare il seguente comando per controllare lo stato di Minikube:
$ stato minikubeminikube: correre
cluster: in esecuzione
kubectl: configurato correttamente: punta a minikube-vm a 192.168.99.100
Una grande caratteristica di Minikube è la dashboard. Dalla dashboard puoi vedere tutto ciò che sta succedendo in Minikube. Puoi anche controllare le risorse nel tuo cluster dalla dashboard. Utilizzare il seguente comando per avviare la dashboard nel browser predefinito:
$ minikube dashboardApertura della dashboard di Kubernetes nel browser predefinito..
Ecco come dovrebbe apparire la dashboard:
Distribuiamo un'applicazione NGINX su Minikube. Ecco i passaggi:
1. Crea un pod:
$ kubectl esegui mynginxapp --image=nginx:latest --port=80distribuzione "mynginxapp" creata
2. Crea un servizio:
$ kubectl esporre distribuzione mynginxapp --type=NodePortservizio "mynginxapp" esposto
3. Controlla il tuo pod e lo stato del servizio:
$ kubectl ottieni podNOME PRONTO STATO RIPARTI ETÀ
mynginxapp-6d64b788cc-j5crt 1/1 Corsa 0 4 m
$ kubectl ottieni servizi
NOME TIPO IP-CLUSTER IP-ESTERNO PORTE ETÀ
kubernetes ClusterIP 10.96.0.1
mynginxapp NodePort 10.97.47.26
Puoi vedere che il pod e il servizio sono in esecuzione per mynginxapp.
4. Scopriamo a quale indirizzo e porta Minikube esegue mynginxapp:
$ Servizio Minikube mynginxapp --URLhttp://192.168.99.100:30964
Se vai all'URL restituito (in questo caso è http://192.168.99.100:30964) sul tuo browser, dovresti vedere il servizio NGINX in esecuzione.
5. Controlla di nuovo la dashboard:
$ Minikube dashboardApertura della dashboard di Kubernetes nel browser predefinito..
6. Elimina il servizio e il pod e interrompi Minikube
$ kubectl elimina servizio mynginxappservizio "mynginxapp" eliminato
$ kubectl elimina distribuzione mynginxapp
distribuzione "mynginxapp" eliminata
$ Minikube stop
Arresto del cluster Kubernetes locale..
Macchina ferma.
Riassunto dell'esempio
In questo esempio, hai prima distribuito un pod NGINX chiamato mynginxapp. L'immagine NGINX è stata scaricata da Docker Hub. Quindi hai creato un servizio per supportare il pod. Sei riuscito a vedere il servizio dal browser. Alla fine, hai eliminato il pod e il servizio e poi hai fermato Minikube.
Esempio Minikube più dettagliato Detail
Dai un'occhiata al nostro Kubernetes: come iniziare articolo che ha un esempio Minikube più dettagliato.
Quiz - Metti alla prova le tue conoscenze
- Puoi spiegare il concetto di container, pod e servizi??
- In che modo container, pod e servizi interagiscono tra loro??
- Cos'è kubectl?
- Quanti cluster Kubernetes puoi avviare su Minikube?
Ulteriori studi
- https://kubernetes.io/docs/tutorials/hello-Minikube
- https://kubernetes.io/docs/home
- https://www.oceano digitale.com/community/tutorial/un-introduzione-a-kubernetes