Ansible for begyndere – Ansible Basics og hvordan det virker

Har du hørt om Ansible, men ikke sikker på, hvad det er? Bare rolig, du vil vide om Ansible i løbet af de næste 5 minutter.

Hvad er Ansible?

Ansible er et open source DevOps-værktøj, som kan hjælpe virksomheden med konfigurationsstyring, implementering, klargøring osv. Det er ligetil at implementere; det udnytter SSH til at kommunikere mellem servere. Den bruger playbook til at beskrive automatiseringsjob, og playbook bruger et meget simpelt sprog YAML.

Ansible giver pålidelighed, konsistens og skalerbarhed til din it-infrastruktur. Du kan automatisere konfigurationer af databaser, storage, netværk, firewalls ved hjælp af Ansible. Det sikrer, at alle de nødvendige pakker og al anden software er konsistent på serveren for at køre applikationen.

Lad os tage et eksempel; du har en fejlretningsversion af et program, der er bygget på visual C++. Hvis du nu vil køre det program på en computer, skal du opfylde nogle forudsætninger som Microsoft Visual C++-biblioteks-DLL’er, og du skal have visual C++ installeret på din computer. Så dette er den del, hvor Ansible vil sørge for, at alle disse grundlæggende pakker og alle software er installeret på din computer, så din applikation kan køre problemfrit i alle miljøer, hvad enten det er test- eller produktionsmiljø.

Den indeholder også alle de historiske data for din applikation, så hvis du på noget tidspunkt vil rulle tilbage til den tidligere version, eller du vil opgradere den, kan du nemt gøre det.

  Opret smukt linjediagram med disse 5 værktøjer [Free Templates]

Lad os tage et kig på nogle af de følgende funktioner.

Agentløs – Hvilket betyder, at der ikke er nogen form for software eller nogen agent, der administrerer noden som andre løsninger såsom dukke og kok.

Python – Bygget oven på python, som er hurtigt og et af de robuste programmeringssprog i nutidens verden.

SSH – Meget enkel adgangskodefri netværksgodkendelsesprotokol, som er sikker. Så dit ansvar er at kopiere denne nøgle til klienten

Push-arkitektur – Skub de nødvendige konfigurationer til dem, klienter. Alt du skal gøre er at skrive disse konfigurationer ned (playbook) og skubbe dem alle på én gang til noderne. Du kan se, hvor kraftfuldt det kan være at skubbe ændringerne til tusindvis af servere på få minutter.

Opsætning – et minimalt krav og konfiguration, der er nødvendig for at få det til at fungere.

Ansible arkitektur

Lad os starte med Public/Private Cloud, som er Linux-serveren. Det kan også fungere som et lager for alle it-installationer og konfigurationer.

Ovenstående arkitektur har en masse værtsmaskiner, som en ansible server forbinder til og skubber playbooks gennem SSH.

Den har en mulig automatiseringsmotor, hvorved brugere direkte kan køre en playbook, som bliver implementeret på værterne. Der er flere komponenter i den mulige automatiseringsmotor. Den første er en værtsopgørelse. Det er en liste over alle IP-adresserne på alle værterne.

  Sådan gemmer du flere billeder i en iMessage-tråd

Dernæst er der moduler. Ansible kommer med hundredvis af indbyggede moduler, og moduler er de stykker kode, der bliver eksekveret, når du kører en playbook. En legebog indeholder skuespil, en leg indeholder forskellige opgaver, og en opgave indeholder moduler.

Når du kører en playbook, er det modulerne, der bliver udført på dine værter, og disse moduler indeholder handling i dem. Så når du kører en playbook, foregår denne handling på dine værtsmaskiner. Du kan også lave dine tilpassede moduler. Alt du skal gøre er at skrive et par linjer kode og gøre det til dit modul, og du kan køre det når som helst du vil.

Så har arkitekturen legebøger. Playbooks her definerer faktisk din arbejdsgang, fordi uanset hvilke opgaver du skriver i en playbook, bliver den udført i samme rækkefølge, som du har skrevet dem. For eksempel, hvis du har skrevet, at installere en pakke først og derefter starte, vil den gøre det samme. Playbooks er meget enkle at skrive YAML-kode. YAML-kode er et meget simpelt dataserialiseringssprog; det er stort set engelsk.

Dernæst er plugins i arkitekturen. Plugins her er specielle slags moduler. Disse plugins bliver eksekveret før et modul bliver eksekveret på noderne. Plugins bliver udført på hovedkontrolmaskinen til logningsformål. Du har call-back plugins, fordi dette giver dig mulighed for at tilslutte dig forskellige mulige begivenheder til visning og logning. Cache-plugins bruges til at holde en cache af fakta for at undgå dyre faktaindsamlingsoperationer. Ansible har også action-plugins, som er frontend-moduler, og de kan udføre opgaver på controller-maskinen, før de kalder modulerne selv.

  13 værktøjer til at hjælpe dig med at køre dit affiliate program

Arkitekturen har forbindelsesplugins. Det er ikke altid nødvendigt at bruge en SSH til at oprette forbindelse til dine værtsmaskiner; du kan også bruge et tilslutningsplug-in. For eksempel giver ansible dig et plugin til docker-containerforbindelse, og ved at bruge dette plug-in til forbindelse kan du nemt oprette forbindelse til alle dine Docker-containere og begynde at konfigurere med det samme.

Det var alt om arkitekturen. Lad mig derefter fortælle dig, hvordan det præcist fungerer.

Hvordan virker Ansible?

Ansible fungerer ved at forbinde til noder og skubbe små programmer ud, kaldet ansible-moduler. Ansible udfører derefter disse moduler over SSH som standard og fjerner dem derefter, når de er færdige.

Ansible management node er den kontrollerende node, som styrer hele udførelsen af ​​Playbook. Det er noden, hvorfra du kører installationen, og inventarfilen giver listen over værten, hvor modulerne skal køres. Administrationsknuden laver ssh-forbindelse, og derefter udfører den modulerne på værtsmaskinerne og installerer produktet. Det fjerner modulerne, når de er installeret. Så det er sådan ansible fungerer.

Dernæst kan du være interesseret i at lære, hvordan du installerer og konfigurerer Ansible.

Konklusion

Jeg håber, at du nu har en idé om Ansible for at komme i gang. Ansible er en game changer i, hvordan du administrerer infrastrukturen, og hvis du er Sysadmin eller udvikler, så kan du tjekke dette ud praktisk træning at fremme kompetencerne.