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

So installieren Sie Consul Server unter Ubuntu 16.04

In diesem Artikel zeigen wir Ihnen die Installation und Konfiguration des Consul-Servers auf Ubuntu 16.04 LTS. Consul ist eine Lösung für Service-Discovery und Konfigurationsmanagementsystem, die vollständig verteilt, hochverfügbar und auf Tausende von Knoten und Services in mehreren Rechenzentren skalierbar ist. Es hilft, die Anforderungen von Dienstanwendungen wie Datenbanken, E-Mails und Warteschlangen zu finden, Dienste wie die Aktivierung des Wartungsmodus für einen Webserver und Gesundheitsprüfungsdienste zu konfigurieren. Es schützt Daten und arbeitet mit den größten Infrastrukturen zusammen, umfasst moderne Praktiken und ist freundlich zu bestehenden DevOps-Tools. Consul bietet viele Funktionen, um konsistente und verfügbare Informationen über Ihre Infrastruktur bereitzustellen. Wenn wir über Diensterkennung sprechen, können die Clients von Consul einen Dienst wie API oder HTTP bereitstellen, und andere Clients können Consul verwenden, um Anbieter eines bestimmten Dienstes zu finden, indem sie entweder DNS oder MySQL verwenden. Anwendungen können die Dienste, von denen sie abhängen, leicht finden auf.

Mal sehen, wie wir Consul, Consul Web-UI und Consul Template auf Ubuntu 16.04 installieren werden. Sie können die gleichen Schritte jedoch mit einigen Modifikationen auf anderen Linux-Distributionen implementieren.

Voraussetzungen

In diesem Artikel verwenden wir die einzelne Instanz von Ubuntu 16.04 mit installiertem Basisbetriebssystem, aber Sie können gemäß den Empfehlungen mehrere Consul-Server verwenden, die in jedem Rechenzentrum ausgeführt werden, um Datenverluste im Falle eines Serverausfalls zu vermeiden. Dies sind die Komponenten, die die Schwerarbeit leisten und Informationen über Dienste und Schlüssel/Wert-Informationen speichern.

Melden Sie sich mit dem privilegierten Root- oder Sudo-Benutzer bei Ihrem Server an, um einige grundlegende Pakete zu installieren, die während des Prozesses verwendet werden, bevor wir uns mit der Consul-Anwendung befassen. Wir müssen entpacken, um die ausführbaren Dateien zu extrahieren und den Paketcache des lokalen Systems zu aktualisieren, und dann das Paket mit den folgenden 'apt'-Befehlen installieren.

$ sudo apt-get update
$ sudo apt-get install unzip

Wir müssen auch „tmux“ installieren, das zum Multiplexen mehrerer virtueller Konsolen verwendet werden kann, sodass ein Benutzer auf mehrere separate Terminalsitzungen in einem einzigen Terminalfenster oder einer Remote-Terminalsitzung zugreifen kann.

$ sudo apt-get install tmux

Um mit dem Consul-Web-UI-Paket auf den Consul zugreifen zu können, müssen wir einen Webserver installieren. Zu diesem Zweck verwenden wir Nginx. Sie können Nginx mit dem folgenden Befehl auf Ihrem Ubuntu-Server installieren.

$ sudo apt-get install nginx

Dies sind die grundlegenden Systemanforderungen. Kommen wir nun zum Thema Consul auf Ubuntu installieren.

So installieren Sie Consul auf Ubuntu 16.04

Das Consul-Paket ist in den Standard-Repositories von Ubuntu nicht verfügbar, aber wir können es aus dem Quellpaket installieren, das von der Consul-Webseite heruntergeladen werden kann. Wählen Sie die neueste Version aus, kopieren Sie ihren Quellspeicherort und verwenden Sie dann den folgenden Befehl „wget“, um das Paket auf Ihrem Server im Verzeichnis „bin“ zu installieren.

$ cd /usr/local/bin
$ sudo wget https://releases.hashicorp.com/consul/0.8.0/consul_0.8.0_linux_amd64.zip

Extrahieren Sie nach dem Herunterladen das Paket und entfernen Sie das gezippte Paket mit den folgenden Befehlen.

$ sudo unzip consul_0.8.0_linux_amd64.zip
$ sudo rm -rf consul_0.8.0_linux_amd64.zip

Jetzt finden Sie auf derselben Webseite von consul die Web-UI-Seite, mit der Sie die Webkonsole öffnen können, um alle Dienste von der Webseite aus zu verwalten. Lassen Sie uns den folgenden Befehl ausführen, um das Web-UI-Paket herunterzuladen, nachdem Sie ein neues Verzeichnis im Home-Verzeichnis Ihres Benutzers erstellt haben.

$ mkdir consul-ui
$ cd consul-ui
$ wget https://releases.hashicorp.com/consul/0.8.0/consul_0.8.0_web_ui.zip

Extrahieren Sie nach dem Herunterladen das Paket und entfernen Sie die gezippte Datei.

$ unzip consul_0.8.0_web_ui.zip
$ rm -rf consul_0.8.0_web_ui.zip

Als nächstes müssen wir den Consul-Server und seine Web-Benutzeroberfläche konfigurieren, um ihn über den Webbrowser zugänglich zu machen.

So konfigurieren Sie den Consul-Server

Erstellen Sie eine neue Datei ‚config.json‘ im folgenden neuen Verzeichnis und fügen Sie die folgenden Konfigurationsparameter darin ein.
Verzeichnis und legen Sie die folgende Konfiguration darin ab. Hier ist P.P.P.P die private IP der Instanz

$ cd ~
$ mkdir -p consul-config/server

Verwenden Sie nun den folgenden Befehl, um eine neue Datei zu erstellen, und verwenden Sie Ihren Befehlszeilen-Editor, um die folgende Konfiguration zu erstellen.

~$ vim consul-config/server/config.json
{
    "bootstrap": true,
    "server": true,
    "log_level": "DEBUG",
    "enable_syslog": true,
    "datacenter": "server1",
    "addresses" : {
      "http": "0.0.0.0"
    },
    "bind_addr": "XX.XX.XX.XX",
    "node_name": "XX.XX.XX.XX",
    "data_dir": "/home/k/consuldata",
    "ui_dir": "/home/k/consul-ui",
    "acl_datacenter": "server1",
    "acl_default_policy": "allow",
    "encrypt": "5KKufILrf186BGlilFDNig=="
}

Hier in dieser Konfigurationsdatei dient der erste Konfigurationsparameter dem Bootstrapping. Wenn Sie einen Cluster aus mehreren Consul-Servern einrichten, stellen Sie sicher, dass Sie diese Konfigurationsdatei nur auf einem Ihrer Consul-Server oder auf allen ablegen, was Ihnen mehr Optionen für das Bootstrapping bietet. Die Konfigurationsdateien werden in einfachem JSON gespeichert, sodass sie recht einfach zu verwalten sind.

Als nächstes haben wir eine Verschlüsselung in das Flüsterprotokoll implementiert, das der Konsul verwendet. Diese Funktionalität ist unter Verwendung eines Shared-Secret-Systems integriert. Das Geheimnis muss eine 16-Bit-Base-64-codierte Zeichenfolge sein. Im Terminal können wir den Befehl consul verwenden, um einen Schlüssel der erforderlichen Länge und Codierung zu generieren.

$ consul keygen
5KKufILrf186BGlilFDNig==

Stellen Sie sicher, dass Sie Ihre bind_addr und node_name mit der IP oder dem FQDN Ihres eigenen Servers aktualisieren. Nachdem Sie Ihre gewünschten Änderungen vorgenommen haben, speichern und schließen Sie den Editor mit ':wq!' und fahren Sie mit dem nächsten Schritt fort, um Ihren Webserver zu konfigurieren.

Erstellen Sie eine neue Konfigurationsdatei, die im Konfigurationsverzeichnis des Nginx-Webservers mit folgendem Inhalt abgelegt werden soll.

$ sudo vim /etc/nginx/conf.d/consul.conf
server
{
  listen 80 ;
  server_name XX.XX.XX.XX;
  root /home/k/consul-ui;
      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 Konfigurationsdatei, aber stellen Sie sicher, dass Sie „XX“ durch Ihren Domänennamen oder die IP-Adresse Ihres Servers ersetzen. Führen Sie danach den folgenden Befehl aus, um den Nginx-Dienst neu zu starten.

$ sudo systemctl restart nginx.service

Nach dem Neustart der Nginx-Dienste starten Sie den Consul-Server.

Starten und Verwenden des Consul-Servers

Nach der Konfiguration des Consul-Servers starten wir nun seinen Dienst unter dem ‚tmux‘-Terminal mit dem folgenden Befehl.

$ tmux
$ consul agent -config-dir ~/consul-config/server -ui-dir ~/consul-ui -bootstrap true -client=0.0.0.0

Jetzt sehen Sie die Consul-Prozesse, die in der tmux-Sitzung laufen sollten, wie unten gezeigt.

Sie können den Prozess laufen lassen, indem Sie "Strg+b als d" verwenden, um den Konsul im Hintergrund auszuführen, und Ihre tmux-Sitzung wird getrennt.

Öffnen Sie nun Ihren Webbrowser und folgen Sie der IP oder dem FQDN Ihres Servers und dem Port „8500“, um Ihren Consul-Server über den Webbrowser zu verwalten.

http://localhost:8500

Das ist es, jetzt können Sie diese Schnittstelle verwenden, um den Zustand Ihrer Server zu überprüfen und sich einen Überblick über Ihre Dienste und Infrastruktur zu verschaffen. Wenn Sie die Web-Benutzeroberfläche nicht verwenden möchten, können Sie den SSH-Tunnel schließen oder mit dem Befehl ps nach der PID-Nummer des Prozesses suchen und mit grep nach der von uns weitergeleiteten Portnummer „8500“ suchen, um den Prozess zu beenden.

Schlussfolgerung

In diesem Artikel haben wir den Consul-Server zusammen mit seiner Web-UI auf Ubuntu 16.04 erfolgreich installiert und eingerichtet. Es ist so konzipiert, dass es Rechenzentren berücksichtigt und eine beliebige Anzahl von Regionen ohne komplexe Konfiguration unterstützen kann. Consul läuft unter Linux, Mac OS X und Windows, es wird jedoch empfohlen, die Consul-Server nur unter Linux auszuführen.


Ubuntu
  1. So installieren Sie MySQL unter Ubuntu 18.04

  2. So installieren Sie Minecraft Server auf Ubuntu 18.04

  3. So installieren Sie Nginx unter Ubuntu 20.04

  4. So installieren Sie MariaDB unter Ubuntu 20.04

  5. So installieren Sie Zimbra 8.6 auf einem Ubuntu 14.04-Server

So installieren Sie den VNC-Server unter Ubuntu 20.04

So installieren Sie den HTTrack-Server unter Ubuntu 20.04

So installieren Sie Snappass auf Ubuntu

So installieren Sie Virtualmin unter Ubuntu 20.04

So installieren Sie TeamSpeak Server auf Ubuntu 20.04

So installieren Sie den Consul-Server unter Ubuntu 20.04