Comment démarrer la gestion d'un cluster Kubernetes avec Portainer

0
177

Portainer est l'une des interfaces de gestion de conteneurs les plus populaires. Bien que Portainer ait commencé par se concentrer sur Docker et Docker Compose, il fonctionne également avec des clusters gérés par des orchestrateurs tels que Docker Swarm et Kubernetes.

Dans cet article, vous apprendrez comment connecter Portainer à un cluster Kubernetes. Vous pourrez utiliser Portainer pour afficher et interagir avec des objets Kubernetes tels que des pods, des déploiements et des ConfigMaps. Portainer peut déployer des graphiques Helm et exposer également certaines informations de base au niveau du cluster. C'est une alternative viable au tableau de bord officiel et à d'autres options comme Lens pour une gestion simple de Kubernetes.

Déploiement de Portainer dans votre cluster

Assurez-vous d'avoir accès à un cluster Kubernetes fonctionnel avant de continuer. Vous pouvez en provisionner un en utilisant [un service cloud géré] ou exécuter le vôtre localement en utilisant une solution telle que MicroK8s ou Minikube. Vous aurez également besoin d'installer Helm pour simplifier le processus d'installation de Portainer.

Ajoutez le référentiel Portainer à Helm à l'aide des commandes suivantes :

$ helm repo add portainer https://portainer .github.io/k8s/$ helm repo update

Exécutez ensuite l'une des commandes suivantes pour déployer l'application Portainer.

Exposer Portainer avec un NodePort

$ helm install –create-namespace -n portainer portainer portainer/portainer

C'est la méthode la plus simple. Vous pourrez accéder à Portainer via HTTP en utilisant le port 30777 sur le nœud qui exécute le pod Portainer. Le trafic HTTPS sera servi sur le port 30779 à l'aide d'un certificat auto-signé. Reportez-vous à la documentation de Portainer si vous souhaitez fournir votre propre certificat SSL lors du déploiement avec cette méthode.

Exposer Portainer avec un équilibreur de charge

$ helm install –create-namespace -n portainer portainer portainer/portainer –set service.type=LoadBalancer

Cette méthode est similaire à NodePort mais elle utilisera un équilibreur de charge devant vos nœuds. Visitez le port 9000 sur l'adresse IP de l'équilibreur de charge pour atteindre Portainer via HTTP. HTTPS est pris en charge sur le port 9443.

Exposer Portainer avec une route d'entrée

helm install –create-namespace -n portainer portainer portainer/portainer –set service.type=ClusterIP –set ingress.enabled=true –set ingress.annotations.'kubernetes.io/ingress.class '=nginx –set ingress.annotations.”nginx.ingress.kubernetes.io/backend-protocol”=HTTPS –set ingress.hosts[0].host=portainer.example.com — définir ingress.hosts[0].paths[0].path=”/”

Cette méthode expose Portainer à l'aide d'une route Ingress. Vous aurez besoin d'un contrôleur Ingress tel que NGINX Ingress dans votre cluster. Modifiez les variables host et path dans la commande pour personnaliser la route Portainer. Dans cet exemple, vous pourrez accéder à Portainer en visitant portainer.example.com, après avoir configuré un enregistrement DNS approprié.

Configurer une route Ingress est le meilleur moyen de servir Portainer à long terme car il prend en charge l'équilibrage de charge entre les nœuds et vous permet d'attribuer un domaine spécifique. Les options NodePort ou LoadBalancer sont des choix plus simples lorsque vous testez des clusters qui n'ont pas de contrôleur Ingress disponible.

Une fois que vous avez terminé votre déploiement, chargez Portainer dans votre navigateur en visitant l'hôte Ingress ou l'adresse IP et le numéro de port appropriés. Remplissez l'écran de configuration pour créer votre compte utilisateur.

Portainer sera maintenant prêt à utiliser avec votre cluster Kubernetes – le déploiement direct sur Kubernetes découvre automatiquement votre environnement. Cliquez sur “Commencer” bouton pour terminer l'installation.

Ajout d'un cluster Kubernetes à une installation Portainer existante

Vous pouvez ajouter un cluster Kubernetes à une installation Portainer existante. Vous pouvez choisir d'exécuter Portainer en dehors de votre hôte afin qu'il ne consomme pas de ressources de cluster.

Commencez par vous connecter à votre instance Portainer. Cliquez sur “Environnements” lien en bas de la barre latérale gauche. Cliquez sur le bouton bleu “Ajouter un environnement” vers le haut de l'écran.

Appuyez ensuite sur le bouton “Kubernetes&#8221 ; mosaïque, puis l'“Assistant de démarrage” bouton en bas de l'écran.

L'écran suivant affichera les instructions d'installation de l'agent Portainer Kubernetes. Ce composant est installé à l'intérieur de votre cluster. Portainer communique avec l'agent pour extraire les informations Kubernetes et appliquer les actions demandées.

Vous pouvez choisir de déployer l'agent avec un NodePort ou un LoadBalancer. Sélectionnez l'onglet approprié, puis copiez la commande qui s'affiche. Exécutez ceci dans votre terminal pour ajouter l'agent Portainer à votre cluster. Portainer Agent est sécurisé à l'aide d'une signature numérique qu'il reçoit au premier contact de l'application Portainer. L'agent rejettera les communications des clients qui ne fournissent pas la signature correcte.

 

Ensuite, remplissez le champ “Nom” et “URL d'environnement” champs affichés dans l'interface utilisateur Web de Portainer. Vous pouvez choisir n'importe quel nom identifiant votre cluster.

Si vous utilisez une connexion NodePort, l'URL de l'environnement doit être le port 30778 sur l'adresse IP de votre nœud. Pour les connexions LoadBalancer, recherchez l'adresse IP externe de l'équilibreur de charge en exécutant kubectl get services -n portainer. L'agent sera exposé sur le port 9001 à cette adresse IP.

$ kubectl get services -n portainer NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) portainer portainer-agent LoadBalancer 10.245.110.27 139.59.198.245 9001:30343 /TCP

Cliquez sur “Connecter” bouton pour terminer votre connexion. Vous devriez voir une alerte contextuelle verte confirmant que l'environnement a été ajouté. Appuyez sur “Terminer” en bas de l'écran pour revenir à la liste des environnements.

Utiliser Portainer pour gérer Kubernetes

L'écran d'accueil de Portainer s'affiche tous vos environnements configurés. Il peut s'agir de clusters Kubernetes, d'installations locales de Docker Engine ou de tout autre point de terminaison pris en charge. Cliquez sur votre cluster pour commencer à le gérer.

L'écran du tableau de bord du cluster fournit une vue d'ensemble du nombre de ressources dans votre cluster. Portainer se concentre actuellement sur les interactions avec les espaces de noms, les applications (vos pods et déploiements), les ConfigMaps et les secrets, et les volumes. Il fournit une couche d'abstraction sur certains concepts Kubernetes.

Cliquez sur la vignette Applications ou sur le lien de la barre latérale pour afficher vos pods et déploiements en cours d'exécution. L'écran affiche toutes les applications de votre cluster, y compris l'image qu'elles utilisent et leur URL externe lorsqu'une route Ingress est configurée.

Vous pouvez ajouter une nouvelle application en téléchargeant un fichier manifeste Kubernetes ou en cliquant sur le bouton “Ajouter une application avec le formulaire” pour configurer interactivement vos Pods.

Portainer propose également un résumé de base de l'utilisation des ressources de votre cluster. Cliquez sur le “Cluster” élément de la barre latérale pour afficher les nœuds de votre cluster et leurs réservations de mémoire et de CPU.

Enfin, l'écran de configuration du cluster, accessible en naviguant vers Cluster > Configuration, contrôle les fonctionnalités de Portainer à activer pour votre environnement Kubernetes. Vous pouvez l'utiliser pour indiquer à Portainer quels équilibreurs de charge, contrôleurs d'entrée et classes de stockage doivent être mis à la disposition des utilisateurs. D'autres paramètres incluent la possibilité de modifier si les surengagements de ressources sont autorisés (lorsque plus de ressources peuvent être demandées que ce que le cluster peut fournir) et l'activation de l'API Metrics pour accéder à des informations d'utilisation plus détaillées. Cela nécessite que l'API Metrics soit déjà installée dans votre cluster.

Résumé

Portainer est l'une des interfaces de gestion de conteneurs les plus populaires. Les versions modernes de Portainer ont une prise en charge intégrée des clusters Kubernetes. Vous pouvez soit déployer Portainer à l'intérieur de votre cluster, soit utiliser l'agent Portainer pour connecter Kubernetes à une instance d'application existante.

Une fois que vous êtes configuré, vous pouvez utiliser Portainer pour afficher et interagir avec les pods Kubernetes et d'autres objets. Cela peut être plus pratique que d'exécuter des commandes Kubectl complexes dans votre terminal. Portainer vous permet de regrouper tous vos environnements de conteneurs sur une seule plate-forme, des clusters Kubernetes aux installations Docker à nœud unique.

LIRE LA SUITE

  • › Android 13 est sorti : nouveautés et date de disponibilité
  • &rsaquo ; Quelle est la meilleure distance de visionnage de la télévision ?
  • › Comment ajouter des visualisations Winamp à Spotify, YouTube, etc.
  • &rsaquo ; 10 fonctionnalités du casque VR Quest que vous devriez utiliser
  • &rsaquo ; Examen de la chaise de jeu Vertagear SL5000 : confortable, réglable, imparfaite
  • &rsaquo ; 6 choses qui ralentissent votre Wi-Fi (et que faire à leur sujet)