SaltStack with Pillars käyttö Ubuntussa 17.04

Vaikka SaltStack on loistava työkalu toimintojen suorittamiseen useilla palvelimilla samanaikaisesti, se tukee myös isäntäkohtaisia ​​määrityksiä, jotka on tallennettu ainutlaatuiseen tiedostoon ja joita kutsutaan edelleen "pilariksi". Tässä oppaassa kirjoitamme pienen SaltStack-kaavan Nginxin asentamiseen ja virtuaalisten isäntien käyttöönoton automatisoimiseen pilareilla.

Vaatimukset

  • Vultr-instanssi, jossa on Ubuntu 17.04 (master)
  • Kaksi Vultr-instanssia, joissa on Ubuntu 17.04 (minions)

Masterin asettaminen

Jos olet vasta aloittamassa etkä ole vielä määrittänyt SaltStack-masteriasi, tutustu tähän artikkeliin, jossa kerrotaan SaltStackin käytön aloittamisesta.

Kaava

Aloitamme luomalla kaavallemme kansion, joka sisältää edelleen SaltStackin toimintoihin tarvittavat tiedostot kätyriemme kanssa.

mkdir -p /srv/salt/nginx

Kansion luomisen jälkeen voimme jatkaa init.slstiedoston kirjoittamista, joka on olennainen osa jokaista kaavaa:

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

Kuten olet luultavasti huomannut, SaltStack käyttää Jinja-mallinnusmoottoria dynaamisten asetustiedostojen luomiseen. Tämä tarjoaa laajan valikoiman mahdollisuuksia määritysmallitiedostoissamme, kuten natiivi Python-koodin käyttämisen tai muuttujien asetusten ja vastaavien. Seuraava vaihe koostuu mallin luomisesta virtualhosts.conftiedostollemme, kun taas meidän on ensin luotava kansio:

mkdir -p /srv/salt/nginx/files

Kun kansio on luotu, voimme jatkaa virtualhosts.jinjatiedoston kirjoittamista :

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

Pilari

Kaavan luomisen jälkeen voimme edetä ja määrittää pilaripohjamme:

mkdir -p /srv/pillar/

Kaikki viittaukset tiettyä pilaritiedostoa vastaaviin isänteihin kirjoitetaan top.slstiedostoon juuri luomassamme hakemistossa. Esimerkissämme oletetaan, että isäntänimellä on kaksi kätyrilä, nginxwww1ja nginxwww2annamme niille molemmille yksilölliset pilaritiedostot:

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

Seuraavaksi jatkamme pilaritiedoston luomista varten, nginxwww1kun taas luomme vhost- palvelimen, joka kuuntelee porttia 81 toimialueelle example.com, dokumentin juurina /var/www/example_com/ja hakemistotiedostoina index.shtml:

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

Jatkamme pilaritiedoston luomista, nginxwww2kun taas luomme verkkotunnukselle porttiin 82 kuuntelevan vhost-laitteen example2.com, jossa asiakirjan juuri on /var/www/example2_com/ja indeksitiedostot ovat index.jsja index.css:

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

Huomautus: Pillar-tiedostot tallennetaan sisään/srv/pillar/

Käyttöönotto

Voimme nyt suorittaa ensimmäisen kokeilumme pilareilla päivittämällä ne kätyriimme:

salt '*' saltutil.refresh_pillar

Sen jälkeen voimme ajaa SaltStack-kaavan:

salt '*' state.sls nginx

Vahvistaa

Kun SaltStack kaava on ollut ajaa ja valmistui ilman virheitä, meidän pitäisi pystyä näkemään nginxkuuntelee porttia 81päälle nginxwww1ja portin 82päälle nginxwww2vahvistukseksi.

Johtopäätös

Tätä melko kevyttä mutta jo ennestään tehokasta SaltStack-kaavaa voidaan laajentaa lisäämällä HTTPS-tuki, mahdollisesti integroimalla Let's Encrypt, tuella CGI- tai PHP-taustaohjelmille ja kaikella, mitä voit tehdä myös manuaalisesti. Tämän oppaan olisi pitänyt antaa sinulle peruskäsitys SaltStack-kaavoista ja -pilareista, joita käytetään määritystiedostojen käyttöönotossa. Hyvää automatisointia!

Jätä kommentti

Koneiden nousu: tekoälyn todelliset sovellukset

Koneiden nousu: tekoälyn todelliset sovellukset

Tekoäly ei ole tulevaisuudessa, se tässä nykyisyydessä Tässä blogissa Lue kuinka tekoälysovellukset ovat vaikuttaneet eri sektoreihin.

DDOS-hyökkäykset: lyhyt katsaus

DDOS-hyökkäykset: lyhyt katsaus

Oletko myös DDOS-hyökkäysten uhri ja hämmentynyt ehkäisymenetelmistä? Lue tämä artikkeli ratkaistaksesi kysymyksesi.

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Olet ehkä kuullut, että hakkerit ansaitsevat paljon rahaa, mutta oletko koskaan miettinyt, kuinka he ansaitsevat tuollaista rahaa? keskustellaan.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Haluatko nähdä Googlen vallankumouksellisia keksintöjä ja kuinka nämä keksinnöt muuttivat jokaisen ihmisen elämää nykyään? Lue sitten blogia nähdäksesi Googlen keksinnöt.

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Konsepti itseohjautuvista autoista lähteä tielle tekoälyn avulla on ollut haaveena jo jonkin aikaa. Mutta useista lupauksista huolimatta niitä ei näy missään. Lue tämä blogi saadaksesi lisätietoja…

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Kun tiede kehittyy nopeasti ja ottaa haltuunsa suuren osan ponnisteluistamme, myös riskit altistaa itsemme selittämättömälle singulariteetille kasvavat. Lue, mitä singulaarisuus voisi tarkoittaa meille.

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Blogista saat tietää Big Data -arkkitehtuurin eri kerroksista ja niiden toiminnoista yksinkertaisimmalla tavalla.

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen säilytystavat ovat kehittyneet mahdollisesti Datan syntymästä lähtien. Tämä blogi käsittelee tiedon tallennuksen kehitystä infografian pohjalta.

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

Tässä digitaalisessa maailmassa kodin älylaitteista on tullut tärkeä osa elämää. Tässä on muutamia älykkäiden kodin laitteiden hämmästyttäviä etuja, joiden avulla ne tekevät elämästämme elämisen arvoista ja yksinkertaisempaa.

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

Apple julkaisi äskettäin macOS Catalina 10.15.4 -lisäpäivityksen ongelmien korjaamiseksi, mutta näyttää siltä, ​​että päivitys aiheuttaa lisää ongelmia, jotka johtavat mac-koneiden tiilikaamiseen. Lue tämä artikkeli saadaksesi lisätietoja