Effektiv administrasjon av OpenStack med åpen kildekode-verktøy
I skybaserte miljøer er automatisering av alle prosesser avgjørende, spesielt når det gjelder on-demand skytjenester. Utvikling av programvare involverer ofte kontinuerlig distribusjon og drift av et miljø som er spredt globalt, noe som er særlig relevant for on-demand skyressurser.
OpenStack er en plattform med åpen kildekode som gir deg muligheten til å bygge en IaaS-sky (Infrastructure as a Service) basert på standard maskinvare. Teknologien bak OpenStack er sammensatt av flere relaterte prosjekter som tilbyr forskjellige komponenter for en helhetlig skyinfrastrukturløsning. Den kan håndtere store mengder lagringsplass og nettverksressurser, både innenfor et datasenter som en privat sky eller eksternt som en offentlig sky.
For å administrere en OpenStack-skyinfrastruktur effektivt, er det nødvendig å kontrollere konfigurasjonen av de enkelte skytjenestene. En av de største fordelene med OpenStack er dens horisontale skalerbarhet, noe som gjør det enkelt å utvide skyen ved å legge til flere nettverks- og lagringssystemer etter behov.
Hvis du ønsker å lære mer om OpenStack, kan du vurdere dette nyttige kurset.
En sentral del av skalerbarhet i skyen er tiden det tar å sette opp og drive skyen, samt kostnadene knyttet til drift. For å oppnå dette, er det viktig å ha en automatisert distribusjons- og konfigurasjonsinfrastruktur, som inkluderer konfigurasjonsstyringssystemer.
Det finnes en rekke åpen kildekode-verktøy som kan brukes til å installere, administrere og drifte en OpenStack-sky. Det viktigste spørsmålet er hvordan du velger det mest egnede verktøyet for dine behov.
Chef
Chef er et kraftig automatiseringsrammeverk som forenkler konfigurering av servere og applikasjoner, uavhengig av om de er plassert fysisk, virtuelt eller i skyen. Chef er spesielt utviklet med tanke på utviklere og tilbyr «kokebøker» for å tilpasse seg ulike OpenStack-konfigurasjoner.
Verktøyet bruker Ruby som programmeringsspråk, og tilbyr en søkbar portal der brukere kan dele teknikker og «kokebøker». Chef automatiserer konfigurasjonsadministrasjon og sikrer at systemer er riktig og konsekvent konfigurert.
Chef har en agentbasert arkitektur, der en klient installeres på hver virtuelle maskin (VM) eller server, mens en sentral hovedagent styrer prosessen. Chef er godt støttet av et stort fellesskap med mange ressurser som kokebøker og dokumentasjon. Noen av de viktigste funksjonene inkluderer:
- Bruker enkle, deklarative definisjoner for enkle administrative oppgaver.
- Konfigurerer ulike skybaserte SaaS-tjenester og integrerer sky-provisioning-APIer.
- Tilbyr en felles prosess for administrasjon av lokale og skybaserte ressurser.
- Gjør infrastrukturen fleksibel, versjonskontrollert og testbar.
- Sikrer konsistente konfigurasjoner gjennom hele utviklingsprosessen.
- Automatisk korrigering av konfigurasjonsdrift.
- Leveres med Chef Development Kit, som inneholder robuste testverktøy for å validere endringer i infrastrukturen.
Dette IT-automatiserings- og konfigurasjonsverktøyet er ideelt for utviklingsorienterte infrastrukturprosjekter, og gir omfattende konfigurasjonsadministrasjon og en rekke infrastrukturadministrasjonsoppgaver ved hjelp av «Recipes» (oppskrifter).
Ansible
Ansible er et automatiseringsverktøy for infrastruktur som støtter konfigurering av systemer, distribusjon av programvare og mer avanserte IT-oppgaver som kontinuerlig distribusjon og installasjon av oppdateringer uten nedetid. Ansibles OpenStack-moduler kan brukes til å styre alle typer skyoperasjoner.
Ansible tilbyr mer enn bare enkel distribusjon.
Ansibles fokus er på enkelhet og brukervennlighet, i tillegg til sikkerhet og pålitelighet. Ansible tilbyr kraftige verktøy for å sette opp og administrere OpenStack, for å klargjøre, konfigurere og distribuere applikasjoner i skyen.
Verktøyet bruker en enkel, agentløs arkitektur, noe som betyr at det ikke er nødvendig å konfigurere VM-er eller arbeidsstasjoner før installasjon. Ansible kan normalt administreres via kommandolinjen. Noen av de viktigste funksjonene er:
- Tilbyr enkle løsninger for konfigurasjonsadministrasjon.
- Muliggjør pålitelig og repeterbar konfigurering av IT-infrastruktur.
- Designet for å være enkelt å lære for administratorer og utviklere.
- Gir systemadministratorer et kontrollspråk som bruker moduler eller rutiner for å utføre alle slags oppgaver på noder.
- Består av mer enn 1300 moduler med et aktivt fellesskap for støtte og utvikling.
Fuel
Fuel er et GUI-basert verktøy for systemadministratorer for å sette opp og administrere en OpenStack-sky. Fuel er et OpenStack-prosjekt som fokuserer på automatisering av distribusjon og testing av OpenStack og tredjeparts tillegg.
Fuel oppdager automatisk alle virtuelle noder som er koblet til nettverket og er sammensatt av flere uavhengige komponenter. Enkelte av disse komponentene kan gjenbrukes separat fra Fuel uten modifikasjoner, mens andre krever mindre justeringer. Noen av de viktigste funksjonene er:
- Utfører kontroller etter distribusjon og tester for å validere den distribuerte OpenStack-skyen.
- Kan sette opp og administrere flere OpenStack-klynger.
- Støtter CentOS og Ubuntu.
- Hjelper systemadministratorer å spore sanntidslogger via GUI for OpenStack-skyen.
Puppet
Puppet er et deklarativt språk for «skriv en gang, distribuer mange»-pakker for on-demand OpenStack-konfigurasjon og versjonsadministrasjon. Puppet er implementert i en klient/server-modell, eller i serverløs modus. Klienter spør serveren jevnlig om nødvendig tilstand og leverer statusrapporter tilbake til serveren.
Puppet kan planlegge, oppgradere og administrere noder gjennom hele deres livssyklus. Alle moduler og konfigurasjoner er produsert med et Puppet-spesifikt språk basert på Ruby, noe som krever programmeringskunnskaper i tillegg til systemadministrasjonsferdigheter. Verktøyet inkluderer et webgrensesnitt og rapporteringsverktøy.
Puppet Enterprise muliggjør sanntidsadministrasjon av noder ved hjelp av forhåndsbygde moduler fra hovedserverne. Rapporteringsverktøyene gir detaljert informasjon om hvordan agenter fungerer og hvilke endringer som er gjort. Noen av de viktigste funksjonene er:
- Støtter fullskala automatisering med spesifikke rapporterings- og samsvarsfunksjoner.
- Har integrasjoner og moduler fra Forge.
- Gjør lapping og oppdatering enklere.
- Skaper herdede basiskonfigurasjoner for å overholde regulatoriske standarder.
- Automatiserer og håndhever patchadministrasjon og reduserer potensielle sårbarheter.
Compass
Compass er designet for automatisert distribusjon og administrasjon av OpenStack.
Verktøyet reduserer kompleksitet, administrerer tid og kontrollerer feil i serveradministrasjon i datasenteret. Compass støtter oppstart av serverpoolen som er relatert til enhver skyplattform fra dedikerte metallnoder.
Compass hjelper systemadministratorer med å velge maskinvare, distribuere OS og hypervisor, samt gi omfattende konfigurasjonsadministrasjon. Andre funksjoner inkluderer:
- Muliggjør implementering av ulike konfigurasjoner gjennom metadata.
- Hjelper med å forberede oppstart av infrastrukturen og gir operatører programmeringsmuligheter for dette.
- Implementerer utvidbarhet gjennom integrasjon av flere verktøy for konfigurasjon av OpenStack-klynger.
- Compass-kjernen er integrert med andre verktøy for ressursoppdagelse, OS-planlegging og pakkedistribusjon.
Konklusjon
Det anbefales å teste ut hvert av disse verktøyene for å finne det som best dekker dine spesifikke behov. Innenfor OpenStack finnes det et bredt utvalg av verktøy og teknikker som kan forenkle installasjon og oppsett. Hvis du planlegger å sette opp en privat sky, kan Fuel eller Ansible være gode alternativer. I tillegg kan du være interessert i å lese om 8 Cloud Object Storage-løsninger for lagring av offentlige og private data.