Da DevOps-kulturen er ved at blive indført i it-branchen, Det betyder et voksende behov for it-professionelle, der ikke kun er villige til at omfavne tankesættet og metodologien bag Devops-løsningstilgangen, men også i stand til at udvikle DevOps-færdigheder med nye softwareværktøjer som Chef, Puppet og Ansible er blandt de mest fremragende værktøjer til konfigurationsstyring og udrulningsautomatisering. Hvert af disse værktøjer har sin særlige styrke. Disse automatisering og orkestrering gør livet lettere for enhver størrelse infrastruktur.

Når du vælger det bedst egnede, skal du finde det værktøj, der fungerer bedst for dig, fordi det gør dig mere produktiv, og hvilket værktøj du har brug for, afhænger af dine krav og dit nuværende miljø. Værktøjer som Chef, Puppet, Ansible er ikke nødvendigvis kun til DevOps-tjenester, deres brug i it-organisationen kan lægge grunden til at fremskynde områder som applikationslevering, patching og så videre.

Nedenfor er opsummeret et par styrker ved hvert værktøj og et par ting, der kan påvirke dig i retning af at bruge det ene frem for det andet:

Hvorfor Puppet?”

Puppet er langsommere, men mest udbredt og understøtter flere operativsystemer. Puppet er et konfigurationsstyringssystem, der giver en måde at definere tilstanden af it-infrastruktur på og muliggør automatisk håndhævelse af den korrekte tilstand. Det nyder vel nok den største mind share af de tre. Det er det mest komplette med hensyn til tilgængelige handlinger, moduler og brugergrænseflade. Puppet repræsenterer hele billedet af orkestrering af datacentre, idet det omfatter stort set alle operativsystemer og tilbyder dybe værktøjer til de vigtigste OS

  • Kører på Linux, CentOS, Debian, Ubuntu, Fedora, BSD, MacOS, Windows og andre.
  • Anvender sin egen “nemme” syntaks, Puppet DSL eller Domain Specific Language. Du kan også bruge Custom Ruby-moduler.
  • Udførlige rapporteringsmuligheder
  • Stort bibliotek af eksisterende moduler i Puppet, og modulerne er af blandet kvalitet.
  • Webbrugergrænseflade er kun tilgængelig i enterprise-versionen
  • Enkle arkitektur: Puppet-server og Puppet-agenter
  • Puppet giver en effektiv og skalerbar softwareløsning til styring af konfigurationer af et stort antal enheder.
  • Systemadministratorer bruger Puppet til at styre computerressourcer som f.eks. fysiske og virtuelle servere og netværksenheder.
  • Puppet implementeres ved hjælp af et klient/server-arrangement, hvor serveren eller Puppet-masteren administrerer en eller flere klientknuder.

Hvorfor Chef?”

Chef er kompleks, men hurtig og kraftfuld, det er en automatiseringsplatform, der omdanner infrastruktur til kode. Mange Devops Services Company vælger at vedtage Chef, fordi det giver dem mulighed for at behandle deres system som objekt, fordi med brugervenlighed kommer en mangel på robusthed. Chef ligner Puppet med hensyn til det overordnede koncept, idet der er en master-server og agenter installeret på administrerede knudepunkter, men det adskiller sig i den faktiske udrulning med Devops Solutions & Services.

  • Udførlig Ruby-syntaks til konfigurations-“opskrifter”: Dette giver en højere indlæringskurve, men mere magt
  • Web-brugergrænseflade er standard og gratis.
  • Arkitekturen er mere kompleks: Du har brug for en Chef-server, Chef-agenter og en Chef-arbejdsstation til konfiguration og administration.
  • Stort bibliotek af eksisterende opskrifter af blandet kvalitet.
  • En enkel installationsprocedure på tværs af platforme og selvstændig installationsprocedure.
  • Hurtigere ydeevne.

Hvorfor Ansible?”

Ansible er skrevet i Python og kræver kun, at Python-bibliotekerne skal være til stede på de servere, der skal konfigureres. Det understøtter ikke Windows, men er meget nemt, hurtigt og letvægtigt og helt anderledes end Chef og Puppet. Omdrejningspunktet for Ansible er at være strømlinet og hurtig, og at det ikke kræver nogen node agent installation. Ansible udfører således alle funktioner over SSH. Der findes en masse moduler, der spænder fra system, database til cloud management. Det er relativt nemt at skrive sine egne moduler. Der understøttes mange sprog, men hvis du er fortrolig med python, vil det ikke tage dig meget tid at oprette dit eget modul. De understøtter alle kernetjenester fra store cloud-udbydere som AWS, Rackspace, Digital Ocean, GCE, OpenStack osv.

  • Ansible er Python-baseret
  • Den yngste af disse tre teknologier, derfor med det mindste fællesskab
  • Fungerer uden agenter, men har mange python-afhængigheder, når du begynder med komplekse operationer
  • Enkle arkitektur: Alt du behøver er en Ansible-arbejdsstation og SSH-servere. Ingen agenter og ingen server, men du har Python-afhængigheder på klientmaskinerne.
  • Webbrugergrænseflade tilgængelig, men med begrænsede funktioner, da den er udviklet separat fra hovedprojektet.
  • Skripter og moduler kan bygges i ethvert sprog, et begrænset bibliotek leveres
  • Ingen Windows-understøttelse
  • den letteste syntaks og laveste indlæringskurve
  • Ansible kan bruge Paramiko, en Python SSH2-implementering, eller standard SSH til kommunikation, men der er også en accelerationstilstand, der giver mulighed forhurtigere og mere omfattende kommunikation.
  • Ansible har en samling af moduler, der kan bruges til at administrere forskellige systemer samt cloud-infrastruktur såsom Amazon EC2 og OpenStack

Puppet eller Chef eller Ansible???

  • Puppet og Chef hjælper udviklere og udviklingsorienteret organisation, hvor Ansible er langt mere fleksibel i forhold til systemadministratorers behov
  • Ansible’s enkle brugerflade og brugervenlighed passer lige ind i systemadministratorpsykologien, og i en organisation med mange Linux- og Unix-systemer er Ansible forholdsvis hurtig og nem at køre.
  • Puppet er den mest modne og praktiske af de tre ud fra et brugervenlighedssynspunkt, men et solidt kendskab til Ruby anbefales stærkt.
  • Puppet er ikke så strømlinet som Ansible, og konfigurationen kan til tider blive kompleks. Det er den sikreste måde til diverse miljøer, men du vil måske finde Ansible bedre egnet i en større eller mere lignende infrastruktur.
  • Chef har et meget stabilt og veldesignet layout, og selv om det ikke helt er på Puppets niveau med hensyn til rå funktioner, er det en meget kompetent løsning. Chef kan udgøre den vanskeligste indlæringskurve for administratorer, der mangler betydelig programmeringserfaring, men det kunne være den mest logiske løsning for udviklingsorienterede personer og udviklingsorganisationer.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *