Kom godt i gang med SaltStack på Ubuntu 17.04

SaltStack er et python-baseret konfigurationsstyringsprogram, som er optimeret til automatisering af konfigurationsfiler, implementeringer og alt muligt andet under det softwaredefinerede datacenteremne. I denne guide lærer du, hvordan du kommer i gang med SaltStack, tilføjer dine første noder og skriver din første formel.

Krav

  • Vultr-instans, der kører Ubuntu 17.04 (master)
  • Vultr-instans, der kører Ubuntu 17.04 (minion)

Terminologi

SaltStack bruger nogle få nøgleord, der repræsenterer en bestemt enhed eller konfiguration, som forklaret nedenfor:

Mestre

Dette er hovedinstansen, som forbinder til alle servere, der er tilføjet til din SaltStack "cluster", og dermed også kører eventuelle kommandoer/kommunikation til dine servere.

Minion

De servere, der føjes til din SaltStack, kaldes minions. Enhver handling udføres enten på én, en gruppe eller alle dine håndlangere.

Formel

En formel repræsenterer en fil eller et sæt filer, som introducerer håndlangere, hvilke kommandoer der skal udføres. Dette kan være installation af en enkelt applikation såsom nginxeller udrulning af konfigurationsfiler osv.

Søjle

En søjle er en fil, der gemmer information relateret til en gruppe af håndlangere eller en enkelt håndlangere. Som et eksempel ville du bruge denne slags fil til at gemme "Virtual-Hosts" for Nginx for en bestemt minion.

Server opsætning

Mestre

Først vil vi starte med at opsætte masteren til vores SaltStack-klynge:

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

Som standard lytter SaltStack-mesteren ikke på nogen grænseflader, da masteren dog normalt kommunikerer med håndlangere over det offentlige internet. Vi er nødt til at lave en lille ændring i konfigurationsfilen, som kan findes på /etc/salt/master:

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

Efter ændringerne er blevet skrevet til filen, genstart mastertjenesten:

service salt-master restart

Minion

Vi kan nu fortsætte med at tilføje vores første håndlangere. Gå ligeud og installer de nødvendige pakker:

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

Dernæst skal vi lave endnu en lille ændring i minions SaltStack-konfiguration, som kan findes 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>

Erstat <master_server_ip>med IP-adressen på din masterserver som tidligere opsat. Ideelt set ville du dog opsætte en DNS-record for dette for at gøre det nemmere at ændre masterserveren.

Bagefter skal vi genstarte minion-tjenesten for at ændringerne bliver aktive:

service salt-minion restart

SaltStack master operationer

Vi har nu en fungerende master og minion sat op, så vi direkte kan gå videre og arbejde med et lille sæt af SaltStack-kommandoer på masteren.

Viser alle håndlangere

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

Bemærk: Vi har allerede fortalt minion, hvilken masterserver den skal forbinde til. Derfor, hvis du har fulgt denne vejledning, ville du allerede se minion under Unaccepted Keys:afsnittet.

At acceptere en uaccepteret håndlangere

# salt-key -a <minion_id>

Accepterer alle uaccepterede håndlangere

# salt-key -A

Fjernelse af en håndlangere

# salt-key -d <minion_id>

Bemærk: <minion_id> repræsenterer normalt UNIX-værtsnavnet på din(e) minion(er) og er gemt i /etc/salt/minion_idfilen på minion(erne).

Oprettelse af din første formel

Efter at have tilføjet vores minion til masteren, kan vi fortsætte med at skrive vores første formel. I første omgang skal vi oprette den mappe, der gemmer vores formler:

mkdir -p /srv/salt/

Opret mappen til vores første formel:

mkdir -p /srv/salt/nginx

Grundlæggende er alle instruktioner til en formel gemt i init.slsfilen, f.eks /srv/salt/nginx/init.sls. Da der er en enorm mængde af operationer, der kan udføres gennem en formel, vil vi skrive en lille formel, som installerer Nginx:

nginx:
  pkg:
    - installed

Kører din første formel

Efter at have skrevet ind i init.slsfilen som forklaret ovenfor, kan vi gå videre og køre den:

salt '*' state.sls nginx

Bemærk: nginx repræsenterer navnet på den mappe, vi tidligere har oprettet.

Konklusion

SaltStack er en meget god software til at automatisere enhver form for konfigurationsfiler, serviceimplementeringer, indledende server-udrulninger og lignende. På grund af det faktum, at SaltStack er baseret på Python, kan du også nemt tilføje dine egne moduler, hvis du er flydende med sproget. God automatisering!

Efterlad en kommentar

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.

DDOS-angreb: et kort overblik

DDOS-angreb: et kort overblik

Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.

Funktioner af Big Data Reference Architecture Layers

Funktioner af Big Data Reference Architecture Layers

Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.

Udvikling af datalagring – Infografik

Udvikling af datalagring – Infografik

Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af ​​dataene. Denne blog dækker udviklingen af ​​datalagring på basis af en infografik.

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af ​​mac-maskiner. Læs denne artikel for at lære mere