DevOps heeft de manier waarop software-engineers en -ontwikkelaars applicaties ontwikkelen en implementeren sterk veranderd. Een van de technologieën in het hart van deze revolutie is Kubernetes.

Laten we eens kijken hoe u een lokale instantie van Kubernetes op Ubuntu kunt installeren met behulp van MicroK8s (MicroKates). Met deze setup kunt u eenvoudig containertoepassingen hosten op een veilige, betrouwbare en zeer schaalbare manier.

Waarom MicroK8's gebruiken?

Kubernetes is een open-sourceplatform dat helpt bij het stroomlijnen van DevOps-activiteiten door de implementatie, schaling en het beheer van gecontaineriseerde applicaties te automatiseren. Kubernetes is in de volksmond ook bekend als K8s, de naam die is afgeleid van het tellen van de acht letters tussen k en s in de naam Kubernetes. Zie MicroK8s als een Micro Kubernetes-instantie.

De meeste publieke en private cloudomgevingen van productiekwaliteit waarop Ubuntu draait, gebruiken Charmed Kubernetes voor het beheren van gecontaineriseerde apps. De uitdaging met Charmed Kubernetes is echter dat het veel resources nodig heeft en een goed kennisniveau vereist om goed te configureren.

instagram viewer

Dit is waar MicroK8s binnenkomt. MicroK8s is een kleine en lichtgewicht upstream Kubernetes die native op de pc van een ontwikkelaar, een IoT-apparaat of op edge-apparaten kan draaien zonder dat er een virtuele machine nodig is. MicroK8s is platformonafhankelijk en kan op zowel Intel- als ARM-architecturen draaien.

MicroK8s geeft je een van de beste manieren om vertrouwd te raken met Kubernetes, met minimale wrijving. Het is een gecertificeerde Kubernetes upstream door de Cloud Native Computing Foundation (CNCF), die ervoor zorgt dat: implementaties van Kubernetes zijn conform en interoperabel volgens de gespecificeerde industrie normen.

Stap 1: MicroK8s installeren op Ubuntu

U kunt MicroK8s eenvoudig op Ubuntu installeren met: het snap-commando.

sudo snap microk8s installeren --classic

Als alternatief kunt u MicroK8s installeren vanuit de GUI met behulp van het Ubuntu Software Center. Zoek eenvoudig naar microk8s en klik vervolgens op de Installeren knop.

Stap 2: Uw firewall configureren voor MicroK8s

Om naadloze communicatie tussen pods en met internet te garanderen, moet u inkomende en uitgaande communicatie inschakelen op de containernetwerkinterface van uw firewall.

Een pod is de kleinste inzetbare rekeneenheid in Kubernetes; het kan een enkele of een groep containers zijn met gedeelde opslag- en netwerkbronnen, enz.

sudo ufw laat toe op cni0 && sudo ufw laat toe op cni0

Voer vervolgens de volgende opdracht uit:

sudo ufw standaard gerouteerd toestaan

Leer meerDe Ubuntu-firewall configureren met UFW

Stap 3: Uw gebruiker toevoegen aan de MicroK8s-groep

Op dit moment moet je de sudo commando om de meeste MicroK8s-opdrachten uit te voeren. Hoewel dit een goede beveiligingsmaatregel is op een productieserver, is het misschien niet nodig op een ontwikkelmachine.

Voeg uw gebruiker toe aan de MicroK8s-groep om te voorkomen dat u sudo gebruikt.

sudo usermod -aG microk8s $USER

Maak ook uw huidige gebruiker de eigenaar van de ~/.kube map.

sudo chown -f -R $USER ~/.kube

Om de wijzigingen door te voeren, laadt u de gebruikersgroepen opnieuw door de volgende opdracht uit te voeren:

newgrp microk8s

Leer meer: Hoe gebruikersgroepen op Linux te beheren

Stap 4: Belangrijke add-ons inschakelen

Standaard bevat MicroK8s het absolute minimum om een ​​minimale footprint op edge- en IoT-apparaten te realiseren. U kunt echter een paar belangrijke add-ons installeren om MicroK8s-services te beheren. Schakel de DNS-, dashboard- en opslagadd-ons in met de microk8s opdracht.

microk8s schakelt dns-dashboardopslag in

De DNS-add-on is mogelijk vereist door andere services, dus het wordt aanbevolen om deze altijd in te schakelen.

De dashboard-add-on geeft u een grafisch overzicht van de services in MicroK8s; u kunt het ook gebruiken voor het beheren van services.

U kunt een lijst met beschikbare MicroK8s-add-ons bekijken door de opdracht uit te voeren:

microk8s-status

Stap 5: Het MicroK8s-dashboard bekijken

Nu je de dashboard-add-on hebt ingeschakeld, heb je eenvoudig toegang tot het MicroK8s-dashboard vanuit je webbrowser.

Eerst hebt u het IP-adres van de dashboard-pod nodig. Je kunt het krijgen door het commando uit te voeren:

microk8s kubectl get all --all-namespaces

Uit de uitvoer van het bovenstaande commando, zul je merken dat de kubernetes-dashboard service draait op het IP-adres 10.152.183.35 en luistert op de TCP-poort 443. Houd er rekening mee dat dit IP-adres kan verschillen van het IP-adres dat door uw dashboardservice wordt gebruikt, omdat het willekeurig wordt gegenereerd.

Ga in uw browser naar het vermelde IP-adres. In dit geval zal het zijn https://10.152.183.35:443. Zorg ervoor dat u naar de juiste URL verwijst.

Om veiligheidsredenen vraagt ​​het Kubernetes-dashboard u om verificatiegegevens om u aan te melden. U kunt toegang krijgen tot het standaard dashboardtoken door de volgende opdracht uit te voeren. Kopieer dan de kubernetes.io/service-account-token gepresenteerd en plak het in de tokeninvoer.

token=$(microk8s kubectl -n kube-system get secret | grep default-token | cut -d " " -f1)
microk8s kubectl -n kube-systeem beschrijft geheime $token

Het dashboard geeft u een overzicht van de MicroK8s-workloads, services, configuratie, clusters, enz.

Stap 6: Een service maken met MicroK8s

Laten we, om MicroK8s in actie te zien, een microbotservice-implementatie maken die twee pods bevat. Maak de pod met behulp van de kubectl opdracht:

microk8s kubectl maak deployment microbot --image=dontrebootme/microbot: v1

Schaal de microbot-pod met behulp van de onderstaande opdracht.

microk8s kubectl schaal implementatie microbot --replicas=2

Maak een service om de implementatie van de microbot zichtbaar te maken.

microk8s kubectl onthult implementatie microbot --type=NodePort --port=80 --name=microbot-service

We hebben nu twee microbot-pods ingezet onder de naam service/microbot-service. U kunt de details van de microbotservice en andere services bekijken door de volgende opdracht uit te voeren:

microk8s kubectl get all --all-namespaces

U zult merken dat de microbot-service op een NodePort draait, daarom kunt u deze openen via de browser op uw pc. In dit geval wordt de service uitgevoerd op de willekeurig gegenereerde poort 30353.

Ga in uw browser naar de URL http://localhost: 30353, waar 30353 is het poortnummer dat in de bovenstaande uitvoer wordt vermeld. Zorg ervoor dat u het juiste poortnummer gebruikt.

Kubernetes vs. Docker: welke moet je kiezen?

In deze handleiding is gekeken hoe u een minimale footprint van Kubernetes lokaal op uw pc of edge-apparaat kunt installeren. Kubernetes maakt deel uit van de workflow van veel ontwikkelaars en wordt veel gebruikt voor het implementeren van grootschalige gecontaineriseerde applicaties in productie.

Kubernetes wordt gebruikt voor het beheren of orkestreren van een groep containers, b.v. docker containers, met gemak. Standalone Docker wordt daarentegen vooral gebruikt voor het beheren van enkele containers. De keuze om Docker of Kubernetes te gebruiken, hangt af van de competenties van uw team en de grootte van de software die in productie moet worden genomen.

Welk containersysteem moet u gebruiken: Kubernetes of Docker?

Het kiezen van een containersysteem voor is een eenvoudige keuze tussen twee systemen. Kies je voor Kubernetes of Docker?

Lees volgende

DeelTweetenE-mail
Gerelateerde onderwerpen
  • Linux
  • Ubuntu
  • App-ontwikkeling
Over de auteur
Mwiza Kumwenda (43 artikelen gepubliceerd)

Mwiza ontwikkelt software van beroep en schrijft uitgebreid over Linux en front-end programmeren. Enkele van zijn interesses zijn geschiedenis, economie, politiek en ondernemingsarchitectuur.

Meer van Mwiza Kumwenda

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren