Minikube je nástroj, který vám umožňuje spouštět Kubernetes na vašem místním počítačovém systému. Minikube vytvoří jednouzlový cluster Kubernetes uvnitř virtuálního počítače v závislosti na ovladači vm, který používáte. Minikube je dobré pro učení se o Kubernetes, včetně testování, vývoje nebo školení.
V tomto tutoriálu vám krok za krokem ukážeme, jak vytvořit jednouzlový cluster Kubernetes lokálně pomocí Minikube na Manjaro/ArchLinux. Tato příručka bude implementovat cluster Kubernetes lokálně s ovladačem KVM2 a pokryje příklad nasazení služby Nginx.
Co uděláme:
- Instalujte závislosti balíčků
- Nainstalujte Docker-machine a ovladač KVM2
- Nainstalujte Minikube a Kubectl
- Inicializace Kubernetes pomocí Minikube
- Testovací nasazení
- Přístup k Kubernetes Dashboard
Krok 1 – Instalace závislostí balíčků
Prvním krokem, který uděláme, je nainstalovat všechny závislosti balíčků včetně qemu KVM a dnsmasq.
Nainstalujte qemu a dnsmasq pomocí příkazu pacman níže.
sudo pacman -Sy libvirt qemu ebtables dnsmasq
Po dokončení instalace přidejte uživatele do skupiny 'libvirt' a znovu načtěte.
sudo usermod -a -G libvirt $(whoami)
newgrp libvirt
Nyní spusťte služby libvirtd a virtlogd a přidejte tyto služby do doby zavádění.
sudo systemctl start libvirtd.service
sudo systemctl enable libvirtd.service
sudo systemctl start virtlogd.service
sudo systemctl enable virtlogd.service
Do systému byly nainstalovány balíčky qemu KVM a závislosti.
Krok 2 – Instalace ovladače Docker-Machine a KVM2
Minikube používá docker-machine ke správě virtuálního počítače Kubernetes a musíme pro něj nainstalovat 'docker-machine-driver-kvm2'.
Nainstalujte docker pomocí příkazu pacman níže.
sudo pacman -Sy docker-machine
Nyní nainstalujte 'docker-machine-driver-kvm2' z úložiště AUR pomocí příkazu yaourt.
yaourt -Sy docker-machine-driver-kvm2
Počkejte na instalaci.
Krok 3 – Instalace Minikube a Kubectl
Pro tuto příručku nainstalujeme Minikube a kubectl z úložiště AUR.
Spusťte níže uvedený příkaz yaourt.
yaourt -Sy minikube-bin kubectl-bin
Po dokončení instalace zkontrolujte verzi Minikube a příkaz kubectl.
minikube version
whereis kubectl
kubectl -h
Krok 4 – Inicializace Kubernetes pomocí Minikube
Inicializujte jednouzlový cluster Kubernetes pomocí příkazu Minikube níže.
minikube start --vm-driver kvm2
Příkaz stáhne soubor ISO Minikube a vytvoří virtuální stroj KVM v systému.
Po dokončení získáte výsledek, jak je uvedeno níže.
Kubernetes byl nainstalován na místním počítači pomocí Minikube, zkontrolujte spuštěním všech příkazů níže.
minikube status
kubectl cluster-info
kubectl get nodes
Nyní uvidíte výsledek níže.
Cluster Kubernetes je spuštěn a spuštěn na místním počítači s IP adresou '192.168.39.78', používá Kubernetes v1.10 a jeden uzel s názvem minikube jako master clusteru.
Krok 5 – Testování implementací
V tomto kroku otestujeme kubernetes vytvořením nového nasazení pro webový server Nginx.
Vytvořte nový adresář s názvem 'project/nginx/' a přejděte do něj.
mkdir -p projects/nginx/
cd projects/nginx/
Nyní vytvořte nový soubor yaml pro naši konfiguraci nasazení.
vim nginx-deployment-service.yaml
A vložte konfigurace níže.
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: nginx-service
labels:
run: nginx-service
spec:
type: NodePort
ports:
- port: 80
protocol: TCP
selector:
app: nginx
Uložte a ukončete.
Nyní vytvořte rozmístění spuštěním příkazu kubectl níže.
kubectl create -f nginx-deployment.yaml
Po dokončení zkontrolujte nasazení Kubernetes.
kubectl get deployments
kubectl describe deployments nginx-deployment
A dostanete na seznam 'nginx-deployment'.
Nyní zkontrolujte službu Kubernetes.
kubectl get services
kubectl describe services nginx-service
A uvidíte, že služba NodePort 'nginx-service' běží na portu '32274'.
Zkontrolujte IP clusteru Kubernetes a přistupte k němu pomocí příkazu curl.
minikube ip
curl -I http://192.168.39.49:32274/
A dostanete odpověď z webového serveru Nginx.
Níže je výsledek, když přistupujeme z webového prohlížeče.
http://192.168.39.49:32274/
Krok 6 – Přístup k řídicímu panelu Kubernetes
Minikube poskytuje příkaz pro přístup k řídicímu panelu Kubernetes běžícímu v clusteru Minikube.
Spusťte níže uvedený příkaz.
minikube dashboard
Příkaz otevře řídicí panel Kubernetes pomocí výchozího webového prohlížeče v systému.
Níže je řídicí panel Kubernetes.
Instalace Kubenrnetes na místním počítači Manjaro/Archlinux pomocí Minikube byla úspěšně dokončena.