Noțiuni introductive cu SaltStack pe Ubuntu 17.04
SaltStack este un program de gestionare a configurațiilor bazat pe python, care este optimizat pentru automatizarea fișierelor de configurare, implementări și orice altceva unde
În timp ce SaltStack este un instrument excelent pentru a rula operațiuni pe mai multe servere simultan, acesta acceptă și presetări de configurare definite per gazdă, stocate într-un fișier unic, care mai sunt numite „pilon”. În acest ghid, vom scrie o mică formulă SaltStack pentru instalarea Nginx și automatizarea implementării gazdelor virtuale folosind stâlpi.
Dacă tocmai începeți și nu ați configurat încă maestrul SaltStack, consultați acest articol care explică cum să începeți cu SaltStack.
Începem cu crearea dosarului pentru formula noastră, care deține în continuare fișierele necesare pentru operațiunile SaltStack pe minionișii noștri.
mkdir -p /srv/salt/nginx
După crearea dosarului, putem continua cu scrierea init.sls
fișierului care este o parte esențială a fiecărei formule:
nginx:
pkg:
- installed
/etc/nginx/sites-enabled/virtualhosts.conf:
file.managed:
- source: salt://nginx/files/virtualhosts.jinja
- template: jinja
- user: root
- group: root
- mode: 655
cmd:
- run
- names:
- service nginx restart
După cum probabil ați observat, SaltStack utilizează motorul de plantare Jinja pentru a genera fișiere de configurare dinamice. Aceasta oferă o gamă largă de posibilități în fișierele de șabloane de configurare, cum ar fi accesarea codului Python nativ sau la variabile de setare și similare. Următorul pas constă în crearea șablonului pentru virtualhosts.conf
fișierul nostru , în timp ce mai întâi trebuie să creăm folderul:
mkdir -p /srv/salt/nginx/files
Odată ce folderul este creat, putem continua cu scrierea virtualhosts.jinja
fișierului:
{% for vhost in pillar['vhosts'] %}
server {
listen {{ vhost['listenPort'] }};
server_name {{ vhost['serverName'] }};
root {{ vhost['documentRoot'] }};
index {%- for index in vhost['indexFiles'] -%}{{ index }}{%- endfor -%};
location / {
try_files $uri $uri/ =404;
}
}
{% endfor %}
După crearea formulei, putem merge înainte și configura baza pilonului nostru:
mkdir -p /srv/pillar/
Orice referințe pentru gazde care se potrivesc cu un anumit fișier pilon sunt scrise în top.sls
fișier în directorul pe care tocmai l-am creat. În exemplul nostru, presupunem că două minioni există cu numele de gazdă nginxwww1
și în nginxwww2
timp ce le vom atribui ambelor fișiere de pilon unice:
base:
'id:nginxwww1':
- match: grain
- nginxwww1
'id:nginxwww2':
- match: grain
- nginxwww2
În continuare, vom continua cu crearea unui fișier pilon pentru nginxwww1
că vom crea o audiere vhost pe portul 81 pentru domeniu example.com
, rădăcina documentului fiind /var/www/example_com/
și fișierele index fiind index.shtml
:
vhosts:
-
listenPort: '81'
serverName: 'example.com'
documentRoot: '/var/www/example_com'
indexFiles:
- index.shtml
Vom continua cu crearea unui fișier pilon pentru nginxwww2
că vom crea o ascultare vhost pe portul 82 pentru domeniu example2.com
, rădăcina documentului fiind /var/www/example2_com/
și fișierele index fiind index.js
și index.css
:
vhosts:
-
listenPort: '82'
serverName: 'example2.com'
documentRoot: '/var/www/example2_com'
indexFiles:
- index.js
- index.css
Notă: Fișierele pilon sunt stocate în interior/srv/pillar/
Acum putem completa prima încercare cu piloni, actualizându-i pe minionii noștri:
salt '*' saltutil.refresh_pillar
După aceea, putem rula formula SaltStack:
salt '*' state.sls nginx
Odată cu formula SaltStack a fost rulat și completat fără erori, ar trebui să putem vedea de nginx
ascultare pe portul de 81
pe nginxwww1
și pe portul 82
la nginxwww2
confirmarea.
Această formulă destul de ușoară, dar deja puternică, SaltStack, poate fi extinsă suplimentar pentru a adăuga suport pentru HTTPS, eventual cu o integrare a Let's Encrypt, asistență pentru back-up-uri CGI sau PHP și tot ceea ce puteți face manual. Acest ghid ar fi trebuit să vă ofere o idee de bază a formulelor SaltStack și a pilonilor utilizați pentru implementarea fișierelor de configurare. Automatizări fericite!
SaltStack este un program de gestionare a configurațiilor bazat pe python, care este optimizat pentru automatizarea fișierelor de configurare, implementări și orice altceva unde
Folosind un sistem diferit? GoCD este un sistem de livrare și automatizare continuă a surselor deschise. Vă permite să modelați fluxuri de lucru complexe folosind paralelul său
Jenkins este un instrument popular de sursă deschisă (integrare continuă), care este utilizat pe scară largă pentru dezvoltarea proiectului, implementare și automatizare. Acest articol wil
Introducere Drone este o platformă automatizată, continuă de testare și livrare, care rulează pe propria infrastructură. Drone acceptă orice limbă, serviciu
Există multe modalități de a automatiza procesul de configurare și configurare a unei casete. Pentru orice motiv, dacă întregul nostru sistem în acest moment cuprinde doar
Ce este un echilibru de încărcare Balanții de încărcare stau în fața aplicației și distribuie traficul primit pe mai multe instanțe ale aplicației. Fo
Folosind un sistem diferit? Ansible este un instrument open source pentru automatizarea sarcinilor. Gestionează configurația serverelor Linux și Windows. Functioneaza
Introducere Strider CD este o platformă de implementare continuă a surselor deschise. Aplicația este scrisă în Node.js și folosește MongoDB ca backend de stocare. Pas
SaltStack, sau Salt, este o soluție populară de gestionare a configurației open source, care poate fi folosită pentru a implementa execuția de la distanță, gestionarea configurației, codul
Folosind un sistem diferit? Ansible este un instrument open source pentru automatizarea sarcinilor. Gestionează configurația serverelor Linux și Windows. Functioneaza
Ce este Packer? Packer este un instrument de imagini pe server dezvoltat de HashiCorp. Imagistica server; sau, alternativ, infrastructură imuabilă; este un alternativ popular
Introducere Chocolatey aduce managementul pachetelor care facilitează administrarea software-ului și a dependențelor pe Linux, la Windows. Puteți rapid și ușura
Folosind un sistem diferit? Foreman este un instrument gratuit și open source care vă ajută la configurarea și gestionarea serverelor fizice și virtuale. Forema
Folosind un sistem diferit? Foreman este un instrument gratuit și open source care vă ajută la configurarea și gestionarea serverelor fizice și virtuale. Forema
Folosind un sistem diferit? Introducere Integrarea continuă este o practică de dezvoltare a software-ului DevOps care permite dezvoltatorilor să se unească frecvent cu cel de-al treilea
Folosind un sistem diferit? Introducere Integrarea continuă este o practică de dezvoltare a software-ului DevOps care permite dezvoltatorilor să se unească frecvent cu cel de-al treilea
O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.
Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.
Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.
Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.
CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?
Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.
Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!
Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.
Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe