Përdorimi i SaltStack With Pillars në Ubuntu 17.04

Ndërsa SaltStack është një mjet i shkëlqyeshëm për ekzekutimin e operacioneve në shumë serverë njëkohësisht, ai gjithashtu mbështet paracaktimet e konfigurimit të përcaktuara për host të ruajtur në një skedar unik të quajtur më tej "shtylla". Në këtë udhëzues, ne do të shkruajmë një formulë të vogël SaltStack për instalimin e Nginx dhe automatizimin e vendosjes së hosteve virtualë duke përdorur shtylla.

Kërkesat

  • Shembull Vultr që ekzekuton Ubuntu 17.04 (master)
  • Dy raste të Vultr që ekzekutojnë Ubuntu 17.04 (minions)

Kryerja e konfigurimit

Nëse sapo po filloni dhe nuk e keni konfiguruar ende masterin tuaj të SaltStack, shikoni këtë artikull i cili shpjegon se si të filloni me SaltStack.

Formula

Ne fillojmë me krijimin e dosjes për formulën tonë e cila më tej mban skedarët e kërkuar për operacionet e SaltStack në minionët tanë.

mkdir -p /srv/salt/nginx

Pas krijimit të dosjes, ne mund të vazhdojmë me shkrimin e init.slsskedarit i cili është një pjesë thelbësore e çdo 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

Siç e keni vënë re ndoshta, SaltStack përdor motorin e modelimit Jinja për gjenerimin e skedarëve dinamikë të konfigurimit. Kjo ofron një gamë të gjerë mundësish brenda skedarëve tanë të modelit të konfigurimit, të tilla si qasja në kodin vendas të Python ose vendosja e variablave dhe të ngjashme. Hapi tjetër konsiston në krijimin e shabllonit për virtualhosts.confskedarin tonë , ndërsa ne fillimisht duhet të krijojmë dosjen:

mkdir -p /srv/salt/nginx/files

Pasi të krijohet dosja, ne mund të vazhdojmë me shkrimin e virtualhosts.jinjaskedarit:

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

Shtylla

Pas krijimit të formulës, ne mund të vazhdojmë dhe të vendosim bazën tonë të Shtyllës:

mkdir -p /srv/pillar/

Çdo referencë për hostet që përputhen me një skedar të caktuar shtyllësh shkruhen në top.slsskedar brenda drejtorisë që sapo krijuam. Në shembullin tonë, supozojmë se ekzistojnë dy minionë me emrin e hostit nginxwww1dhe nginxwww2do t'u caktojmë atyre të dy skedarët e shtyllave unike:

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

Më pas, ne do të vazhdojmë me krijimin e një skedari shtyllë për nginxwww1ndërsa do të krijojmë një vhost që dëgjon në portin 81 për domenin example.com, ku rrënja e dokumentit është /var/www/example_com/dhe skedarët e indeksit janë index.shtml:

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

Ne do të vazhdojmë me krijimin e një skedari shtyllë për nginxwww2ndërsa ne do të krijojmë një vhost që dëgjon në portin 82 për domenin example2.com, duke qenë rrënja e dokumentit /var/www/example2_com/dhe skedarët e indeksit janë index.jsdhe index.css:

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

Shënim: Skedarët e shtyllave ruhen brenda/srv/pillar/

Duke vendosur

Tani mund të përfundojmë provën tonë të parë me shtyllat duke i përditësuar ato në miqtë tanë:

salt '*' saltutil.refresh_pillar

Më pas, ne mund të ekzekutojmë formulën SaltStack:

salt '*' state.sls nginx

Duke konfirmuar

Pasi formula SaltStack të jetë ekzekutuar dhe përfunduar pa asnjë gabim, ne duhet të jemi në gjendje të shohim nginxdëgjimin në portin 81nginxwww1dhe në portin 82ndezur nginxwww2si konfirmim.

konkluzioni

Kjo formulë mjaft e lehtë, por tashmë e fuqishme SaltStack mund të zgjerohet më tej për të shtuar mbështetje për HTTPS, ndoshta me një integrim të Let's Encrypt, mbështetje për CGI ose PHP backend dhe gjithçka që mund të bëni gjithashtu manualisht. Ky udhëzues duhet t'ju ketë dhënë një ide bazë të formulave dhe shtyllave të SaltStack të përdorura për vendosjen e skedarëve të konfigurimit. Gëzuar automatizimin!


Si të instaloni Jenkins në CentOS 7

Si të instaloni Jenkins në CentOS 7

Jenkins është një mjet popullor me burim të hapur CI (Integrimi i vazhdueshëm) i cili përdoret gjerësisht për zhvillimin, vendosjen dhe automatizimin e projektit. Ky artikull do

Si të instaloni dhe konfiguroni Concourse CI në Ubuntu 16.04

Si të instaloni dhe konfiguroni Concourse CI në Ubuntu 16.04

Përdorimi i një sistemi të ndryshëm? Hyrje Integrimi i vazhdueshëm është një praktikë e zhvillimit të softuerit DevOps e cila u mundëson zhvilluesve të bashkojnë shpesh

Si të instaloni dhe konfiguroni Ansible në Debian 9 për përdorim me Windows Server

Si të instaloni dhe konfiguroni Ansible në Debian 9 për përdorim me Windows Server

Përdorimi i një sistemi të ndryshëm? Ansible është një mjet me burim të hapur për automatizimin e detyrave. Ai menaxhon konfigurimin e serverëve tuaj Linux dhe Windows. Ajo funksionon

Si të instaloni dhe konfiguroni GoCD në CentOS 7

Si të instaloni dhe konfiguroni GoCD në CentOS 7

Përdorimi i një sistemi të ndryshëm? GoCD është një sistem furnizimi dhe automatizimi i vazhdueshëm me burim të hapur. Kjo ju lejon të modeloni flukse pune komplekse duke përdorur një paralele të saj

Përdorimi i SaltStack With Pillars në Ubuntu 17.04

Përdorimi i SaltStack With Pillars në Ubuntu 17.04

Ndërsa SaltStack është një mjet i shkëlqyeshëm për ekzekutimin e operacioneve në shumë serverë në të njëjtën kohë, ai gjithashtu mbështet paracaktimet e konfigurimit të përcaktuara për host të ruajtur në një

Si të instaloni dhe konfiguroni Ansible në CentOS 7 për përdorim me Windows Server

Si të instaloni dhe konfiguroni Ansible në CentOS 7 për përdorim me Windows Server

Përdorimi i një sistemi të ndryshëm? Ansible është një mjet me burim të hapur për automatizimin e detyrave. Ai menaxhon konfigurimin e serverëve tuaj Linux dhe Windows. Ajo funksionon

Si të instaloni Drone CI në Ubuntu 18.04

Si të instaloni Drone CI në Ubuntu 18.04

Hyrje Drone është një platformë e automatizuar, e vazhdueshme testimi dhe shpërndarjeje, e cila funksionon në infrastrukturën tuaj. Drone mbështet çdo gjuhë, shërbim o

Balancuesit e ngarkesës Vultr

Balancuesit e ngarkesës Vultr

Çfarë është Load Balancer Load Balancers ulen përpara aplikacionit tuaj dhe shpërndajnë trafikun hyrës nëpër disa raste të aplikacionit tuaj. Fo

Si të instaloni Foreman në CentOS 7

Si të instaloni Foreman në CentOS 7

Përdorimi i një sistemi të ndryshëm? Foreman është një mjet falas dhe me burim të hapur që ju ndihmon me konfigurimin dhe menaxhimin e serverëve fizikë dhe virtualë. Forema

Si të instaloni SaltStack në CentOS 7

Si të instaloni SaltStack në CentOS 7

SaltStack, ose Salt, është një zgjidhje popullore e menaxhimit të konfigurimit me burim të hapur që mund të përdoret për të zbatuar ekzekutimin në distancë, menaxhimin e konfigurimit, kodin.

Si të instaloni Strider CD në Ubuntu 18.04

Si të instaloni Strider CD në Ubuntu 18.04

Hyrje Strider CD është një platformë me burim të hapur vendosjeje të vazhdueshme. Aplikacioni është shkruar në Node.js dhe përdor MongoDB si një bazë ruajtëse. Përparimi

Duke përdorur Chocolatey Package Manager në Windows

Duke përdorur Chocolatey Package Manager në Windows

Hyrje Chocolatey sjell menaxhimin e paketave që e bën të lehtë administrimin e softuerit dhe varësive në Linux, në Windows. Ju mund të lehtë dhe shpejt

Krijimi i fotografive me Packer

Krijimi i fotografive me Packer

Çfarë është Packer? Packer është një mjet i imazhit të serverit i zhvilluar nga HashiCorp. Imazhi i serverit; ose ndryshe, infrastrukturë e pandryshueshme; është një alternativë popullore

Si të instaloni dhe konfiguroni Concourse CI në CentOS 7

Si të instaloni dhe konfiguroni Concourse CI në CentOS 7

Përdorimi i një sistemi të ndryshëm? Hyrje Integrimi i vazhdueshëm është një praktikë e zhvillimit të softuerit DevOps e cila u mundëson zhvilluesve të bashkojnë shpesh

Përdorimi i Chef-solo për të konfiguruar një aplikacion Django në Ubuntu

Përdorimi i Chef-solo për të konfiguruar një aplikacion Django në Ubuntu

Ka shumë mënyra për të automatizuar procesin e konfigurimit dhe konfigurimit të një kutie. Për çfarëdo arsye, nëse i gjithë sistemi ynë në këtë pikë përbëhet nga vetëm

Si të instaloni Foreman në Ubuntu 16.04 LTS

Si të instaloni Foreman në Ubuntu 16.04 LTS

Përdorimi i një sistemi të ndryshëm? Foreman është një mjet falas dhe me burim të hapur që ju ndihmon me konfigurimin dhe menaxhimin e serverëve fizikë dhe virtualë. Forema

Fillimi me SaltStack në Ubuntu 17.04

Fillimi me SaltStack në Ubuntu 17.04

SaltStack është një program i menaxhimit të konfigurimit të bazuar në python, i cili është i optimizuar për automatizimin e skedarëve të konfigurimit, vendosjeve dhe çdo gjëje tjetër.

Ngritja e makinave: Aplikimet në botën reale të AI

Ngritja e makinave: Aplikimet në botën reale të AI

Inteligjenca Artificiale nuk është në të ardhmen, është këtu në të tashmen Në këtë blog Lexoni se si aplikacionet e inteligjencës artificiale kanë ndikuar në sektorë të ndryshëm.

Sulmet DDOS: Një përmbledhje e shkurtër

Sulmet DDOS: Një përmbledhje e shkurtër

A jeni edhe ju viktimë e Sulmeve DDOS dhe jeni konfuz në lidhje me metodat e parandalimit? Lexoni këtë artikull për të zgjidhur pyetjet tuaja.

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

Ju mund të keni dëgjuar se hakerët fitojnë shumë para, por a keni menduar ndonjëherë se si i fitojnë ato para? Le te diskutojme.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Dëshironi të shihni shpikjet revolucionare nga Google dhe se si këto shpikje ndryshuan jetën e çdo njeriu sot? Më pas lexoni në blog për të parë shpikjet nga Google.

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

Koncepti i makinave vetë-drejtuese për të dalë në rrugë me ndihmën e inteligjencës artificiale është një ëndërr që e kemi prej kohësh. Por, pavarësisht nga disa premtime, ato nuk shihen askund. Lexoni këtë blog për të mësuar më shumë…

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Ndërsa Shkenca evoluon me një ritëm të shpejtë, duke marrë përsipër shumë nga përpjekjet tona, rriten edhe rreziqet për t'iu nënshtruar një Singulariteti të pashpjegueshëm. Lexoni, çfarë mund të thotë singulariteti për ne.

Evolucioni i ruajtjes së të dhënave - Infografik

Evolucioni i ruajtjes së të dhënave - Infografik

Metodat e ruajtjes së të dhënave kanë evoluar mund të jenë që nga lindja e të dhënave. Ky blog mbulon evolucionin e ruajtjes së të dhënave në bazë të një infografike.

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Lexoni blogun për të njohur shtresat e ndryshme në arkitekturën e të dhënave të mëdha dhe funksionalitetet e tyre në mënyrën më të thjeshtë.

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

Në këtë botë të drejtuar nga dixhitali, pajisjet inteligjente të shtëpisë janë bërë një pjesë thelbësore e jetës. Këtu janë disa përfitime të mahnitshme të pajisjeve shtëpiake inteligjente se si ato e bëjnë jetën tonë të vlefshme dhe më të thjeshtë.

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Së fundmi Apple lëshoi ​​macOS Catalina 10.15.4 një përditësim shtesë për të rregulluar problemet, por duket se përditësimi po shkakton më shumë probleme që çojnë në bricking të makinerive mac. Lexoni këtë artikull për të mësuar më shumë