Categorie di servizi Kubernetes
I servizi Kubernetes sono divisi in quattro categorie di base:
Clusterip
In Kubernetes, il servizio clusterip è effettivamente la forma di servizio standard. Fornisce un servizio all'interno del cluster Kubernetes che altre app di Kubernetes possono gestire senza fornire accesso dall'esterno. È un indirizzo IP che il cluster di Kubernetes e tutti i suoi servizi possono utilizzare internamente. A differenza dell'indirizzo IP POD, l'indirizzo IP utilizzato nel clusterip non è raggiungibile oltre il cluster.
Nodeport
Ogni nodo nel cluster ha una porta aperta chiamata Nodeport. Anche se la tua app viene eseguita su un nodo diverso, Kubernetes instrada in modo diretto il traffico da NodePort al servizio. Ogni cluster Kubernetes accetta NodePort, ma devi modificare i tuoi firewall se si utilizza un provider di servizi cloud come Google Cloud.
Loadbalancer
Un carico è un modo popolare per introdurre un servizio Kubernetes nel mondo esterno attraverso Internet. LoadBalancer può essere utilizzato in modo simile a clusterip e nodeport.Il cluster si avvicinerà al provider cloud e creerà un bilanciamento del carico se si seleziona LoadBalancer come categoria di servizio. Il traffico verrà reindirizzato ai pod backend quando arriva a questo bilanciamento del carico. I dettagli di questo metodo sono determinati da come ogni fornitore di bilanciamento del carico implementa la sua tecnologia.
Nome esterno
Poiché i servizi di nome esterno non dispongono di selettori o porte fisse o endpoint, possono reindirizzare il traffico a un servizio esterno. Questo modulo associa il servizio agli elementi del campo di nome esterno. Completa questo restituendo il valore record di un CNAME.
Crea una distribuzione insieme al servizio
Una distribuzione di Kubernetes monitora la salute del pod e, se necessario, reimpostare il contenitore del pod. Le distribuzioni sono il metodo per gestire la formazione e il ridimensionamento del pod. Quindi, per gestire un pod, creeremo una distribuzione. A tale scopo, apriamo il terminale del tuo Ubuntu 20.04 LTS Sistema operativo. È possibile utilizzare l'area dell'applicazione o la chiave di scorciatoia per questo scopo. Assicurati di avere minikube installato nel tuo sistema.
Esegui il comando di seguito per avviare Minikube.
$ Minikube iniziNell'output di questo comando, vedrai la versione di Minikube. Dopo questo comando, devi aprire la dashboard Minikube con l'aiuto di questo comando sotto l'elenco.
$ Minikube DashboardOra siamo tutti pronti a creare una distribuzione utilizzando il comando Crea. Devi scrivere il comando di seguito come mostrato nel terminale.
Puoi visualizzare che il nodo Hello è stato creato. Se si desidera visualizzare le distribuzioni, puoi facilmente farlo eseguendo il comando citato.
$ kubectl ottieni distribuzioniNell'output, è possibile visualizzare le informazioni di base relative a una distribuzione già creata. È possibile visualizzare il pod mediante l'esecuzione di questo comando:
$ kubectl ottieni baccelliNell'output di seguito, è possibile visualizzare facilmente tutte le informazioni pertinenti relative ai pod elencati. Se si desidera elencare gli eventi del cluster, è possibile utilizzare il seguente comando di base per questo scopo.
$ kubectl Ottieni eventiOra, puoi visualizzare la configurazione KubeCtl utilizzando il comando di seguito:
$ kubectl Config ViewAll'interno del cluster di Kubernetes, il pod sarebbe disponibile solo dal suo indirizzo IP interno. Sarebbe meglio esporre il contenitore Hello-Node come servizio Kubernetes per renderlo disponibile verso l'esterno della rete virtuale di Kubernetes. Ora esporremo il pod usando il comando sotto l'elenco. Inoltre, puoi vedere quel -type = loadbalancer che esporrà il servizio correlato al di fuori del cluster.
Ora è il momento di visualizzare il servizio creato. Quindi, a questo scopo, puoi utilizzare il comando di seguito. L'uscita deve essere simile a quella visualizzata nell'immagine allegata.
$ kubectl Ottieni serviziPer visualizzare le informazioni sul servizio Hello Node, è possibile utilizzare il comando visualizzato seguente insieme alla parola chiave Minikube.
$ Minikube Service Hello-NodePuoi vedere l'URL del nodo viene visualizzato anche nello screenshot allegato insieme alla porta target. Fortunatamente, il servizio sarà aperto nel browser del sistema operativo. Puoi verificare che le informazioni sul servizio siano visualizzate nel browser del sistema.
Conclusione
In questa guida, abbiamo elaborato il concetto di servizi in Kubernetes insieme alle sue diverse categorie. Inoltre, abbiamo spiegato un esempio di base per la creazione di distribuzione insieme al servizio pertinente. Leggendo e implementando questa guida sopra, spero che tu possa facilmente comprendere il concetto di Kubernetes Services e la sua creazione.