En Introduksjon til Mesosphere

Hva Er Mesosphere

Mesosphere Er en programvareløsning som utvider klyngehåndteringsfunksjonene Til Apache Mesos med tilleggskomponenter for å gi en ny og ny måte å administrere serverinfrastrukturer på. Ved å kombinere flere komponenter Med Mesos, Som Marathon og Chronos, Gjør Mesosphere en måte å enkelt skalere applikasjoner ved å abstrahere mange av utfordringene knyttet til skalering.Mesosphere gir funksjoner som programplanlegging, skalering, feiltoleranse og selvhelbredelse. Det gir også søknad tjeneste oppdagelse, port forening, og end-punkt elastisitet.For å gi en bedre ide om Hvordan Mesosfæren gir de nevnte funksjonene, vil vi kort forklare hva hver nøkkelkomponent i Mesosfæren gjør, starter Med Apache Mesos, og viser hvordan hver brukes i Sammenheng Med Mesosfæren.

En Grunnleggende Oversikt Over Apache Mesos

Apache Mesos Er en åpen kildekode cluster manager som forenkler kjører programmer på en skalerbar klynge av servere, og er hjertet Av Mesosphere systemet.

Mesos tilbyr mange av funksjonene du forventer fra en klyngebehandling, for eksempel:

  • Skalerbarhet til over 10 000 noder
  • Ressursisolering for oppgaver Gjennom Linux-Beholdere
  • Effektiv CPU og minnebevisst ressursplanlegging
  • svært tilgjengelig master gjennom Apache ZooKeeper
  • Web UI for overvåking cluster state

Mesos Arkitektur

Mesos har en arkitektur som består av master og slave daemons, og rammer. Her er en rask oversikt over disse komponentene, og noen relevante vilkår:

  • Master daemon: kjører på en master node og styrer slave daemons
  • Slave daemon: kjører på en hovednode og kjører oppgaver som tilhører rammer
  • Framework: også kjent som Et Mesos-program, består av en planlegger som registrerer seg hos mesteren for å motta ressurstilbud, og en eller flere eksekutorer som lanserer oppgaver på slaver. Eksempler på Mesos rammer inkluderer Marathon, Chronos, Og Hadoop
  • Tilbud: en liste over en slave node tilgjengelige CPU og minne ressurser. Alle slave noder sender tilbud til mesteren, og mesteren gir tilbud til registrerte rammer
  • Oppgave: en arbeidsenhet som er planlagt av et rammeverk, og utføres på en slave node. En oppgave kan være alt fra en bash-kommando eller et skript, TIL EN SQL-spørring, Til En Hadoop-jobb
  • Apache ZooKeeper: programvare som brukes til å koordinere hovednodene

Mesos Architecture

Merk: «ZK» representerer ZooKeeper i dette diagrammet.

denne arkitekturen gjør At Mesos kan dele klyngens ressurser blant applikasjoner med høy grad av granularitet. Mengden ressurser som tilbys til et bestemt rammeverk, er basert på policyen som er satt på masteren, og rammeplanleggeren bestemmer hvilke av tilbudene som skal brukes. Når framework scheduler bestemmer hvilke tilbud Den vil bruke, forteller Den Mesos hvilke oppgaver som skal utføres, Og Mesos lanserer oppgavene på de aktuelle slaver. Når aktiviteter er fullført, og de brukte ressursene frigjøres, gjentas ressurstilbudssyklusen slik at flere aktiviteter kan planlegges.

Høy Tilgjengelighet

Høy tilgjengelighet Av Mesos-mestere i en klynge er aktivert gjennom Bruk Av Apache ZooKeeper for å replikere mastrene for å danne et quorum. ZooKeeper koordinerer også master leader valg og håndterer leder deteksjon blant Mesos komponenter, inkludert slaver og rammer.

Minst tre hovednoder kreves for en svært tilgjengelig konfigurasjon-et tre hovedoppsett gjør at quorum kan opprettholdes i tilfelle en enkelt master mislykkes – men fem hovednoder anbefales for et robust produksjonsmiljø, slik at quorum kan opprettholdes med to hovednoder frakoblet.

for mer Om Apache Mesos, besøk den offisielle dokumentasjonssiden.

En Grunnleggende Oversikt Over Marathon

Marathon er et rammeverk For Mesos som er designet for å starte langvarige applikasjoner, og i Mesosfæren fungerer som erstatning for et tradisjonelt init system. Den har mange funksjoner som forenkler kjørende applikasjoner i et gruppert miljø, for eksempel høy tilgjengelighet, nodebegrensninger, applikasjonshelsekontroller, EN API for skriptbarhet og tjenesteoppdagelse, og et brukervennlig webgrensesnitt. Det legger sin skalering og selvhelbredende evner Til Mesosphere funksjonssett.

Marathon kan brukes til å starte Andre Mesos-rammer, og det kan også starte en prosess som kan startes i det vanlige skallet. Som den er designet for langvarige applikasjoner, vil den sikre at applikasjoner den har lansert, fortsetter å kjøre, selv om slaveknuten(e) de kjører på, mislykkes.

for mer Om Marathon, besøk GitHub-siden.

En Grunnleggende Oversikt Over Chronos

Chronos Er et rammeverk For Mesos som opprinnelig ble utviklet av Airbnb som en erstatning forcron. Som sådan er Det en fullverdig, distribuert og feiltolerant planlegger For Mesos, som letter orkestrering av jobber, som er samlinger av oppgaver. Det inkluderer EN API som gjør det mulig for skripting av planlegging jobber, og en web UI for enkel bruk.

I Mesosphere, Chronos komplimenter Marathon som det gir en annen måte å kjøre programmer, i henhold til en tidsplan eller andre forhold, for eksempel ferdigstillelse av en annen jobb. Det er også i stand til å planlegge jobber på flere Mesos slave noder, og gir statistikk om jobb feil og suksesser.

for mer Om Chronos, besøk Sin GitHub side.

En Grunnleggende Oversikt over HAProxy

HAProxy er en populær åpen kildekode lastbalanser og omvendt proxyløsning. Den kan brukes I Mesosphere å rute nettverkstrafikk fra kjente verter, vanligvis Mesos mestere, til de faktiske tjenestene som kjører På Mesos slave noder. Tjenesten oppdagelse evner Av Mesos kan brukes til å dynamisk konfigurere haproxy å rute innkommende trafikk til riktig backend slave noder.

for mer om de generelle egenskapene Til HAProxy, sjekk Ut Vår Introduksjon Til HAProxy.

Konklusjon

Mesosphere benytter serverinfrastruktur paradigmer som kan virke ukjente, da det ble designet med et sterkt fokus på clustering og skalerbarhet, men forhåpentligvis har du nå en god forståelse av hvordan det fungerer. Hver av komponentene den er basert på, gir løsninger på problemer som ofte står overfor når man arbeider med clustering og skalering av en serverinfrastruktur, Og Mesosphere har som mål å gi en komplett løsning på disse behovene.

Nå som du vet Det grunnleggende Mesosphere, sjekk ut neste tutorial i denne serien. Det vil lære deg hvordan du setter opp en produksjonsklar Mesosphere cluster På Ubuntu 14.04!

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.