GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer Consul Server sur Ubuntu 20.04

Consul est une solution de maillage de services offrant un plan de contrôle complet, comprenant des fonctionnalités de segmentation, de configuration et de découverte de services. Ces fonctionnalités peuvent être utilisées individuellement selon les besoins, ou elles peuvent être utilisées ensemble pour créer un maillage à service complet. Consul fonctionne sur un plan de données et prend en charge à la fois un proxy et un modèle d'intégration natif. Consul est livré avec un simple proxy intégré qui garantit que tout fonctionne immédiatement. Consul prend également en charge les intégrations de proxy tiers, telles qu'Envoy.

Les principales fonctionnalités de Consul incluent :

  • Découverte de services
  • Vérification de l'état
  • Magasin KV
  • Communication de service sécurisée
  • Capacités multi-centres de données

Dans ce tutoriel, nous allons vous montrer comment installer un serveur Consul sur Ubuntu 20.04.

Prérequis

  • Un nouveau VPS Ubuntu 20.04 sur la plate-forme cloud Atlantic.Net
  • Un mot de passe root est configuré sur votre serveur

Étape 1 – Créer un serveur cloud Atlantic.Net

Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant Ubuntu 20.04 comme système d'exploitation avec au moins 2 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.

Une fois que vous êtes connecté à votre serveur Ubuntu 20.04, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.

apt-get update -y

Étape 2 – Installer le serveur Consul

Tout d'abord, installez les packages requis avec la commande suivante :

apt-get install unzip gnupg2 curl wget -y

Ensuite, téléchargez la dernière version de Consul avec la commande suivante :

wget https://releases.hashicorp.com/consul/1.8.4/consul_1.8.4_linux_amd64.zip

Une fois le téléchargement terminé, décompressez le fichier téléchargé avec la commande suivante :

unzip consul_1.8.4_linux_amd64.zip

Ensuite, déplacez le fichier binaire consul dans le répertoire /usr/local/bin avec la commande suivante :

mv consul /usr/local/bin/

Ensuite, vérifiez la version Consul à l'aide de la commande suivante :

consul --version

Vous devriez obtenir le résultat suivant :

Consul v1.8.4
Revision 12b16df32
Protocol 2 spoken by default, understands 2 to 3 (agent will automatically use protocol >2 when speaking to compatible agents)

Étape 3 - Créer un fichier de service consul

Tout d'abord, vous devrez créer un utilisateur et un groupe distincts pour Consul. Vous pouvez les créer avec la commande suivante :

groupadd --system consul
useradd -s /sbin/nologin --system -g consul consul

Ensuite, créez les répertoires requis avec la commande suivante :

mkdir -p /var/lib/consul
mkdir /etc/consul.d

Ensuite, modifiez la propriété et l'autorisation de ces répertoires :

chown -R consul:consul /var/lib/consul
chmod -R 775 /var/lib/consul
chown -R consul:consul /etc/consul.d

Ensuite, créez un fichier de service Consul systemd avec la commande suivante :

nano /etc/systemd/system/consul.service

Ajoutez les lignes suivantes :

[Unit]
Description=Consul Service Discovery Agent
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=consul
Group=consul
ExecStart=/usr/local/bin/consul agent -server -ui \
            -advertise=your-server-ip \
            -bind=your-server-ip \
            -data-dir=/var/lib/consul \
            -node=consul-01 \
            -config-dir=/etc/consul.d
ExecReload=/bin/kill -HUP $MAINPID
KillSignal=SIGINT
TimeoutStopSec=5
Restart=on-failure
SyslogIdentifier=consul
[Install]
WantedBy=multi-user.target

Enregistrez et fermez le fichier lorsque vous avez terminé.

Remarque  :fournissez l'adresse IP du serveur, le chemin d'accès au répertoire de données et le répertoire de configuration appropriés que vous avez créés précédemment.

Ensuite, rechargez le démon systemd avec la commande suivante :

systemctl daemon-reload

Étape 4 – Configurer le serveur Consul

Tout d'abord, vous devrez générer une clé de la longueur et de l'encodage nécessaires. Vous pouvez le générer avec la commande suivante :

consul keygen

Vous devriez obtenir le résultat suivant :

TJ8iw/XJ+0/BSUMGuLFWkeT23LmGnfhmF/qWgA25wZU=

Ensuite, vous devrez créer un fichier de configuration Json pour Consul. Vous pouvez le créer avec la commande suivante :

nano /etc/consul.d/config.json

Fournissez l'IP, le nom d'hôte et la clé Consul de votre serveur comme indiqué ci-dessous :

{
"bootstrap": true,
"server": true,
"log_level": "DEBUG",
"enable_syslog": true,
"datacenter": "server1",
"addresses" : {
"http": "0.0.0.0"
},
"bind_addr": "your-server-ip",
"node_name": "ubuntu2004",
"data_dir": "/var/lib/consul",
"acl_datacenter": "server1",
"acl_default_policy": "allow",
"encrypt": "TJ8iw/XJ+0/BSUMGuLFWkeT23LmGnfhmF/qWgA25wZU="
}

Enregistrez et fermez le fichier lorsque vous avez terminé.

Ensuite, démarrez le service Consul et activez-le au redémarrage du système avec la commande suivante :

systemctl start consul
systemctl enable consul

Ensuite, vérifiez le statut du Consul avec la commande suivante :

systemctl status consul

Vous devriez obtenir le résultat suivant :

● consul.service - Consul Service Discovery Agent
     Loaded: loaded (/etc/systemd/system/consul.service; disabled; vendor preset: enabled)
     Active: active (running) since Thu 2020-10-01 10:35:52 UTC; 4min 11s ago
   Main PID: 5511 (consul)
      Tasks: 9 (limit: 2353)
     Memory: 17.4M
     CGroup: /system.slice/consul.service
             └─5511 /usr/local/bin/consul agent -server -ui -advertise=your-server-ip -bind=your-server-ip -data-dir=/var/lib/consul -node=con>

À ce stade, le serveur Consul est démarré et écoute sur le port 8500. Vous pouvez le vérifier avec la commande suivante :

ss -plunt | grep 8500

Vous devriez obtenir le résultat suivant :

tcp   LISTEN 0      4096                                  *:8500              *:*                                                                                users:(("consul",pid=5511,fd=17))           

Étape 5 - Configurer Nginx en tant que proxy inverse

Ensuite, c'est une bonne idée d'installer et de configurer Nginx en tant que proxy inverse pour accéder au Consul sur le port 80.

Tout d'abord, installez le serveur Nginx avec la commande suivante :

apt-get install nginx -y

Une fois installé, supprimez le fichier de configuration de l'hôte virtuel par défaut de Nginx :

rm -rf /etc/nginx/sites-enabled/default

Ensuite, créez un fichier de configuration d'hôte virtuel Consul avec la commande suivante :

nano /etc/nginx/sites-available/consul.conf

Ajoutez les lignes suivantes :

server {
listen 80 ;
server_name your-server-ip;
root /var/lib/consul;
location / {
proxy_pass http://127.0.0.1:8500;
proxy_set_header   X-Real-IP $remote_addr;
proxy_set_header   Host      $http_host;
}
}

Enregistrez et fermez le fichier, puis activez l'hôte virtuel avec la commande suivante :

ln -s /etc/nginx/sites-available/consul.conf /etc/nginx/sites-enabled/

Ensuite, vérifiez le Nginx pour toute erreur de syntaxe avec la commande suivante :

nginx -t

Vous devriez obtenir le résultat suivant :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Ensuite, redémarrez le service Nginx avec la commande suivante :

systemctl restart nginx

Si vous obtenez des erreurs, vous devrez modifier le fichier de configuration du serveur par défaut Nginx et définir server_names_hash_bucket_size :

nano /etc/nginx/nginx.conf

Ajoutez la ligne suivante sous http :

server_names_hash_bucket_size 64;

Enregistrez et fermez le fichier, puis redémarrez le service Nginx pour appliquer les modifications :

systemctl restart nginx

Étape 6 - Accéder au tableau de bord du consul

Ensuite, ouvrez votre navigateur Web et accédez à l'interface Web Consul en utilisant l'URL http://your-server-ip/ui . Vous devriez voir le tableau de bord Consul sur la page suivante :

Cliquez sur les nœuds pour répertorier les nœuds actifs de votre serveur comme indiqué ci-dessous :

Conclusion

Toutes nos félicitations! Vous avez installé avec succès le serveur Consul sur Ubuntu 20.04. Vous pouvez maintenant ajouter plus de nœuds clients au serveur Consul et commencer à les gérer à partir du tableau de bord Consul. Pour plus d'informations, vous pouvez consulter la documentation Consul. Commencez avec Consul sur l'hébergement VPS d'Atlantic.Net !


Linux
  1. Comment installer le serveur EteSync sur Ubuntu 20.04

  2. Comment installer TeamSpeak Server sur Ubuntu 18.04 et 20.04

  3. Comment installer MongoDB sur Ubuntu 20.04

  4. Comment installer la localisation sur un serveur Ubuntu

  5. Comment installer R sur Ubuntu 18.04

Comment installer Jenkins sur Ubuntu 18.04

Comment installer Ruby sur Ubuntu 18.04

Comment installer Ansible Server sur Ubuntu 18.04

Comment installer Monit Monitoring Server sur Ubuntu 20.04.

Comment installer Kanboard sur Ubuntu 20.04

Comment installer EteSync Server sur Ubuntu 20.04