Le tutoriel Minikube a rendu facile

Le tutoriel Minikube a rendu facile
Les développeurs et les administrateurs système intéressés à apprendre Kubernetes ont entendu parler de Minikube. Kubernetes est un outil d'orchestration complexe complexe qui peut être écrasant pour les débutants. Minikube a été développé pour aider les gens à apprendre Kubernetes et à essayer leurs idées localement. Dans ce tutoriel, nous conserverons les informations de base, afin que vous puissiez comprendre et exécuter votre premier cluster Kubernetes sur Minikube.

Qu'est-ce que Minikube?

Minikube a été développé pour permettre aux utilisateurs d'exécuter Kubernetes localement. Lorsque vous installez et exécutez Minikube sur votre ordinateur, il exécute un cluster Kubernetes à un nœud dans une machine virtuelle.

Pourquoi Minikube?

Minikube est destiné aux nouveaux utilisateurs et aux développeurs réguliers. L'installation de Kubernetes est longue et à forte intensité de ressources. Avec Minikube, vous obtenez une version fonctionnelle plus petite d'un cluster Kubernetes à un nœud sur votre ordinateur personnel.

Si vous êtes un apprenant, cela vous donne la possibilité de jouer et de comprendre les concepts de base. Une fois que vous devenez un praticien régulier, vous pouvez toujours utiliser Minikube pour tester vos idées localement avant de la déployer dans votre centre de données ou votre serveur. Cela peut fonctionner comme votre environnement de test.

Que pouvez-vous faire avec Minikube?

Minikube est idéal pour apprendre Kubernetes et tester vos concepts et idées pendant le développement.

Prérequis

Même s'il n'est pas nécessaire pour ce tutoriel, une connaissance de base de conteneurs comme Docker est utile pour comprendre Minikube / Kubernetes.

Définitions de base des concepts Minikube / Kubernetes

Pour utiliser Minikube, vous devez comprendre les idées de base discutées ci-dessous. Les définitions n'essaient pas d'expliquer la technologie en profondeur. Cela vous donne seulement une compréhension des concepts de base de Kubernetes. Dans cette discussion, Kubernetes et Minikube signifient la même chose

  • Récipient - Dans Minikube, les conteneurs sont utilisés comme éléments constitutifs de la création d'applications.
  • Cosse - POD est une collection d'un ou plusieurs conteneurs qui partagent des ressources de stockage et de réseau. Les gousses contiennent la définition de la façon dont les conteneurs doivent être exécutés en mini-basse. Minikube utilise ces définitions pour maintenir les ressources nécessaires. Par exemple, vous pouvez définir que vous avez besoin de deux gousses. Pendant l'exécution, si un pod tombe en panne, Minikube tirera automatiquement un nouveau pod.
  • Service - Parce que les gousses sont remplaçables, Minikube a besoin d'une couche d'abstraction pour maintenir l'interaction entre les différentes pods sans couture. Par exemple, si un pod meurt et qu'un nouveau pod est créé, les utilisateurs de l'application ne devraient pas s'enliser dans les détails des adresses réseau et des problèmes connexes. Les services sont des emballages autour des gousses pour créer des niveaux d'abstraction.
  • Maître - Master coordonne le cluster. C'est comme le cerveau de l'opération.
  • Nœud - Les travailleurs qui dirigent les gousses.
  • kubectl - C'est l'interface de ligne de commande pour l'exécution des commandes sur le cluster Kubernetes.

Pour mieux comprendre comment ces concepts s'adaptent à Kubernetes, regardez cette courte vidéo:

Comment installer Minikube

Vos besoins matériels ont une virtualisation activée dans le BIOS de votre ordinateur. La bonne nouvelle est que la machine la plus moderne a déjà activé.

Voici les étapes pour installer Minkube sur votre machine:

  • Installer VirtualBox
  • Installer Kubectl
  • Installer Minikube

Exemple simple de déploiement sur Minikube

Une fois que vous avez tout installé, vous pouvez démarrer Minikube avec la commande suivante:

$ minikube start
Il existe une nouvelle version de Minikube disponible (V0.28.0). Télécharger les ici:
https: // github.com / kubernetes / minikube / releases / tag / v0.28.0
Pour désactiver cette notification, exécutez ce qui suit:
minikube config set wantupdatenotification false
Démarrage local Kubernetes v1.9.0 Cluster…
Démarrer VM…
Obtenir une adresse IP VM…
Déplacer des fichiers dans le cluster…
Configuration des certificats…
Connexion au cluster…
Configuration de KubEconfig…
Démarrage des composants de cluster…
Kubectl est maintenant configuré pour utiliser le cluster.
Chargement des images mises en cache à partir du fichier config.

Lors de votre première manche, il faudra du temps pour tirer un minikube car il construira la machine virtuelle pour vous. Vous pouvez vérifier votre VirtualBox pour voir la machine virtuelle minikube tourne:

Plus tard, lorsque vous redémarrez Minikube, ce sera plus rapide.

Vous pouvez utiliser la commande suivante pour vérifier votre statut minikube:

$ Minikube Status
minikube: courir
Cluster: Running
Kubectl: correctement configuré: pointant vers Minikube-VM à 192.168.99.100

Une grande caractéristique de Minikube est le tableau de bord. Du tableau de bord, vous pouvez voir tout ce qui se passe dans Minikube. Vous pouvez également contrôler les ressources dans votre cluster depuis le tableau de bord. Utilisez la commande suivante pour démarrer le tableau de bord dans votre navigateur par défaut:

$ Tableau de bord Minikube
Ouverture du tableau de bord Kubernetes dans le navigateur par défaut…

Voici à quoi devrait ressembler le tableau de bord:

Déployons une application Nginx sur Minikube. Voici les étapes:

1. Créer un pod:

$ kubectl run mynginxapp --image = nginx: le dernier --port = 80
Déploiement "MyNginxApp" créé

2. Créer un service:

$ kubectl exposer le déploiement mynginxapp --type = nodeport
Service "Mynginxapp" exposé

3. Vérifiez votre pod et votre statut de service:

$ kubectl obtenir des pods
Nom Ready Status Restarts Age
myNginxapp-6d64b788cc-j5crt 1/1 en cours d'exécution 0 4m

$ kubectl obtenir des services
Type de nom Cluster-IP Port (s) IP-IP Port (S)
kubernetes clusterrip 10.96.0.1 443 / TCP 1H
MyNginxapp Nodeport 10.97.47.26 80: 30964 / TCP 1M

Vous pouvez voir que le pod et le service fonctionnent pour mynginxapp.

4. Trouver dans quelle adresse et Port Minikube exécute MyNginxApp:

$ MINIKUBE SERVICE MYNGINXAPP --URL
http: // 192.168.99.100: 30964

Si vous allez à l'URL retournée (dans ce cas, c'est http: // 192.168.99.100: 30964) Sur votre navigateur, vous devriez voir le service Nginx fonctionner.

5. Vérifiez à nouveau le tableau de bord:

$ Tableau de bord Minikube
Ouverture du tableau de bord Kubernetes dans le navigateur par défaut…

6. Supprimez le service et le pod et arrêtez Minikube

$ kubectl supprimer le service mynginxapp
le service "mynginxapp" supprimé
$ kubectl supprimer le déploiement mynginxapp
Déploiement "MyNginxApp" supprimé
$ Minikube stop
Arrêt du cluster Kubernetes local…
La machine s'est arrêtée.

Résumé de l'exemple

Dans cet exemple, vous avez d'abord déployé une pod nginx appelée mynginxapp. L'image Nginx a été téléchargée à partir de Docker Hub. Ensuite, vous avez créé un service pour prendre en charge le pod. Vous avez pu voir le service du navigateur. Enfin, vous avez supprimé le pod et le service, puis vous avez arrêté Minikube.

Exemple Minikube plus détaillé

Découvrez notre Kubernetes: commencer Article qui a un exemple de minikube plus détaillé.

Quiz - Testez vos connaissances

  1. Pouvez-vous expliquer le concept de conteneurs, de gousses et de services?
  2. Comment les conteneurs, les gousses et les services interagissent-ils les uns avec les autres?
  3. Qu'est-ce que Kubectl?
  4. Combien de clusters Kubernetes pouvez-vous commencer sur Minikube?
Une étude plus approfondie
  • https: // kubernetes.IO / Docs / Tutorials / Hello-Minikube
  • https: // kubernetes.IO / Docs / Home
  • https: // www.DigitalOcean.com / communauté / tutoriels / une introduction à Kubernetes