Kaj je odgovorno?

Vedno je priporočljivo avtomatizirati odvečni postopek, kot sta namestitev ali konfiguracija in upravljanje strežnika, ki sicer porabi veliko časa in truda. To je eno takšno odprtokodno orodje, ki ga je razvil in vzdrževal Red Hat, ki avtomatizira postopek zagotavljanja, upravljanja konfiguracije, uvajanja aplikacij, stalne dostave, varnosti in skladnosti ter orkestracije. Na visoki ravni je preprost jezik za avtomatizacijo, ki lahko opiše infrastrukturo aplikacij, življenjski cikel aplikacij v odzivnih igralnih knjigah. Uporablja YAML, ki je človeško berljiv jezik za serijsko obdelavo podatkov.

Razumevanje

Je preprost, močan in neagenten. Največji razlikovalnik med odzivnimi in drugimi orodji je v arhitekturi, deluje na modelu "Push", tj. V strežnik ni potrebna dodatna programska oprema. Privzeto upravlja oddaljene povezave prek SSH (Linux in Unix) ali WinRM (windows).

Spodaj je ta arhitekturni diagram podjetja Ansible

Podrobneje si oglejmo funkcionalnost posameznih komponent.

Motor za odgovorno avtomatizacijo zajema Inventar, API, module in vtičnike.

Odgovarjalna knjiga: Ta program uporablja za avtomatizacijo in orkestracijo IT infrastrukture. Ta predvajalnik je sestavljen iz naloge za avtomatizacijo, ki služi kot vhod v motor za avtomatizacijo ansible, ki opisuje, kako bo določen del avtomatizacije deloval.

Ta zvezek je sestavljen iz niza »predvajanja«, ki določa nalogo avtomatizacije v nizu gostiteljev, imenovanih »Inventory«. Vsaka igra je sestavljena iz več nalog, ki lahko služijo enemu ali več gostiteljem, ki so prisotni v inventarju. Vse te naloge so poklicale modul Ansible, ki je majhen delček kode, ki opravlja določeno nalogo.

Tipičen primer naloge je lahko namestitev katere koli programske opreme ali namestitev konfiguracijske datoteke v strežnik. Bolj zapletena naloga bi lahko bila predvajanje celotne infrastrukture Oblikovanje oblakov v Amazonu EC2.

Na voljo je z stotimi modulov, od upravljanja omrežnih naprav, preprostega upravljanja konfiguracije, do modulov za vzdrževanje infrastrukture pri vsakem ponudniku oblakov.

Ti moduli so zasnovani tako, da najprej preveri, ali je treba nalogo izvesti ali ne, na primer, če je odgovorna naloga zagnati strežnik Tomcat, potem se bo naloga izvajala le, če se že ne izvaja. Ta pojav se imenuje "Idempotency", ki omogoča večkratno izvedbo konfiguracije, brez kakršnih koli grozov.

Te naloge v knjižnici lahko uporabite tudi ponovno, te enote za večkratno uporabo se imenujejo "Vloga". Te vloge je mogoče preprosto uporabiti za izvajanje odvečnih nalog, kot je uporaba skupne konfiguracije strežnika v razvojnem, UAT in proizvodnem strežniku.

Opomba: teh vlog vam ni treba pisati iz nič, spletno mesto Ansible Galaxy vsebuje tisoč vlog, ki jih lahko uporabite in prilagodite glede na svoje potrebe.

Kaj lahko storite z Ansiblejem?

S tem lahko avtomatizirate spodnje naloge. poglejmo nekaj primerov delcev, da ga razumemo na enostaven način.

Predpostavimo, da imate spletno aplikacijo java, ki jo je treba namestiti v več strežnikov, tj. Dev, UAT in prod. Če želite namestiti vojno datoteko, morate najprej namestiti spletni strežnik in strežnik baz podatkov v vsem stroju. Za postavitev baze podatkov morajo v vseh zbirkah zagnati iste skripte SQL. Zdaj ni smiselno, da bi to odvečno nalogo opravili ročno.

S tem je vse, kar morate storiti, napisati preproste naloge v playbook in Ansible bo opravil te odvečne naloge za vas.

Zahtevane veščine

Za razliko od lutk in kuharja (orodje za avtomatizacijo, kot je ansible), ki zahteva znanje rubyja, pri ansibleju se vam ni treba učiti nobenega zapletenega programskega jezika. Ansible uporablja YAML, ki je človeško berljiv jezik na visoki ravni, ki ga lahko enostavno razume IT Admin. Poleg tega je večina najpogostejših nalog na voljo v obrazcu, če je v zvezku Ansible Galaxy, ki ga lahko razširite po svojih zahtevah.

Zakaj bi morali uporabljati Ansible?

Do zdaj smo govorili o tem, česa je Ansible sposoben. Zdaj pa poglejmo, zakaj bi morali uporabiti Ansible pri naših projektih.

  1. S tem lahko določene procese zmanjšate iz ur na minute.
  2. Odpravlja ponavljajoče se naloge
  3. Prihrani čas in izboljša produktivnost.
  4. Manj napak in napak.
  5. Povečati odgovornost in skladnost.

Kdo je pravo občinstvo za učenje odgovorovnih tehnologij?

Morate razmišljati, da je ta tehnologija povezana z IT infrastrukturo in vzdrževanjem, za katero običajno poskrbi skrbnik za IT ali ekipa za uvajanje, vi pa kot razvijalec, tega ne potrebujete razumeti, ampak dovolite mi, da razbijem ta stereotip. Kot veste, da je razvojno in operativno delo DevOps integrirano, zagotavlja stabilno okolje tako za razvoj kot tudi za delovanje. Zato je pomembno, da mora razvijalec razumeti nalogo, zapisano v zvezkih, in če se v razvojnem okolju kakršne koli spremembe spremeni, mora biti sposoben ustrezno spreminjati v zvezku za druga okolja za nemoteno orkestracijo življenjskega cikla aplikacije.

Kako vam bo ta tehnologija pomagala pri karierni rasti?

V življenjepisu mora imeti nujno tehnologijo. Dandanes vsako drugo podjetje poskuša avtomatizirati vse procese, ki jih lahko, da bi povečali splošno produktivnost in učinkovitost aplikacije in virov. Podjetniške aplikacije, ki so običajno nameščene na različnih strežnikih po vsem svetu, zahtevajo nenehno konfiguracijo strežnika in upravljanje, kar zahteva veliko časa in truda. Če zelo dobro poznate orodje za avtomatizacijo, kot je Ansible in lahko napišete knjižico za avtomatizacijo te odvečne naloge, vas bo to zagotovo ločilo in vam pomagalo pri karierni rasti.

Zaključek

Po branju tega članka morate imeti jasno razumevanje, kaj je Ansible, česa je sposoben in kako lahko izboljšate splošno učinkovitost in produktivnost svojega projekta z izvajanjem Ansibleja. Če se želite poglobiti v to temo, lahko preverite beli papir in vzorčne zvezke, ki so na voljo na uradni spletni strani Red Hat Ansible.

Priporočeni članki

To je vodnik o tem, kaj je odgovorno. Tu smo razpravljali o delu Ansible in tudi o tem, kako in kje lahko pomaga pri karierni rasti. Če želite izvedeti več, lahko preberete tudi druge naše predlagane članke -

  1. Kako uporabljati odgovorne ukaze
  2. Kaj je PowerShell?
  3. Kaj je Python?
  4. Kaj je Apač