Programmering

Hvorfor bruge Chef til automatisering og orkestrering

Chef har været et førende open source-værktøj til automatisering af klargøring og konfiguration af servere i en bedre del af et årti. I de senere år har virksomheden tilføjet InSpec og Habitat til porteføljen, open source-projekter, der automatiserer henholdsvis test af politikoverholdelse og implementering og konfiguration af applikationer. Virksomhedens flagskibs kommercielle tilbud, Chef Automate, bringer alle disse stykker sammen.

Chef Automate tilbyder en række virksomhedsfunktioner til workflow, node synlighed og overholdelse og integreres med open source-produkter Chef, InSpec og Habitat. Chef Automate leveres med supporttjenester til hele platformen, inklusive open source-komponenter. Ud over at give visninger om operationelle, overholdelses- og workflowbegivenheder inkluderer den en pipeline til kontinuerlig levering af infrastruktur og applikationer.

Chef-komponenter og workflow

Chef DK (udviklingssæt) arbejdsstation er det sted, hvor brugerne interagerer med Chef. På arbejdsstationsbrugerne forfatter og test kogebøger ved hjælp af værktøjer som Test Kitchen (til at generere test-VM'er) og interagerer med Chef-serveren ved hjælp af kommandolinjeværktøjerne. For eksempel er Knife et kommandolinjeværktøj, der giver en grænseflade mellem en lokal Chef-repo og Chef-serveren. Knife hjælper brugere med at administrere noder, kogebøger, dataposer og installation (bootstrap) af Chef-klienten på noder, blandt andre opgaver. De fleste filer i en kok-kogebog er skrevet i Ruby, selvom nogle konfigurationer er skrevet i YAML.

Kok

Open source Chef-serveren fungerer som et hub til konfigurationsdata. Chef-serveren gemmer kogebøger, de politikker, der anvendes på noder, og metadata, der beskriver hver registreret node, der administreres af Chef. Noder bruger Chef-klienten til at bede Chef-serveren om konfigurationsoplysninger, såsom opskrifter, skabeloner og filfordelinger. Med andre ord er Chef som standard a trække-baseret system det har også push-funktioner.

Chef Supermarket er det sted, hvor fællesskabskogebøger deles og administreres. Chefadministrationskonsollen, chef-client (agent) kører rapportering, konfigurationer med høj tilgængelighed og Chef-serverreplikering er tilgængelige som en del af Chef Automate.

InSpec er en gratis og open source-ramme til test og revision af dine applikationer og infrastruktur. Det er grundlaget for Compliance-delen af ​​Chef Automate. Det integreres med Puppet og Ansible samt Chef.

Habitat er en open source, cloud native applikationsautomatisering og applikations livscyklusadministrationsplatform, der er designet fra applikationens synspunkt snarere end virksomhedens eller platformens synspunkt.

Kok

Chef for devops, compliance og cloud

Chef Automate hjælper med at klargøre og implementere apps hurtigere, hyppigere og mere pålideligt - med andre ord, det understøtter devops. Det automatiserer også overholdelse ved at reducere serverdrift, identificere overtrædelser af overholdelse og automatisk afhjælpe eventuelle problemer. Chef Compliance, baseret på open source InSpec, plejede at være et separat produkt, men er nu en del af Chef Automate.

Cloudmigration er en af ​​de interessante brugssager for Chef. Det inkluderer AWS, Microsoft Azure, Google Cloud Platform, blandede implementeringer og hybrid skyer. Et andet stort sæt brugssager er at sikre overholdelse af PCI, HIPAA og andre sikkerheds- og privatlivsbestemmelser.

Som vist i nedenstående figur er et af Chefs salgsargumenter, at det fungerer med det, du har. Dette inkluderer de vigtigste Git-baserede arkiver, CI / CD-systemer, operativsystemer, skyer og container orkestreringssystemer.

Kok

Kok installation og opsætning

Generelt består en Chef Automate-installation af mindst to servere: en Chef-server (mindst fire vCPU'er og 8 GB RAM), der indeholder de kogebøger og data, der bruges til at opbygge, teste og distribuere dine komponenter inden for Chef Automate og din infrastruktur og en Chef Automate-server (mindst fire vCPU'er og 16 GB RAM), som koordinerer processen med at flytte en ændring gennem arbejdsprocesrørledningen samt give indsigt og visualiseringer om din Chef Automate-klynge.

Der er to valgfrie servere, en push-job-server, der bruges til at oprette infrastrukturnoder til implementeringstest og er også nødvendig, hvis du bruger push-job-baserede build-noder som en del af din test- og implementeringsproces og løbere eller build-noder (på mindst to vCPU'er og 4 GB RAM), der udfører arbejdet med at køre builds, test og implementeringer ud af Chef Automate, og er kun påkrævet, når du bruger workflowfunktionerne i Chef Automate.

Du starter med at installere Chef-serveren, enten stand-alone eller i en konfiguration med høj tilgængelighed. Opret derefter en bruger og en organisation til brug med Chef Automate ved hjælp af chef-server-ctl kommandoer. Du kan eventuelt downloade koden til og oprette en push-job-server, og derefter konfigurere Chef-serveren igen ved hjælp af chef-server-ctl kommandoer.

På dette tidspunkt kan du installere og konfigurere Chef Automate ved hjælp af omdrejningstal eller dpkg. Installer din licens, og brug automatisere-ctl kommandoer til at køre en pre-flight check og installationsprocessen. Opsætningen vil bede dig om at oprette en løber til workflow. Endelig kan du konfigurere dine noder til dataindsamling.

AWS OpsWorks for Chef Automate forenkler installationsprocessen meget, forudsat at du vil have dine Automate- og Chef-servere på AWS - du kan implementere på 10 minutter eller mindre. Du kan stadig administrere dine lokale noder fra OpsWorks, selvom OpsWorks skinner, når de fleste af dine noder er på AWS, da det automatisk kan tilmelde noder til automatisk skaleringsgrupper.

Der er en anstændig tutorial på AWS, der lærer dig om Chef, Chef Automate og OpsWorks, hvor du opsætter alt og udfører automatiseringsopgaver trin for trin. Selvstudiet tager lidt længere tid end en grundlæggende implementering, men det er værd at gøre, hvis du er ny hos Chef.

Du kan også installere Chef Automate i virtuelle computere fra AWS Marketplace. Derudover har Chef integrationer med Google Cloud Platform, Microsoft Azure Marketplace og VMware.

Chef Automate er stærk på devops og overholdelse med bred platformstøtte og en stor samling af moduler og leverer en komplet serie af forretningsfunktioner til automatisering af levering og løbende drift af hybrid infrastruktur. Det vil sandsynligvis udfylde de fleste eller alle dine behov for it-automatisering.

Koste: Open source-projekter (Chef, InSpec, Habitat osv.), Gratis. Chef Automate, $ 137 / node / år med standard (12x5) support. AWS OpsWorks med Chef Automate, $ 0,0155 / node / time. Hosted Chef, $ 72 / node / år.

Platform: Chef Automate Server kræver et RHEL-, SUSE- eller Ubuntu OS. Ud over disse understøttes Chef Automate Job Runner på MacOS.

Chef Automate er kompatibel med operativsystemerne VMware, CoreOS, Docker, Windows og Linux; Google, AWS, Azure, OpenStack og VMware skyerne; Kubernetes, Docker Swarm og Mesosphere container orkestrationssystemer. En skybaseret Chef Automate-service er tilgængelig som AWS OpsWorks for Chef Automate. Du skal gå til Automate-konsollen med Google Chrome; IE understøttes specifikt ikke.

Chef DK (udviklingssæt) understøttes kommercielt på MacOS 10.11, RHEL 6, SUSE 11, Ubuntu LTS, Windows 10 eller Windows Server 2012 og senere versioner af disse operativsystemer. Community-support er tilgængelig til Debian 7 og Scientific Linux 6 og nyere.