SaltStack izmantošana ar pīlāriem Ubuntu 17.04

Lai gan SaltStack ir lielisks rīks darbību veikšanai daudzos serveros vienlaikus, tas atbalsta arī katram resursdatoram definētus konfigurācijas sākotnējos iestatījumus, kas tiek glabāti unikālā failā, ko tālāk sauc par "pīlāru". Šajā rokasgrāmatā mēs uzrakstīsim nelielu SaltStack formulu Nginx instalēšanai un virtuālo saimniekdatoru izvietošanas automatizēšanai, izmantojot pīlārus.

Prasības

  • Vultr instance, kurā darbojas Ubuntu 17.04 (galvenais)
  • Divi Vultr gadījumi, kuros darbojas Ubuntu 17.04 (minioni)

Meistara iestatīšana

Ja jūs tikko sākat darbu un vēl neesat iestatījis savu SaltStack galveno, skatiet šo rakstu, kurā ir paskaidrots, kā sākt darbu ar SaltStack.

Formula

Mēs sākam ar mapes izveidi mūsu formulai, kurā tālāk tiek glabāti faili, kas nepieciešami SaltStack darbībām mūsu minionos.

mkdir -p /srv/salt/nginx

Pēc mapes izveidošanas mēs varam turpināt rakstīt init.slsfailu, kas ir katras formulas būtiska sastāvdaļa:

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

Kā jūs droši vien pamanījāt, SaltStack dinamisku konfigurācijas failu ģenerēšanai izmanto Jinja veidņu dzinēju. Tas nodrošina plašu iespēju klāstu mūsu konfigurācijas veidņu failos, piemēram, piekļuvi vietējam Python kodam vai iestatīšanas mainīgajiem un tamlīdzīgi. Nākamais solis ir mūsu virtualhosts.conffaila veidnes izveide , savukārt vispirms mums ir jāizveido mape:

mkdir -p /srv/salt/nginx/files

Kad mape ir izveidota, mēs varam turpināt rakstīt virtualhosts.jinjafailu:

{% 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 %}

Pīlārs

Pēc formulas izveidošanas mēs varam turpināt un iestatīt savu pīlāra bāzi:

mkdir -p /srv/pillar/

Visas atsauces uz saimniekdatoriem, kas atbilst konkrētam pīlāra failam, tiek ierakstītas top.slsfailā tikko izveidotajā direktorijā. Mūsu piemērā mēs pieņemam, ka ar resursdatora nosaukumu pastāv divi minioni, nginxwww1un nginxwww2mēs tiem piešķirsim abus unikālus pīlāra failus:

base:
  'id:nginxwww1':
    - match: grain
    - nginxwww1
  'id:nginxwww2':
    - match: grain
    - nginxwww2

Tālāk mēs turpināsim izveidot pīlāra failu, nginxwww1savukārt domēnam izveidosim vhost, kas klausās 81. portā example.com, un dokumenta sakne ir /var/www/example_com/un indeksa faili ir index.shtml:

vhosts:
    -
      listenPort: '81'
      serverName: 'example.com'
      documentRoot: '/var/www/example_com'
      indexFiles:
        - index.shtml

Mēs turpināsim izveidot pīlāra failu, nginxwww2savukārt domēnam izveidosim vhost, kas klausās portā 82 example2.com, dokumenta sakne ir /var/www/example2_com/un indeksa faili ir index.jsun index.css:

vhosts:
    -
      listenPort: '82'
      serverName: 'example2.com'
      documentRoot: '/var/www/example2_com'
      indexFiles:
        - index.js
        - index.css

Piezīme. Pillar faili tiek glabāti/srv/pillar/

Izvietošana

Tagad mēs varam pabeigt savu pirmo mēģinājumu ar pīlāriem, atjauninot tos mūsu palīgos:

salt '*' saltutil.refresh_pillar

Pēc tam mēs varam palaist SaltStack formulu:

salt '*' state.sls nginx

Apstiprināšana

Kad SaltStack formula ir palaist un pabeigt bez kļūdām, mums būtu iespēja redzēt nginxklausīšanos par ostas 81uz nginxwww1un ostas 82uz nginxwww2kā apstiprinājumu.

Secinājums

Šo diezgan vieglo, bet jau jaudīgo SaltStack formulu var vēl vairāk paplašināt, lai pievienotu HTTPS atbalstu, iespējams, integrējot Let's Encrypt, atbalstu CGI vai PHP aizmugursistēmai un visu, ko varat darīt arī manuāli. Šai rokasgrāmatai vajadzēja sniegt jums pamatideju par SaltStack formulām un pīlāriem, kas tiek izmantoti konfigurācijas failu izvietošanai. Laimīgu automatizāciju!


Kā instalēt Jenkins operētājsistēmā CentOS 7

Kā instalēt Jenkins operētājsistēmā CentOS 7

Jenkins ir populārs atvērtā pirmkoda CI (Continuous Integration) rīks, ko plaši izmanto projektu izstrādei, izvietošanai un automatizācijai. Šis raksts tiks

Kā instalēt un konfigurēt Concourse CI Ubuntu 16.04

Kā instalēt un konfigurēt Concourse CI Ubuntu 16.04

Vai izmantojat citu sistēmu? Ievads Nepārtrauktā integrācija ir DevOps programmatūras izstrādes prakse, kas ļauj izstrādātājiem bieži apvienot

Kā instalēt un konfigurēt Ansible operētājsistēmā Debian 9 lietošanai ar Windows Server

Kā instalēt un konfigurēt Ansible operētājsistēmā Debian 9 lietošanai ar Windows Server

Vai izmantojat citu sistēmu? Ansible ir atvērtā pirmkoda rīks uzdevumu automatizēšanai. Tas pārvalda jūsu Linux un Windows serveru konfigurāciju. Tas strādā

Kā instalēt un konfigurēt GoCD operētājsistēmā CentOS 7

Kā instalēt un konfigurēt GoCD operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? GoCD ir atvērtā koda nepārtrauktas piegādes un automatizācijas sistēma. Tas ļauj modelēt sarežģītas darbplūsmas, izmantojot tās paralēlo an

SaltStack izmantošana ar pīlāriem Ubuntu 17.04

SaltStack izmantošana ar pīlāriem Ubuntu 17.04

Lai gan SaltStack ir lielisks rīks darbību veikšanai daudzos serveros vienlaikus, tas atbalsta arī katram resursdatoram definētus konfigurācijas sākotnējos iestatījumus, kas saglabāti

Kā instalēt un konfigurēt Ansible operētājsistēmā CentOS 7 lietošanai ar Windows Server

Kā instalēt un konfigurēt Ansible operētājsistēmā CentOS 7 lietošanai ar Windows Server

Vai izmantojat citu sistēmu? Ansible ir atvērtā pirmkoda rīks uzdevumu automatizēšanai. Tas pārvalda jūsu Linux un Windows serveru konfigurāciju. Tas strādā

How to Install Drone CI on Ubuntu 18.04

How to Install Drone CI on Ubuntu 18.04

Introduction Drone is an automated, continuous testing and delivery platform which runs on your own infrastructure. Drone supports any language, service o

Vultr Load Balancers

Vultr Load Balancers

Kas ir slodzes līdzsvarotājs Slodzes līdzsvarotāji atrodas jūsu lietojumprogrammas priekšā un sadala ienākošo trafiku vairākos jūsu lietojumprogrammas gadījumos. Fo

Kā instalēt Foreman operētājsistēmā CentOS 7

Kā instalēt Foreman operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Foreman ir bezmaksas atvērtā koda rīks, kas palīdz konfigurēt un pārvaldīt fiziskos un virtuālos serverus. Forema

Kā instalēt SaltStack operētājsistēmā CentOS 7

Kā instalēt SaltStack operētājsistēmā CentOS 7

SaltStack jeb Salt ir populārs atvērtā pirmkoda konfigurācijas pārvaldības risinājums, ko var izmantot attālinātas izpildes, konfigurācijas pārvaldības, kodēšanas ieviešanai.

Kā instalēt Strider kompaktdisku Ubuntu 18.04

Kā instalēt Strider kompaktdisku Ubuntu 18.04

Ievads Strider CD ir atvērtā koda nepārtrauktas izvietošanas platforma. Lietojumprogramma ir rakstīta Node.js un izmanto MongoDB kā krātuves aizmugursistēmu. Solis

Chocolatey Package Manager izmantošana operētājsistēmā Windows

Chocolatey Package Manager izmantošana operētājsistēmā Windows

Ievads Chocolatey nodrošina pakotņu pārvaldību, kas atvieglo programmatūras un atkarību administrēšanu operētājsistēmā Linux sistēmā Windows. Jūs varat ātri un viegli

Momentuzņēmumu izveide, izmantojot pakotāju

Momentuzņēmumu izveide, izmantojot pakotāju

Kas ir Packer? Packer ir servera attēlveidošanas rīks, ko izstrādājis HashiCorp. Servera attēlveidošana; vai alternatīvi, nemainīga infrastruktūra; ir populāra alternatīva

Kā instalēt un konfigurēt Concourse CI operētājsistēmā CentOS 7

Kā instalēt un konfigurēt Concourse CI operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Ievads Nepārtrauktā integrācija ir DevOps programmatūras izstrādes prakse, kas ļauj izstrādātājiem bieži apvienot

Chef-solo izmantošana, lai konfigurētu Django lietotni Ubuntu

Chef-solo izmantošana, lai konfigurētu Django lietotni Ubuntu

Ir daudzi veidi, kā automatizēt kastes iestatīšanas un konfigurēšanas procesu. Kādu iemeslu dēļ, ja visa mūsu sistēma šobrīd sastāv no tikai

Kā instalēt Foreman Ubuntu 16.04 LTS

Kā instalēt Foreman Ubuntu 16.04 LTS

Vai izmantojat citu sistēmu? Foreman ir bezmaksas atvērtā koda rīks, kas palīdz konfigurēt un pārvaldīt fiziskos un virtuālos serverus. Forema

Darba sākšana ar SaltStack uz Ubuntu 17.04

Darba sākšana ar SaltStack uz Ubuntu 17.04

SaltStack ir uz python balstīta konfigurācijas pārvaldības programma, kas ir optimizēta konfigurācijas failu, izvietošanas un visa cita unde automatizācijai.

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk