GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment déployer RabbitMQ sur Kubernetes

Présentation

RabbitMQ est un courtier de messages à usage général établi. Un courtier facilite l'échange de messages entre un ensemble de microservices distribués et leur permet de communiquer de manière efficace et fiable.

Kubernetes, avec son approche centrée sur les API, est un opérateur idéal pour déployer des instances RabbitMQ dans un cluster. Les capacités de mise à l'échelle de Kubernetes et le déploiement automatisé de conteneurs améliorent la fiabilité de RabbitMQ dans un environnement de cluster étendu.

Ce tutoriel vous montre comment installer une instance RabbitMQ sur Kubernetes.

Prérequis

  • Accès à une fenêtre de terminal/ligne de commande
  • Un cluster Kubernetes
  • Le kubectl de Kubernetes Outil CLI

Déployer RabbitMQ sur Kubernetes

L'installation de solutions logicielles avancées sur un cluster Kubernetes implique souvent la création et la modification de plusieurs fichiers de configuration complexes.

Heaume , le gestionnaire de packages d'applications Kubernetes, peut rationaliser le processus d'installation et déployer très rapidement des ressources dans l'ensemble du cluster. Pour déployer avec succès RabbitMQ, nous devrons installer le gestionnaire de packages Helm.

Installer le gestionnaire de packages Helm

Utilisez la commande suivante pour installer la dernière version de Helm sur votre cluster Kubernetes local :

curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh

Une fois le processus d'installation terminé, lancez le gestionnaire de packages Helm en tapant la commande suivante :

helm init

Vous pouvez désormais utiliser Helm pour déployer des ressources dans un cluster avec quelques commandes courtes.

Créer un espace de noms pour le déploiement RabbitMQ

Toutes les ressources de Kubernetes sont démarrées dans un espace de noms. Sauf indication contraire, le système utilise l'espace de noms par défaut. Pour avoir un meilleur contrôle sur le processus de déploiement, utilisez la commande suivante pour créer un espace de noms distinct :

kubectl create namespace rabbit

Vous pouvez utiliser n'importe quel nom compatible DNS. L'espace de noms que nous avons créé est nommé :lapin.

Le système confirme que l'espace de noms a été créé avec succès.

Installer RabbitMQ sur Kubernetes

Avec Helm installé avec succès et un espace de noms désigné, vous êtes prêt à démarrer le processus de déploiement de RabbitMQ. Entrez la commande suivante pour appliquer un stable/rabbitmq par défaut graphique d'un dépôt git :

helm install mu-rabbit stable/rabbitmq --namespace rabbit

La commande déploie RabbitMQ sur le cluster Kubernetes dans la configuration par défaut. Le déploiement est exécuté dans le rabbit espace de noms créé précédemment.

Le terminal fournit les informations dont vous avez besoin pour accéder à l'interface de gestion RabbitMQ à partir de vos navigateurs, telles que les informations d'identification, le numéro de port et l'URL.

Vérifier l'état de provisionnement de RabbitMQ

Le déploiement des conteneurs peut prendre quelques instants. L'état complet de la séquence de provisionnement peut confirmer si un déploiement a réussi. Pour consulter les détails du déploiement, saisissez la commande suivante :

watch kubectl get deployments,pods,services --namespace rabbit

Un shell dans le terminal fournit les détails de l'espace de noms du lapin.

Une fois que vous êtes prêt à quitter le shell de surveillance, appuyez sur Ctrl+C .

Configurer le serveur RabbitMQ

Les paramètres du serveur RabbitMQ et de ses plugins sont modifiés dans les fichiers de configuration RabbitMQ.

Vous pouvez utiliser votre éditeur de texte préféré pour accéder et configurer le rabbitmq.conf dossier. La syntaxe du fichier de configuration utilise le sysctl format, et il y a plusieurs principes de base à respecter :

  • Le système n'exécute pas les lignes qui commencent par un # caractère, car il les considère comme un commentaire
  • Vous ne pouvez définir qu'un seul paramètre par ligne
  • Les lignes utilisent une simple Clé =Valeur structure

Le rabbitmq.conf vous permet de définir la plupart des éléments de configuration nécessaires, tels que les ports, les seuils de mémoire, l'espace disque ou les autorisations de connexion au courtier.

Le référentiel source du serveur RabbitMQ fournit un exemple complet de fichier rabbitmq.conf avec des commentaires détaillés. Il est important de noter que cet exemple de fichier représente un guide général et doit être adapté pour refléter les besoins spécifiques de votre système.

Configuration du plug-in de gestion RabbitMQ pour activer l'interface graphique

Le plugin de gestion RabbitMQ est déjà disponible dans la distribution par défaut. Utilisez les rabbitmq-plugins commande pour activer le service :

rabbitmq-plugins enable rabbitmq_management

Accédez à l'interface graphique RabbitMQ en utilisant l'adresse IP et le numéro de port du serveur RabbitMQ. Saisissez le format d'emplacement Web suivant dans votre navigateur :

http://rabbitmq-ip-or-server-name:15672/

L'adresse IP et le numéro de port ont été fournis lors du processus d'installation.

Le service vous demande vos identifiants. Pour accéder à l'interface utilisateur, vous devez entrer votre nom d'utilisateur et votre mot de passe. Sur les nouvelles installations de RabbitMQ, le nom d'utilisateur et le mot de passe par défaut sont tous deux prédéfinis comme "invité".

Vous avez désormais accès à un environnement convivial qui vous permet de gérer les hôtes virtuels, les files d'attente, les autorisations et les échanges.

Comment fonctionne RabbitMQ sur Kubernetes ?

Le but même de Kubernetes est d'orchestrer les services et d'automatiser les tâches dans un cluster hautement distribué. Un courtier de messagerie comme RabbitMQ peut améliorer la qualité des tâches de longue durée et stabiliser les processus d'arrière-plan vitaux.

RabbitMQ utilise le protocole AMQP (Advanced Message Queuing Protocol) pour standardiser la messagerie entre les producteurs, les courtiers et les consommateurs.

  • Un producteur publie un message à Exchange .
  • L'échange formate le message et le transmet à une file d'attente prédéfinie et sélectionnée .
  • Un Consommateur puis récupère le message formaté et le consomme.

La distribution systématique des messages améliore la communication entre les applications et les services faiblement couplés.


Cent OS
  1. Comment déployer Elasticsearch sur Kubernetes

  2. Comment déployer une instance WordPress sur Kubernetes

  3. Comment déployer un cluster Redis sur Kubernetes

  4. Comment redémarrer les pods Kubernetes

  5. Comment déployer votre premier pod sur un cluster Kubernetes

Comment déployer Mattermost sur Ubuntu 20.04

Comment déployer Kubernetes à nœud unique avec Microk8s sur Ubuntu 20.04

Comment installer RabbitMQ dans Ubuntu 20.04

Comment installer RabbitMQ dans CentOS 7

Comment installer Kubernetes sur CentOS 8

Comment installer RabbitMQ sur CentOS 8