Google Way

från Gmail till YouTube för att söka, allt på Google körs i behållare. Containerisering gör att våra utvecklingsteam kan röra sig snabbt, distribuera programvara effektivt och arbeta i en aldrig tidigare skådad skala. Varje vecka börjar vi över flera miljarder Behållare., Vi har lärt oss mycket om att köra containeriserade arbetsbelastningar i produktion under det senaste decenniet, och vi har delat denna kunskap med samhället på vägen: från de tidiga dagarna av att bidra med cgroups till Linux-kärnan, till att ta mönster från våra interna verktyg och öppna sourcing dem som Kubernetes-projektet. Vi har paketerat denna expertis i Google Cloud Platform så att utvecklare och företag av alla storlekar enkelt kan knacka på det senaste inom containerinnovation.

containrar 101: Vad är containrar?,

Behållare erbjuder en logisk förpackningsmekanism där applikationer kan abstraheras från den miljö där de faktiskt körs. Denna frikoppling gör att containerbaserade applikationer kan distribueras enkelt och konsekvent, oavsett om målmiljön är ett privat datacenter, det offentliga molnet eller till och med en utvecklares personliga bärbara dator., Containerization ger en ren separation av problem, eftersom utvecklare fokuserar på deras applikationslogik och beroenden, medan it-operationsgrupper kan fokusera på driftsättning och hantering utan att störa applikationsdetaljer som specifika programversioner och konfigurationer som är specifika för appen.

för dem som kommer från virtualiserade miljöer jämförs behållare ofta med virtuella maskiner (VMs)., Du kanske redan är bekant med VM: ett gästoperativsystem som Linux eller Windows körs ovanpå ett värdoperativsystem med virtualiserad åtkomst till den underliggande hårdvaran. Liksom virtuella maskiner, behållare kan du paketera din ansökan tillsammans med bibliotek och andra beroenden, vilket ger isolerade miljöer för att köra dina mjukvarutjänster. Som ni ser nedan dock, likheterna slutar här som behållare erbjuder en mycket mer lätt enhet för utvecklare och IT Ops team att arbeta med, bär en myriad av fördelar.,

virtuella maskiner innehåller följande enheter, staplade ovanpå varandra för visualisering: App, Bin / Libs, Gäst OS, Hypervisor, värd operativsystem, Infrastruktur. Behållare innehåller följande enheter, staplade ovanpå varandra för visualisering: App, Bin / Libs, Container Runtime, värd operativsystem, Infrastruktur.
varför containrar?,

istället för att virtualisera hårdvarustacken som med virtual machines-tillvägagångssättet virtualiserar behållarna på operativsystemnivå, med flera behållare som körs ovanpå OS-kärnan direkt. Det betyder att behållarna är mycket lättare: de delar OS-kärnan, börjar mycket snabbare och använder en bråkdel av minnet jämfört med att starta upp ett helt operativsystem.

det finns många containerformat tillgängliga. Docker är en populär öppen källkod container format som stöds i Google Cloud Platform och genom Google Kubernetes Motor.

varför Sandbox ändå?,

containrar silo-program från varandra om du inte uttryckligen ansluter dem. Det betyder att du inte behöver oroa dig för motstridiga beroenden eller resursbegränsningar – du ställer in explicita resursgränser för varje tjänst. Viktigt är att det är ett extra lager av säkerhet eftersom dina program inte körs direkt på värdoperativsystemet.

konsekvent miljö

Behållare ger utvecklare möjlighet att skapa förutsägbara miljöer som är isolerade från andra program., Behållare kan också innehålla program beroenden som behövs av programmet, såsom specifika versioner av programmeringsspråk runtimes och andra programbibliotek. Ur utvecklarens perspektiv är allt detta garanterat att vara konsekvent oavsett var applikationen slutligen distribueras. Allt detta översätter till produktivitet: utvecklare och IT Ops-team spenderar mindre tid på att felsöka och diagnostisera skillnader i miljöer och mer tid på att skicka ny funktionalitet för användarna., Och det betyder färre buggar eftersom utvecklare nu kan göra antaganden i dev och testmiljöer som de kan vara säkra på kommer att hålla sant i produktionen.

kör var som helst

containrar kan köra nästan var som helst, vilket underlättar utveckling och distribution: på Linux, Windows och Mac-operativsystem; på virtuella maskiner eller bare metal; på en utvecklares maskin eller i datacenter på lokaler; och naturligtvis i det offentliga molnet. Den utbredda populariteten hos Docker – bildformatet för behållare hjälper vidare till med bärbarhet., Var du än vill köra din programvara kan du använda behållare.

isolering

Behållare virtualisera CPU, minne, lagring och nätverksresurser på OS-nivå, vilket ger utvecklare med en sandboxad vy av operativsystemet logiskt isolerad från andra program.,T>

kontrollera kontrollera Application Sandboxing kontrollera kontrollera liten storlek på Disk kontrollera låg Overhead kontrollera
från kod till program

behållare kan du paketera din ansökan och dess beroenden tillsammans i en kortfattad manifest som kan vara version kontrollerad, vilket möjliggör enkel replikering av din ansökan över utvecklare på ditt lag och maskiner i klustret.,

precis som hur programbibliotek paketerar bitar av kod tillsammans, så att utvecklare kan abstrahera bort logik som användarautentisering och sessionshantering, tillåter Behållare att din applikation som helhet packas, abstraherar bort operativsystemet, datorn och till och med själva koden. I kombination med en servicebaserad arkitektur blir hela enheten som utvecklare uppmanas att resonera om mycket mindre, vilket leder till större smidighet och produktivitet. Allt detta underlättar utveckling, testning, distribution och övergripande hantering av dina applikationer.,

monolitisk till servicebaserad arkitektur

containrar fungerar bäst för servicebaserade arkitekturer. I motsats till monolitiska arkitekturer, där alla delar av programmet är sammanflätade — från IO till databehandling till rendering — tjänstebaserade arkitekturer separera dessa i separata komponenter. Separation och arbetsfördelning gör att dina tjänster kan fortsätta att köra även om andra misslyckas, hålla din ansökan som helhet mer tillförlitlig.,

Componentization kan du också utveckla snabbare och mer tillförlitligt; mindre kodbaser är lättare att underhålla och eftersom tjänsterna är separata är det lätt att testa specifika ingångar för utgångar.

Behållare är perfekta för servicebaserade applikationer eftersom du kan hälsa kontrollera varje behållare, begränsa varje tjänst till specifika resurser och starta och stoppa dem oberoende av varandra.

och eftersom containrar abstrakt koden bort, containrar kan du behandla separata tjänster som svarta lådor, ytterligare minska utrymmet en utvecklare måste vara berörda med., När utvecklare arbetar med tjänster som beror på en annan, kan de enkelt starta en behållare för den specifika tjänsten utan att behöva slösa tid på att ställa in rätt miljö och felsökning i förväg.

ta reda på de tre bästa sätten du kan köra dina behållare på Google Cloud!

Google Kubernetes Motor för en container orkestrering lösning, Cloud kör för en helt serverlös strategi och beräkna Motor för att helt enkelt använda virtuella maskiner.,

Kubernetes: Production-Grade Container Orchestration

Vi har haft så stor framgång med vårt interna klusterhanteringssystem Borg att vi har tagit vad vi har lärt oss och lagt det i open source-projektet Kubernetes. Nu kan du och andra företag dra nytta av våra decennier av erfarenhet., Även känd som ”k8s”, erbjuder Kubernetes automatiserad containerorkestration-hantering av dina maskiner och tjänster för dig-förbättra din tillförlitlighet och minska den tid och resurser du behöver spendera på DevOps, för att inte tala om lättnad från stressen som är kopplad till dessa uppgifter.

Kubernetes gör allt som är förknippat med att distribuera och hantera ditt program enklare. Kubernetes automatiserar rollouts och rollbacks, övervakar hälsan hos dina tjänster för att förhindra dåliga rollouts innan saker går dåligt., Det kör också kontinuerligt hälsokontroller mot dina tjänster, starta om behållare som misslyckas eller har stannat, och endast reklamtjänster till kunder när det har bekräftat att de har startat framgångsrikt. Dessutom kommer Kubernetes automatiskt att skala dina tjänster upp eller ner baserat på utnyttjande, vilket garanterar att du bara kör vad du behöver när du behöver det. Liksom Behållare, Kubernetes kan du deklarativt hantera ditt kluster, vilket gör att din inställning som version styrs och enkelt replikeras.,

Kubernetes funktioner
  • kontrollera automatiska utrullningar och rullbackar
  • kontrollera hälsoövervakning av tjänster
  • kontrollera automatisk skalning av tjänster
  • kontrollera deklarativ hantering
  • kontrollera distribuera var som helst, inklusive hybridinstallationer

kanske viktigast är Kubernetes byggd för att användas var som helst, så att du kan orkestrera över distributioner på plats till offentliga moln till hybridinstallationer däremellan., Detta gör att din infrastruktur för att nå dina användare där de är på, dina program för att ha högre tillgänglighet, och ditt företag för att balansera din säkerhet och kostnader oro, alla anpassade till dina specifika behov.

ditt kluster på Google

naturligtvis körs Kubernetes bäst på Google Cloud Platform. Google Kubernetes motor är den främsta hanterade Kubernetes lösning som får dig att snabbt ställa in och produktion klar.,

Kubernetes-motorn hanteras helt av Googles tillförlitlighetsingenjörer, de som känner till containrar bäst, vilket garanterar att ditt kluster är mycket tillgängligt och uppdaterat. Den integreras sömlöst med alla GCP-tjänster, såsom Stackdriver övervakning, diagnostik och loggning; identitet och åtkomsthantering; och Googles bästa i klassen nätverksinfrastruktur.

Kubernetes motorfunktioner
  • kontrollera hanterade Kubernetes med öppen källkod
  • kontrollera 99.,5% SLA, och hög tillgänglighet med integrerade multi-zone distributioner
  • kontrollera sömlös integration av andra GCP-tjänster
  • kontrollera branschledande pris per prestanda
  • kontrollera Flexibel& driftskompatibel med dina kluster på plats eller andra molnleverantörer
  • kontrollera Google-grade managed-Infrastruktur

men vi älskar att ge dig alternativ. Google Cloud Platform erbjuder dig ett fullt spektrum för att köra dina behållare., Från fullt hanterad miljö med Google Cloud kör till klusterhantering med Kubernetes Motor för att rulla-det-själv-infrastruktur på världsklass pris-till-prestanda Google Compute Engine, kan du hitta din idealiska lösning för att köra behållare på Google Cloud Platform.

den kompletta Behållarlösningen

den stannar inte där. Google Cloud Platform tillhandahåller de verktyg du behöver för att använda behållare från utveckling till produktion., Cloud Build och Container registret ger Docker bildlagring och hantering, backas upp av både Googles höga säkerhetsstandarder och världsklass nätverk. Googles Containeroptimerade operativsystem ger ett lätt, mycket säkert operativsystem som levereras med Docker och Kubernetes runtimes förinstallerade. All din containerhantering kan ske på GCP.

Articles

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *