GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat Saltstack Master a Minion na Debian 11

SaltStack je bezplatný, open-source a Python založený software pro automatizaci a správu konfigurace. Je to nástroj příkazového řádku, který vám pomůže spravovat infrastrukturu z centrálního místa. SoltStack se skládá ze čtyř komponent. Stručné vysvětlení každé součásti je uvedeno níže:

  • Mistr soli funguje jako ovladač příkazového řádku pro své přisluhovače. Používá se k ovládání a správě řady minionů.
  • Mioni soli jsou slave démoni, kteří přijímají konfigurace a příkazy od hlavního.
  • Vzorec jsou soubory pro správu konfigurace.
  • Provedení je množství příkazů a modulů, které jsou vykonávány na minionech.

V tomto článku vám ukážu, jak nainstalovat systémy SaltStack Master a Minion na Debian 11.

Předpoklady

  • Dva servery se systémem Debian 11.
  • Na serveru je nakonfigurováno heslo uživatele root.

Instalovat Saltstack Master

Ve výchozím nastavení není SaltStack součástí výchozího úložiště Debian 11. Takže budete muset přidat úložiště SaltStack do APT. Můžete jej přidat spuštěním následujícího příkazu:

curl -fsSL -o /usr/share/keyrings/salt-archive-keyring.gpg https://repo.saltproject.io/py3/debian/11/amd64/latest/salt-archive-keyring.gpg 
echo "deb [signed-by=/usr/share/keyrings/salt-archive-keyring.gpg arch=amd64] https://repo.saltproject.io/py3/debian/11/amd64/latest bullseye main " | tee /etc/apt/sources.list.d/salt.list

Jakmile je úložiště přidáno, aktualizujte mezipaměť úložiště pomocí následujícího příkazu:

apt-get update -y

Dále nainstalujte požadované závislosti pomocí následujícího příkazu:

apt-get install python3 salt-common -y

Dále nainstalujte hlavní server SaltStack pomocí následujícího příkazu:

apt-get install salt-master -y

Po úspěšné instalaci můžete přejít k dalšímu kroku.

Konfigurace Saltstack Master

Dále budete muset definovat rozhraní vazby v konfiguračním souboru SaltSTack.

nano /etc/salt/master

Změňte následující řádek:

rozhraní:0.0.0.0

Uložte a zavřete soubor a poté restartujte hlavní server SaltStack pomocí následujícího příkazu:

systemctl restart salt-master

Nyní můžete ověřit stav zásobníku SaltStack pomocí následujícího příkazu:

stav systemctl salt-master

Získáte následující výstup:

? salt-master.service – The Salt Master Server Načten:načten (/lib/systemd/system/salt-master.service; povoleno; přednastaveno dodavatelem:povoleno) Aktivní:aktivní (běží) od So 2022-02-12 07:39 :48 UTC; Před 9 s Dokumenty:man:salt-master(1) file:///usr/share/doc/salt/html/contents.html https://docs.saltproject.io/en/latest/contents.html Hlavní PID:19403 (salt-master) Úkoly:32 (limit:2341) Paměť:201,5M CPU:6,109s CGroup:/system.slice/salt-master.service ??19403 /usr/bin/python3 /usr/bin/salt- master ??19407 /usr/bin/python3 /usr/bin/salt-master ??19431 /usr/bin/python3 /usr/bin/salt-master ??19434 /usr/bin/python3 /usr/bin/salt -master ??19435 /usr/bin/python3 /usr/bin/salt-master ??19436 /usr/bin/python3 /usr/bin/salt-master ??19437 /usr/bin/python3 /usr/bin/ salt-master ??19444 /usr/bin/python3 /usr/bin/salt-master ??19445 /usr/bin/python3 /usr/bin/salt-master ??19446 /usr/bin/python3 /usr/bin /salt-master ??19448 /usr/bin/python3 /usr/bin/salt-master ??19451 /usr/bin/python3 /usr/bin/salt-master ??19454 /usr/bin/python3 /usr/bin/salt-masterFeb 12 07:39:48 debian11 systemd[1]:Spouštění serveru Salt Master Server... 12. února 07:39:48 debian11 systemd[1]:Spuštěn The Salt Master Server.

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Instalace a konfigurace Saltstack Minion

V tomto okamžiku je SaltStack Master nainstalován a nakonfigurován. Nyní se přihlaste k jinému počítači a přidejte úložiště SaltStack Minion pomocí následujícího příkazu:

curl -fsSL -o /usr/share/keyrings/salt-archive-keyring.gpg https://repo.saltproject.io/py3/debian/11/amd64/latest/salt-archive-keyring.gpg 
echo "deb [signed-by=/usr/share/keyrings/salt-archive-keyring.gpg arch=amd64] https://repo.saltproject.io/py3/debian/11/amd64/latest bullseye main " | tee /etc/apt/sources.list.d/salt.list

Jakmile je úložiště přidáno, aktualizujte mezipaměť úložiště pomocí následujícího příkazu:

apt-get update -y

Dále nainstalujte SaltStack Minion pomocí následujícího příkazu:

apt-get install salt-minion -y

Po úspěšné instalaci upravte konfigurační soubor SaltStack Minion a definujte hlavní IP adresu.

nano /etc/salt/minion

Změňte následující řádek:

master:salt-master-ip

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

Dále budete muset ověřit miniony pomocí mistrova veřejného otisku prstu.

Na počítači Salt Master vypište všechny otisky pomocí následujícího příkazu:

salt-key --finger-all

Získáte následující výstup:

Místní klíče:master.pem:b7:f0:ed:19:bf:e8:e0:9d:c3:9c:a2:09:2c:97:2f:6b:0f:cb:eb:76:3d:d7:d5:a9:7d:0c:3a:60:6e:9f:d7:78master.pub:5e:4f:2b:37:41:cc:4b:9c:b0:ed:cb:0a:fb:c7:59:54:5f:11:34:ab:d2:99:96:c1:e7:ef:4d:95:b0:7c:d3:d1

Nyní zkopírujte řádek otisku master.pub a přidejte jej do konfiguračního souboru Minion.

Na počítači Minion upravte konfigurační soubor:

nano /etc/salt/minion

Přidejte hlavní otisk prstu, jak je znázorněno níže:

master_finger:'5e:4f:2b:37:41:cc:4b:9c:b0:ed:cb:0a:fb:c7:59:54:5f:11:34:ab:d2:99:96:c1:e7:ef:4d:95:b0:7c:d3:d1'

Budete také muset definovat jméno Miniona:

id:Minion1

Uložte a zavřete soubor a poté restartujte SaltStack Minion pomocí následujícího příkazu:

systemctl restart salt-minion

Stav zařízení SaltStack Minion můžete také ověřit pomocí následujícího příkazu:

stav systemctl salt-minion

Získáte následující výstup:

? salt-minion.service – The Salt Minion Načteno:načteno (/lib/systemd/system/salt-minion.service; povoleno; přednastaveno dodavatelem:povoleno) Aktivní:aktivní (běží) od So 2022-02-12 07:46:04 UTC; Před 7 s Dokumenty:man:salt-minion(1) file:///usr/share/doc/salt/html/contents.html https://docs.saltproject.io/en/latest/contents.html Hlavní PID:2324 (salt-minion) Úkoly:8 (limit:2341) Paměť:59,9M CPU:1,185s CGroup:/system.slice/salt-minion.service ??2324 /usr/bin/python3 /usr/bin/salt- minion ??2326 /usr/bin/python3 /usr/bin/salt-minion ??2328 /usr/bin/python3 /usr/bin/salt-minionFeb 12 07:46:04 debian11 systemd[1]:Starting The Salt Minion...Feb 12 07:46:04 debian11 systemd[1]:Spustil The Salt Minion.

Otisk miniona můžete také zkontrolovat pomocí následujícího příkazu:

salt-call key.finger --local

Získáte následující výstup:

local:14:12:ef:33:d2:1e:49:23:7b:a2:74:8d:19:fc:be:5e:6d:a6:57:ec:4f:a9:da :23:69:3f:62:1b:6b:4b:2f:27

Na počítači SaltStack Master porovnejte otisk pomocí následujícího příkazu:

salt-key --finger-all

Získáte následující výstup:

Místní klíče:master.pem:b7:f0:ed:19:bf:e8:e0:9d:c3:9c:a2:09:2c:97:2f:6b:0f:cb:eb:76:3d:d7:d5:a9:7d:0c:3a:60:6e:9f:d7:78master.pub:5e:4f:2b:37:41:cc:4b:9c:b0:ed:cb:0a:fb:c7:59:54:5f:11:34:ab:d2:99:96:c1:e7:ef:4d:95:b0:7c:d3:d1Nepřijaté klíče:Minion1:14:12:ef:33 :d2:1e:49:23:7b:a2:74:8d:19:fc:be:5e:6d:a6:57:ec:4f:a9:da:23:69:3f:62:1b:6b :4b:2f:27

Na SaltStack Master přijměte Miniona pomocí následujícího příkazu:

salt-key -a Minion1

Získáte následující výstup:

Budou přijaty následující klíče:Nepřijaté klíče:Minion1Pokračovat? [n/Y] YKey pro minion Minion1 přijat.

Nyní ověřte spojení mezi Masterem a Minionem pomocí následujícího příkazu:

salt Minion1 test.ping

Získáte následující výstup:

Minion1:Pravda

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Ovládejte přisluhovače z mistra

Po úspěšném spojení mezi Masterem a Minionem. Začněme provádět nějaké příkazy na Minionech.

Spuštěním následujícího příkazu zobrazíte seznam dostupného místa na disku na Minion:

salt '*' disk.usage

Získáte následující výstup:

Minion1:---------- /:---------- 1K-bloky:51538400 dostupných:47658628 kapacita:4% souborový systém:/dev/sda1 použité:1661604 /dev :---------- 1K-bloky:998936 dostupných:998936 kapacita:0% souborový systém:udev použitý:0 /dev/shm:---------- 1K-bloky:1015232 dostupných :1015152 kapacita:1 % souborový systém:použité tmpfs:80

Chcete-li nainstalovat balíček Apache na Minion, spusťte následující příkaz:

salt Minion1 pkg.install apache2

Získáte následující výstup:

Minion1:---------- apache2:---------- nové:2.4.52-1~deb11u2 staré:apache2-bin:-------- -- nové:2.4.52-1~deb11u2 staré:apache2-data:---------- nové:2.4.52-1~deb11u2 staré:apache2-utils:-------- -- nové:2.4.52-1~deb11u2 staré:libapr1:---------- nové:1.7.0-6+deb11u1 staré:libaprutil1:---------- nové:1.6.1-5 staré:libaprutil1-dbd-sqlite3:---------- nové:1.6.1-5 staré:libaprutil1-ldap:---------- nové:1.6. 1–5 starý:

Chcete-li zkontrolovat volnou paměť na Minionu, spusťte následující příkaz:

salt '*' cmd.run 'free -m'

Získáte následující výstup:

Minion1:celkem využitý bezplatný sdílený buff/mezipaměť:1982 140 1392 2 450 1691 Swap:0 0 0

Použití Salt State File ke správě minionů

Stavové soubory jsou také známé jako konfigurační soubory správy, které se používají ke konfiguraci a správě Minionů.

Chcete-li vytvořit soubor stavu, budete muset vytvořit základ prostředí pro SaltStack.

mkdir /src/salt

Dále vytvořte stavový soubor pomocí následujícího příkazu:

nano /src/salt/setup.sls

Přidejte následující kód pro instalaci balíčku PHP, UNZIP a Apache na Minions:

network_utilities:pkg.installed:- pkgs:- php - unzip apache2_pkg:pkg.installed:- name:apache2 apache2_service:service.running:- name:apache2 - enable:True - required:- pkg:apache2_pkg

Uložte a zavřete soubor a poté použijte konfiguraci na všechny Miniony pomocí následujícího příkazu:

salt '*' state.apply setup

Získáte následující výstup:

Minion1:---------- ID:network_utilities Funkce:pkg.installed Výsledek:True Komentář:Byly nainstalovány/aktualizovány následující balíčky:php, unzip Spuštěno:07:51:22.424504 Délka:17349,907 ms Změny:---------- libapache2-mod-php7.4:---------- nové:7.4.25-1+deb11u1 staré:php:------- --- nové:2:7.4+76 staré:php-běžné:---------- nové:2:76 staré:php7.4:---------- nové:7.4 .25-1+deb11u1 staré:php7.4-cli:---------- nové:7.4.25-1+deb11u1 staré:php7.4-běžné:---------- - Nový:7.4.25-1+deb11u1 staré:php7.4-json:---------- nové:7.4.25-1+deb11u1 staré:php7.4-opcache:--------- -- nové:7.4.25-1+deb11u1 staré:php7.4-readline:---------- nové:7.4.25-1+deb11u1 staré:psmisc:-------- -- nové:23.4-2 staré:rozbalit:---------- nové:6.0-26 staré:---------- ID:apache2_pkg Funkce:pkg.installed Název:apache2 Výsledek :Pravda Komentář:Všechny zadané balíčky jsou již nainstalovány Spuštěno:07:51:39.780956 Délka:1029,457 ms Změny:---------- ID:apache2_service Funkce:serv ice.running Jméno:apache2 Výsledek:Pravda Komentář:Služba apache2 již běží Spuštěno:07:51:40.812210 Délka:35,61 ms Změny:Souhrn pro Minion1------------Úspěšně:3 (změněno =1)Nezdařilo se:0------------ Celkový počet spuštěných stavů:3Celková doba běhu:18,415 s

Závěr

Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali SaltStack Master a Minion na serveru Debian 11. Také jsme vysvětlili, jak spravovat přisluhovače pomocí stavových souborů a příkazového řádku. Doufám, že vám to pomůže automatizovat a spravovat vaši infrastrukturu z centrálního místa. Pokud máte nějaké dotazy, neváhejte se mě zeptat.


Debian
  1. Jak nainstalovat a používat Ansible na Debian 11

  2. Jak nainstalovat a zabezpečit MariaDB na Debian 11

  3. Linux – sloučení /usr/bin A /usr/sbin do /bin (gnu/linux)?

  1. Jak nainstalovat Node.js a npm na Debian 11

  2. /usr/bin Vs /usr/local/bin Na Linuxu?

  3. Nainstalujte binární soubory do /bin, /sbin, /usr/bin a /usr/sbin, interakce s --prefix a DESTDIR

  1. Jaký je rozdíl mezi #!/usr/bin/env bash a #!/usr/bin/bash?

  2. Jak zajistit, aby příkaz python3 spouštěl Python 3.6 místo 3.5?

  3. Jaké jsou významy /usr/sbin, /usr/local/sbin a /usr/local/bin?