Komma igång med SaltStack på Ubuntu 17.04

SaltStack är ett pythonbaserat konfigurationshanteringsprogram som är optimerat för automatisering av konfigurationsfiler, distributioner och allt annat under det programvarudefinierade datacenterämnet. I den här guiden lär du dig hur du kommer igång med SaltStack, lägger till dina första noder och skriver din första formel.

Krav

  • Vultr-instans som kör Ubuntu 17.04 (master)
  • Vultr-instans som kör Ubuntu 17.04 (minion)

Terminologi

SaltStack använder några nyckelord som representerar en viss enhet eller konfiguration, som förklaras nedan:

Bemästra

Detta är huvudinstansen som ansluter till alla servrar som läggs till ditt SaltStack "kluster", och kör därmed även eventuella kommandon/kommunikation till dina servrar.

Gunstling

Servrarna som läggs till din SaltStack kallas minions. Alla åtgärder utförs antingen på en, en grupp eller alla dina undersåtar.

Formel

En formel representerar en fil eller en uppsättning filer som introducerar handhavarna vilka kommandon som bör utföras. Detta kan vara installation av en enskild applikation som nginxeller utrullning av konfigurationsfiler, etc.

Pelare

En pelare är en fil som lagrar information relaterad till en grupp av minions eller en enda minion. Som ett exempel skulle du använda den här typen av fil för att lagra "Virtual-Hosts" för Nginx för en viss minion.

Serverinställning

Bemästra

Först börjar vi med att ställa in mastern för vårt SaltStack-kluster:

apt-get update
apt-get dist-upgrade
apt-get install salt-master

Som standard lyssnar SaltStack-mästaren inte på några gränssnitt, eftersom mästaren vanligtvis kommunicerar med hantlangarna över det offentliga internet dock. Vi måste göra en liten ändring i konfigurationsfilen som finns på /etc/salt/master:

# The address of the interface to bind to:
interface: 0.0.0.0

Efter att ändringarna har skrivits till filen, starta om mastertjänsten:

service salt-master restart

Gunstling

Vi kan nu fortsätta med att lägga till vår första minion. Gå rakt fram och installera de nödvändiga paketen:

apt-get update
apt-get dist-upgrade
apt-get install salt-minion

Därefter måste vi göra ytterligare en liten förändring i minions SaltStack-konfiguration som kan hittas på /etc/salt/minion:

# Set the location of the salt master server. If the master server cannot be
# resolved, then the minion will fail to start.
master: <master_server_ip>

Ersätt <master_server_ip>med IP-adressen för din huvudserver som tidigare konfigurerats. Helst skulle du dock ställa in en DNS-post för detta, för att göra det enklare att byta huvudserver.

Efteråt måste vi starta om miniontjänsten för att ändringarna ska bli aktiva:

service salt-minion restart

SaltStack master operationer

Vi har nu en fungerande master och minion inställd, så vi kan direkt gå vidare och arbeta med en liten uppsättning av SaltStack-kommandona på mastern.

Visar alla hantlangare

# salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
Rejected Keys:

Notera: Vi har redan berättat för minion vilken masterserver den ska ansluta till. Därför, om du har följt den här guiden, skulle du redan se minion under Unaccepted Keys:avsnittet.

Acceptera en oaccepterad minion

# salt-key -a <minion_id>

Accepterar alla oaccepterade undersåtar

# salt-key -A

Ta bort en minion

# salt-key -d <minion_id>

Obs: <minion_id> representerar vanligtvis UNIX-värdnamnet för din(a) minion(s) och lagras i /etc/salt/minion_idfilen på minion(erna).

Skapa din första formel

Efter att ha lagt till vår minion till mästaren kan vi fortsätta med att skriva vår första formel. Till en början måste vi skapa mappen som lagrar våra formler:

mkdir -p /srv/salt/

Skapa mappen för vår första formel:

mkdir -p /srv/salt/nginx

I princip lagras alla instruktioner för en formel i init.slsfilen, till exempel /srv/salt/nginx/init.sls. Eftersom det finns en enorm mängd operationer som kan utföras genom en formel, kommer vi att skriva en liten formel som installerar Nginx:

nginx:
  pkg:
    - installed

Kör din första formel

Efter att ha skrivit in i init.slsfilen som förklarats ovan kan vi köra den:

salt '*' state.sls nginx

Obs: nginx representerar namnet på mappen som vi har skapat tidigare.

Slutsats

SaltStack är en mycket bra programvara för att automatisera alla typer av konfigurationsfiler, tjänstedistributioner, initiala serverutrullningar och liknande. På grund av att SaltStack är baserat på Python kan du enkelt lägga till dina egna moduler också, om du är flytande i språket. Lycka till med automatiseringen!


Hur man installerar Jenkins på CentOS 7

Hur man installerar Jenkins på CentOS 7

Jenkins är ett populärt CI-verktyg (Continuous Integration) med öppen källkod som används i stor utsträckning för projektutveckling, implementering och automatisering. Denna artikel vill

Hur man installerar och konfigurerar Concourse CI på Ubuntu 16.04

Hur man installerar och konfigurerar Concourse CI på Ubuntu 16.04

Använder du ett annat system? Introduktion Continuous Integration är en DevOps mjukvaruutvecklingspraxis som gör det möjligt för utvecklarna att ofta slå samman

Hur man installerar och konfigurerar Ansible på Debian 9 för användning med Windows Server

Hur man installerar och konfigurerar Ansible på Debian 9 för användning med Windows Server

Använder du ett annat system? Ansible är ett verktyg med öppen källkod för att automatisera uppgifter. Den hanterar konfigurationen av dina Linux- och Windows-servrar. Det Fungerar

Hur man installerar och konfigurerar GoCD på CentOS 7

Hur man installerar och konfigurerar GoCD på CentOS 7

Använder du ett annat system? GoCD är ett system för kontinuerlig leverans och automatisering med öppen källkod. Den låter dig modellera komplexa arbetsflöden med hjälp av dess parallella an

Använda SaltStack med pelare på Ubuntu 17.04

Använda SaltStack med pelare på Ubuntu 17.04

Även om SaltStack är ett utmärkt verktyg för att köra operationer på många servrar samtidigt, stöder det också per-värddefinierade konfigurationsförinställningar lagrade i en

Hur man installerar och konfigurerar Ansible på CentOS 7 för användning med Windows Server

Hur man installerar och konfigurerar Ansible på CentOS 7 för användning med Windows Server

Använder du ett annat system? Ansible är ett verktyg med öppen källkod för att automatisera uppgifter. Den hanterar konfigurationen av dina Linux- och Windows-servrar. Det Fungerar

Hur man installerar Drone CI på Ubuntu 18.04

Hur man installerar Drone CI på Ubuntu 18.04

Inledning Drone är en automatiserad, kontinuerlig test- och leveransplattform som körs på din egen infrastruktur. Drönare stöder alla språk, tjänster o

Vultr Load Balancers

Vultr Load Balancers

Vad är en lastbalanserare Load Balancers sitter framför din applikation och distribuerar inkommande trafik över flera instanser av din applikation. Fo

Hur man installerar Foreman på CentOS 7

Hur man installerar Foreman på CentOS 7

Använder du ett annat system? Foreman är ett gratis och öppen källkodsverktyg som hjälper dig med konfiguration och hantering av fysiska och virtuella servrar. Forema

Hur man installerar SaltStack på CentOS 7

Hur man installerar SaltStack på CentOS 7

SaltStack, eller Salt, är en populär lösning för konfigurationshantering med öppen källkod som kan användas för att implementera fjärrexekvering, konfigurationshantering, torsk

Hur man installerar Strider CD på Ubuntu 18.04

Hur man installerar Strider CD på Ubuntu 18.04

Inledning Strider CD är en plattform för kontinuerlig distribution med öppen källkod. Applikationen är skriven i Node.js och använder MongoDB som lagringsbackend. Kliva

Använda Chocolatey Package Manager på Windows

Använda Chocolatey Package Manager på Windows

Inledning Chocolatey tar med pakethantering som gör det enkelt att administrera programvara och beroenden på Linux, till Windows. Du kan snabbt och enkelt

Skapa ögonblicksbilder med Packer

Skapa ögonblicksbilder med Packer

Vad är Packer? Packer är ett serverbildverktyg utvecklat av HashiCorp. Serveravbildning; eller alternativt oföränderlig infrastruktur; är ett populärt alternativ

Hur man installerar och konfigurerar Concourse CI på CentOS 7

Hur man installerar och konfigurerar Concourse CI på CentOS 7

Använder du ett annat system? Introduktion Continuous Integration är en DevOps mjukvaruutvecklingspraxis som gör det möjligt för utvecklarna att ofta slå samman

Använder Chef-solo för att konfigurera en Django-app på Ubuntu

Använder Chef-solo för att konfigurera en Django-app på Ubuntu

Det finns många sätt att automatisera processen för att ställa in och konfigurera en box. Av någon anledning, om hela vårt system vid denna tidpunkt består av bara

Hur man installerar Foreman på Ubuntu 16.04 LTS

Hur man installerar Foreman på Ubuntu 16.04 LTS

Använder du ett annat system? Foreman är ett gratis och öppen källkodsverktyg som hjälper dig med konfiguration och hantering av fysiska och virtuella servrar. Forema

Komma igång med SaltStack på Ubuntu 17.04

Komma igång med SaltStack på Ubuntu 17.04

SaltStack är ett pythonbaserat konfigurationshanteringsprogram som är optimerat för automatisering av konfigurationsfiler, distributioner och allt annat

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.

DDOS-attacker: En kort översikt

DDOS-attacker: En kort översikt

Är du också ett offer för DDOS-attacker och förvirrad över de förebyggande metoderna? Läs den här artikeln för att lösa dina frågor.

Har du någonsin undrat hur hackare tjänar pengar?

Har du någonsin undrat hur hackare tjänar pengar?

Du kanske har hört att hackare tjänar mycket pengar, men har du någonsin undrat hur de tjänar den typen av pengar? låt oss diskutera.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Vill du se revolutionerande uppfinningar av Google och hur dessa uppfinningar förändrade livet för varje människa idag? Läs sedan till bloggen för att se uppfinningar av Google.

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Konceptet med att självkörande bilar ska ut på vägarna med hjälp av artificiell intelligens är en dröm vi har ett tag nu. Men trots flera löften finns de ingenstans att se. Läs den här bloggen för att lära dig mer...

Technological Singularity: A Distant Future of Human Civilization?

Technological Singularity: A Distant Future of Human Civilization?

När vetenskapen utvecklas i snabb takt och tar över en hel del av våra ansträngningar, ökar också riskerna för att utsätta oss för en oförklarlig singularitet. Läs, vad singularitet kan betyda för oss.

Utveckling av datalagring – Infographic

Utveckling av datalagring – Infographic

Lagringsmetoderna för data har utvecklats kan vara sedan födelsen av data. Den här bloggen tar upp utvecklingen av datalagring på basis av en infografik.

Funktioner för Big Data Reference Architecture Layers

Funktioner för Big Data Reference Architecture Layers

Läs bloggen för att känna till olika lager i Big Data Architecture och deras funktionaliteter på enklaste sätt.

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

I denna digitala värld har smarta hemenheter blivit en avgörande del av livet. Här är några fantastiska fördelar med smarta hemenheter om hur de gör vårt liv värt att leva och enklare.

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

Nyligen släppte Apple macOS Catalina 10.15.4, en tilläggsuppdatering för att åtgärda problem, men det verkar som om uppdateringen orsakar fler problem som leder till att mac-datorer blir murade. Läs den här artikeln för att lära dig mer