GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie den Consul-Server unter Ubuntu 20.04

Consul ist eine Service-Mesh-Lösung, die eine voll funktionsfähige Steuerungsebene bietet, einschließlich Segmentierungsfunktionalität, Konfiguration und Diensterkennung. Diese Funktionen können je nach Bedarf einzeln oder zusammen zur Erstellung eines Full-Service-Mesh verwendet werden. Consul arbeitet über eine Datenebene und unterstützt sowohl ein Proxy- als auch ein natives Integrationsmodell. Consul wird mit einem einfachen integrierten Proxy geliefert, der sicherstellt, dass alles sofort einsatzbereit ist. Consul unterstützt auch Proxy-Integrationen von Drittanbietern wie Envoy.

Zu den Hauptfunktionen von Consul gehören:

  • Diensterkennung
  • Gesundheitsprüfung
  • KV-Shop
  • Sichere Dienstkommunikation
  • Multi-Rechenzentrum-Fähigkeiten

In diesem Tutorial zeigen wir Ihnen, wie Sie einen Consul-Server unter Ubuntu 20.04 installieren.

Voraussetzungen

  • Ein frischer Ubuntu 20.04 VPS auf der Atlantic.Net Cloud Platform
  • Auf Ihrem Server ist ein Root-Passwort konfiguriert

Schritt 1 – Erstellen Sie einen Atlantic.Net Cloud-Server

Melden Sie sich zunächst bei Ihrem Atlantic.Net Cloud Server an. Erstellen Sie einen neuen Server und wählen Sie Ubuntu 20.04 als Betriebssystem mit mindestens 2 GB RAM. Stellen Sie über SSH eine Verbindung zu Ihrem Cloud-Server her und melden Sie sich mit den oben auf der Seite hervorgehobenen Anmeldeinformationen an.

Sobald Sie sich bei Ihrem Ubuntu 20.04-Server angemeldet haben, führen Sie den folgenden Befehl aus, um Ihr Basissystem mit den neuesten verfügbaren Paketen zu aktualisieren.

apt-get update -y

Schritt 2 – Consul Server installieren

Installieren Sie zuerst die erforderlichen Pakete mit dem folgenden Befehl:

apt-get install unzip gnupg2 curl wget -y

Laden Sie als Nächstes die neueste Version von Consul mit dem folgenden Befehl herunter:

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

Sobald der Download abgeschlossen ist, entpacken Sie die heruntergeladene Datei mit dem folgenden Befehl:

unzip consul_1.8.4_linux_amd64.zip

Als nächstes verschieben Sie die Consul-Binärdatei mit dem folgenden Befehl in das Verzeichnis /usr/local/bin:

mv consul /usr/local/bin/

Überprüfen Sie als Nächstes die Consul-Version mit dem folgenden Befehl:

consul --version

Sie sollten die folgende Ausgabe erhalten:

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)

Schritt 3 – Consul-Service-Datei erstellen

Zuerst müssen Sie einen separaten Benutzer und eine separate Gruppe für Consul erstellen. Sie können sie mit dem folgenden Befehl erstellen:

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

Erstellen Sie als Nächstes die erforderlichen Verzeichnisse mit dem folgenden Befehl:

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

Ändern Sie als Nächstes den Besitz und die Berechtigung dieser Verzeichnisse:

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

Erstellen Sie als Nächstes mit dem folgenden Befehl eine Consul-Systemd-Dienstdatei:

nano /etc/systemd/system/consul.service

Fügen Sie die folgenden Zeilen hinzu:

[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

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Hinweis :Geben Sie die richtige Server-IP, den Datenverzeichnispfad und das Konfigurationsverzeichnis an, die Sie zuvor erstellt haben.

Als nächstes laden Sie den systemd-Daemon mit dem folgenden Befehl neu:

systemctl daemon-reload

Schritt 4 – Consul-Server konfigurieren

Zuerst müssen Sie einen Schlüssel mit der erforderlichen Länge und Codierung generieren. Sie können es mit dem folgenden Befehl generieren:

consul keygen

Sie sollten die folgende Ausgabe erhalten:

TJ8iw/XJ+0/BSUMGuLFWkeT23LmGnfhmF/qWgA25wZU=

Als Nächstes müssen Sie eine Json-Konfigurationsdatei für Consul erstellen. Sie können es mit dem folgenden Befehl erstellen:

nano /etc/consul.d/config.json

Geben Sie Ihre Server-IP, Ihren Hostnamen und Ihren Consul-Schlüssel wie unten gezeigt ein:

{
"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="
}

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Starten Sie als Nächstes den Consul-Dienst und aktivieren Sie ihn mit dem folgenden Befehl, damit er beim Systemneustart gestartet wird:

systemctl start consul
systemctl enable consul

Überprüfen Sie als Nächstes den Status des Konsuls mit dem folgenden Befehl:

systemctl status consul

Sie sollten die folgende Ausgabe erhalten:

● 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>

An diesem Punkt wird der Consul-Server gestartet und überwacht Port 8500. Sie können dies mit dem folgenden Befehl überprüfen:

ss -plunt | grep 8500

Sie sollten die folgende Ausgabe erhalten:

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

Schritt 5 – Nginx als Reverse-Proxy konfigurieren

Als nächstes ist es eine gute Idee, Nginx als Reverse-Proxy zu installieren und zu konfigurieren, um auf den Consul auf Port 80 zuzugreifen.

Installieren Sie zuerst den Nginx-Server mit dem folgenden Befehl:

apt-get install nginx -y

Entfernen Sie nach der Installation die Konfigurationsdatei des virtuellen Nginx-Standardhosts:

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

Erstellen Sie als Nächstes mit dem folgenden Befehl eine Konfigurationsdatei für den virtuellen Consul-Host:

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

Fügen Sie die folgenden Zeilen hinzu:

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;
}
}

Speichern und schließen Sie die Datei und aktivieren Sie dann den virtuellen Host mit dem folgenden Befehl:

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

Überprüfen Sie als Nächstes Nginx mit dem folgenden Befehl auf Syntaxfehler:

nginx -t

Sie sollten die folgende Ausgabe erhalten:

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

Starten Sie als Nächstes den Nginx-Dienst mit dem folgenden Befehl neu:

systemctl restart nginx

Wenn Sie Fehler erhalten, müssen Sie die Konfigurationsdatei des Nginx-Standardservers bearbeiten und server_names_hash_bucket_size:

festlegen
nano /etc/nginx/nginx.conf

Fügen Sie die folgende Zeile unter http { hinzu :

server_names_hash_bucket_size 64;

Speichern und schließen Sie die Datei und starten Sie dann den Nginx-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart nginx

Schritt 6 – Zugriff auf das Consul-Dashboard

Öffnen Sie als Nächstes Ihren Webbrowser und greifen Sie über die URL http://your-server-ip/ui auf die Consul-Weboberfläche zu . Sie sollten das Consul-Dashboard auf der folgenden Seite sehen:

Klicken Sie auf die Knoten um die aktiven Knoten in Ihrem Server wie unten gezeigt aufzulisten:

Fazit

Herzliche Glückwünsche! Sie haben den Consul-Server erfolgreich auf Ubuntu 20.04 installiert. Sie können jetzt weitere Client-Knoten zum Consul-Server hinzufügen und diese über das Consul-Dashboard verwalten. Weitere Informationen finden Sie in der Consul-Dokumentation. Beginnen Sie mit Consul auf VPS-Hosting von Atlantic.Net!


Linux
  1. So installieren Sie den EteSync-Server unter Ubuntu 20.04

  2. So installieren Sie TeamSpeak Server auf Ubuntu 18.04 &20.04

  3. So installieren Sie MongoDB unter Ubuntu 20.04

  4. So installieren Sie auf einem Ubuntu-Server

  5. So installieren Sie R unter Ubuntu 18.04

So installieren Sie Jenkins unter Ubuntu 18.04

So installieren Sie Ruby unter Ubuntu 18.04

So installieren Sie Ansible Server unter Ubuntu 18.04

So installieren Sie Monit Monitoring Server unter Ubuntu 20.04.

So installieren Sie Kanboard unter Ubuntu 20.04

So installieren Sie EteSync-Server auf Ubuntu 20.04