GNU/Linux >> Znalost Linux >  >> Linux

Jak nainstalovat Consul Server na Ubuntu 20.04

Consul je řešení pro síť služeb, které nabízí plnohodnotnou řídicí rovinu, včetně funkcí segmentace, konfigurace a vyhledávání služeb. Tyto funkce lze použít jednotlivě podle potřeby nebo je lze použít společně pro vytvoření sítě s kompletními službami. Consul funguje na datové rovině a podporuje model proxy i nativní integrace. Consul je dodáván s jednoduchým vestavěným proxy, který zajišťuje, že vše funguje ihned po vybalení. Consul také podporuje integraci proxy třetích stran, jako je Envoy.

Mezi klíčové funkce Consul patří:

  • Zjištění služby
  • Kontrola stavu
  • obchod KV
  • Bezpečná komunikace služeb
  • Možnosti více datových center

V tomto tutoriálu vám ukážeme, jak nainstalovat server Consul na Ubuntu 20.04.

Předpoklady

  • Nové Ubuntu 20.04 VPS na cloudové platformě Atlantic.Net
  • Na vašem serveru je nakonfigurováno heslo uživatele root

Krok 1 – Vytvoření cloudového serveru Atlantic.Net

Nejprve se přihlaste ke svému cloudovému serveru Atlantic.Net. Vytvořte nový server a jako operační systém vyberte Ubuntu 20.04 s alespoň 2 GB RAM. Připojte se ke svému cloudovému serveru přes SSH a přihlaste se pomocí přihlašovacích údajů zvýrazněných v horní části stránky.

Jakmile se přihlásíte ke svému serveru Ubuntu 20.04, spusťte následující příkaz a aktualizujte svůj základní systém nejnovějšími dostupnými balíčky.

apt-get update -y

Krok 2 – Instalace Consul Server

Nejprve nainstalujte požadované balíčky pomocí následujícího příkazu:

apt-get install unzip gnupg2 curl wget -y

Dále si stáhněte nejnovější verzi Consul pomocí následujícího příkazu:

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

Po dokončení stahování rozbalte stažený soubor pomocí následujícího příkazu:

unzip consul_1.8.4_linux_amd64.zip

Dále přesuňte binární soubor consul do adresáře /usr/local/bin pomocí následujícího příkazu:

mv consul /usr/local/bin/

Dále ověřte verzi Consul pomocí následujícího příkazu:

consul --version

Měli byste získat následující výstup:

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)

Krok 3 – Vytvoření souboru Consul Service

Nejprve budete muset vytvořit samostatného uživatele a skupinu pro Consul. Můžete je vytvořit pomocí následujícího příkazu:

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

Dále vytvořte požadované adresáře pomocí následujícího příkazu:

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

Dále změňte vlastnictví a oprávnění těchto adresářů:

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

Dále vytvořte soubor služby Consul systemd pomocí následujícího příkazu:

nano /etc/systemd/system/consul.service

Přidejte následující řádky:

[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

Po dokončení uložte a zavřete soubor.

Poznámka :Zadejte správnou IP adresu serveru, cestu k datovému adresáři a konfigurační adresář, které jste vytvořili dříve.

Dále znovu načtěte démona systemd pomocí následujícího příkazu:

systemctl daemon-reload

Krok 4 – Konfigurace Consul Server

Nejprve budete muset vygenerovat klíč potřebné délky a kódování. Můžete jej vygenerovat pomocí následujícího příkazu:

consul keygen

Měli byste získat následující výstup:

TJ8iw/XJ+0/BSUMGuLFWkeT23LmGnfhmF/qWgA25wZU=

Dále budete muset vytvořit konfigurační soubor Json pro Consul. Můžete jej vytvořit pomocí následujícího příkazu:

nano /etc/consul.d/config.json

Zadejte IP svého serveru, název hostitele a klíč konzula, jak je uvedeno níže:

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

Po dokončení uložte a zavřete soubor.

Dále spusťte službu Consul a povolte její spuštění při restartu systému pomocí následujícího příkazu:

systemctl start consul
systemctl enable consul

Dále ověřte stav konzula pomocí následujícího příkazu:

systemctl status consul

Měli byste získat následující výstup:

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

V tomto okamžiku je server Consul spuštěn a naslouchá na portu 8500. Můžete to zkontrolovat pomocí následujícího příkazu:

ss -plunt | grep 8500

Měli byste získat následující výstup:

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

Krok 5 – Konfigurace Nginx jako reverzního proxy

Dále je dobré nainstalovat a nakonfigurovat Nginx jako reverzní proxy pro přístup ke konzulovi na portu 80.

Nejprve nainstalujte server Nginx pomocí následujícího příkazu:

apt-get install nginx -y

Po instalaci odeberte výchozí konfigurační soubor virtuálního hostitele Nginx:

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

Dále vytvořte konfigurační soubor virtuálního hostitele Consul pomocí následujícího příkazu:

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

Přidejte následující řádky:

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

Uložte a zavřete soubor a poté aktivujte virtuálního hostitele pomocí následujícího příkazu:

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

Dále zkontrolujte Nginx, zda neobsahuje nějaké syntaktické chyby pomocí následujícího příkazu:

nginx -t

Měli byste získat následující výstup:

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

Dále restartujte službu Nginx pomocí následujícího příkazu:

systemctl restart nginx

Pokud se zobrazí nějaké chyby, budete muset upravit výchozí konfigurační soubor serveru Nginx a nastavit server_names_hash_bucket_size:

nano /etc/nginx/nginx.conf

Přidejte následující řádek pod http { :

server_names_hash_bucket_size 64;

Uložte a zavřete soubor a poté restartujte službu Nginx, aby se změny projevily:

systemctl restart nginx

Krok 6 – Přístup k panelu Consul Dashboard

Dále otevřete webový prohlížeč a přejděte do webového rozhraní Consul pomocí adresy URL http://ip-vaseho-serveru/ui . Na následující stránce byste měli vidět řídicí panel Consul:

Klikněte na Nodes k seznamu aktivních uzlů na vašem serveru, jak je uvedeno níže:

Závěr

Gratulujeme! Úspěšně jste nainstalovali server Consul na Ubuntu 20.04. Nyní můžete na server Consul přidat další klientské uzly a začít je spravovat z ovládacího panelu Consul. Další informace naleznete v dokumentaci konzula. Začněte s Consul on VPS Hosting od Atlantic.Net!


Linux
  1. Jak nainstalovat TeamSpeak Server na Ubuntu 18.04 a 20.04

  2. Jak nainstalovat MongoDB na Ubuntu 20.04

  3. Jak nainstalovat vyhledejte na serveru Ubuntu

  1. Jak nainstalovat server EteSync na Ubuntu 20.04

  2. Jak nainstalovat Consul Server na Ubuntu 16.04

  3. Jak nainstalovat R na Ubuntu 18.04

  1. Jak nainstalovat OpenLDAP na Ubuntu Server 22.04

  2. Jak nainstalovat Lighttpd na server Ubuntu

  3. Jak nainstalovat FTP server na Ubuntu?