CHEF bilen awtomatlaşdyryş we konfigurasiýa dolandyryşy näme - 1-nji bölüm


Simpleönekeý bir ssenariýa alalyň, ähli serwerlerde “tekmint” ulanyjysyny döretmeli 10 sany redhat serweriňiz bar. Göni çemeleşme, her serwere girip, useradd buýrugy bilen ulanyjyny döretmeli. Serwerler 100 ýa-da 1000-ler bolanda, ähli serwerlere ýeke-ýekeden girmek mümkin däl diýen ýaly.

Ynha, şular ýaly ýagdaýlarda kelläme ilkinji gelen zat, skript ýazmak we skriptiň serwerlerde ýerine ýetirilmegine rugsat bermek, bu subut edilen çemeleşme. Ripazuwyň öz kemçilikleri bar, guramalarda giňden ulanylsa-da, ssenariniň eýesi Guramadan çyksa, saklamak kyn.

Scriptazgy birmeňzeş gurşawda işlemez. Scriptazgy, bu işi ýerine ýetirmek üçin Imperator usulydyr, bu ýerde ýönekeý bir iş we ş.m. üçin uzyn kod ýazmaly bolarsyňyz, bu ýagdaý aşpez ýaly awtomatlaşdyryş we konfigurasiýa dolandyryş gurallaryny gözlemegimizi talap edýär.

Aşpez baradaky makalalaryň bu tapgyrynda, aşpez awtomatlaşdyryş guralynyň 1-3 bölümleriniň üsti bilen gurnama we konfigurasiýa proseduralary barada görmekçi we aşakdaky temalary öz içine alýar.

Bu gollanma aşpeziň işleýşi, awtomatlaşdyryş, konfigurasiýa dolandyryşy, arhitektura we aşpeziň bölekleri barada başlangyç nokady berýär.

1. Sazlama dolandyryşy

Konfigurasiýa dolandyryşy DevOps amalynyň esasy merkezi. Programma üpjünçiligini işläp düzmek siklinde ähli serwerler programma üpjünçiligini düzmeli we ösüş siklinde hiç hili bökdençlik döretmez ýaly gowy saklanmalydyr. Configaramaz konfigurasiýa Dolandyryş ulgamyň kesilmegini, syzdyrmalaryny we maglumatlary bozup biler. Konfigurasiýa dolandyryş gurallaryny ulanmak, DevOps tarapyndan dolandyrylýan gurşawda takyklygy, netijeliligi we tizligi aňsatlaşdyrmak barada.

Konfigurasiýa dolandyryş gurallarynyň iki modeli bar - PUSH esasly we PULL esasly. PUSH esasly ussat serwer konfigurasiýa koduny PULL esasly aýratyn serwerleriň konfigurasiýa kody almak üçin Master bilen habarlaşýan serwerlerine iterýär. PUPPET we CHEF PULL esasly modellerde giňden ulanylýar, ANSIBLE meşhur PUSH esasly modeldir. Bu makalada CHEF hakda göreris.

2. Aşpez näme?

Aşpez açyk çeşme awtomatlaşdyryş programmasy bolup, ulgam dolandyryjylaryna birnäçe serwerde we guramanyň beýleki enjamlarynda ýerleşdiriş, konfigurasiýa, dolandyryş we dowam edýän meseleleri awtomatlaşdyrmaga mümkinçilik berýär.

  • OPSCODE hökmünde 2008-nji ýylda döredildi, soň bolsa CHEF (aşpez awtomatlaşdyryş guraly) adyna öwrüldi.
  • Sazlamany dolandyrmak, guramanyň ähli infrastrukturasyny awtomatlaşdyrmak we orkestrlemek üçin ulanylýan Ruby esasly awtomatlaşdyryş guraly.
  • Bu açyk çeşme taslamasy we iki sany ýerleşdiriş modeli bilen gelýär: Server Client & Standalone.
  • Aşpez Ubuntu, Redhat/CentOS, Fedora, macOS, Windows, AIX we ş.m. ýaly dürli operasiýa ulgamlaryny goldaýar
  • Aşpez deklaratiw we ene ýazuw dillerinden has ýönekeý.
  • Bir kompaniýanyň Bazar talaby bilen täzelenmegini üpjün etmek üçin üznüksiz ýerleşdiriş üpjün edýär.
  • Aşpeziň esasy jogapkärçiligi kesgitlenen konfigurasiýa ýagdaýyny saklamakdyr.
  • 10 we 1000 düwünleri aňsatlyk bilen dolandyrmak üçin öz deklaratiw dili bar.
  • Aşpez buluda uýgunlaşyp, bulutdaky infrastruktura bilen aňsat birleşýär.
  • Aşpez öwrenmek aňsat we jemgyýet tarapyndan goldanýan DevOps üçin amatly gural.

3. Aşpez arhitekturasy

Aşpez arhitekturasy 3 esasy bölüme bölünýär.

  • Aşpez WorkStation: Aşpez ulanyjylary konfigurasiýalary döretmek, synagdan geçirmek we ulanmak üçin ýerli ösüş platformasy. Cheerli iş stoly, aşpez DK (Ösüş toplumy) gurlan noutbuk bolup biler. Önümçilige çykmazdan ozal ösüş/synag gurşawy hökmünde ulanylyp bilner.
  • Aşpez serweri: Onda aşpez-serwer programma üpjünçiligi gurlan we düzülen serwer. Aşpeziň koduny dolandyrmak we aşpez iş stansiýasyndan konfigurasiýa koduna girmek jogapkärdir. Aşpez serweri Linux enjamy bolmaly, başga operasiýa ulgamyny goldamaz.
  • Aşpez müşderileri: aşpez kody we ikilikdäki beýleki garaşly faýllar ýaly konfigurasiýa jikme-jiklikleri üçin aşpez serwerine ýüz tutýan serwerler bar. Kody aşpez serwerinden çykarýar we ýerli ýerleşdirýär.

4. Aşpez komponentleri

Aşakda aşpeziň esasy komponentleri bar.

  • Çeşmeler, infrastrukturany dolandyrmak üçin ulanylýan reseptiň esasy modulydyr.
  • Sypat açar bahaly jübüt görnüşindäki sazlamalar.
  • Reseptler, iş stansiýasynda edilip bilinjek häsiýetleriň ýygyndysydyr. Aşpez müşderilerine aşpez kody hökmünde ulanyp boljak buýruklar toplumy.
  • Reseptler ýygyndysyna “Cookbook” diýilýär.
  • Pyçak aşpez serweri bilen täsirleşýän aşpez iş stansiýasyndaky buýruk setiridir.

5. Aşpez ýerleşdiriş modeli

Aşpez üçin iki sany ýerleşdiriş modeli bar.

  • Serwer müşderisi - Önümçiligi ýerleşdirmek üçin ulanylýar.
  • Aşpez nol - Ösüş, synag we POC-ler üçin ulanylýar.

6. Aşpez nähili işleýär? Kod hökmünde infrastruktura

Kod hökmünde infrastruktura IT infrastruktura dolandyryşy bolup, ol ýerde dürli gurnama/ýerleşdiriş we konfigurasiýa dolandyryşyny awtomatiki ýerine ýetirmäge mümkinçilik berýär. Bu ýerde ähli konfigurasiýalar, gurnamalar kod hökmünde ýazylýar.

  • Aşpez müşderisi/düwün aşpez serweri bilen hasaba alynýar we tassyklanylýar.
  • Aşpez müşderisi/düwün aşpez serwerine wagtal-wagtal göz aýlar. Hakyky tanamak prosesi her gezek aşpez-müşderi aşpez serwerinde saklanýan maglumatlara girmek islän mahaly amala aşyrylýar.
  • Ohai, aşpez müşderisi tarapyndan ulgamyň ýagdaýyny kesgitlemek üçin işleýän gural, düwüniň atributlaryny (OS, ýat, disk, CPU, ýadro we ş.m.) kesgitlär we şol atributlary üpjün eder aşpez-müşderi. Ohai aşpez müşderisini gurmagyň bir bölegi.
  • Cookbook ýa-da Sazlama sazlamalarynda haýsydyr bir üýtgeşme bar bolsa, aşpez-müşderä iberiler we täzelener/gurlar.
  • Kitaplar we sazlamalar, “Knife” buýruk setiri guraly arkaly aşpez iş stansiýasyny ulanyp, aşpez serwerinde täzelener. Workstation, ähli syýasatlary pyçak ulanyp, aşpez serwerine iterýär.
  • Her bir müşderi/düwün aşpez serweri bilen wagtal-wagtal barlanjakdygy sebäpli, konfigurasiýalar serweriň roluna görä aýratynlykda ulanylar. Mysal üçin: Aşpez düwünlerinde käbir düwünler maglumatlar bazasynyň serwerleri, käbir düwünler şlýuz serwerleri we ş.m.

Bu makalada konfigurasiýa dolandyryşy we aşpez awtomatlaşdyryş guralynyň esasy düşünjelerini gördük. Aşpez gurnamagyň ädimme-ädim indiki makalalarynda göreris.