GitHub syftar till att främja innovation med Kubernetes migration

0
120

0

GitHub på onsdag är att dela med sig information om den massiva tekniska strävan dess ingenjörer gick igenom för att migrera den infrastruktur som driver github.com och api.github.com -några av dess mest kritiska arbetsbelastning — från en uppsättning av manuellt konfigurerad fysiska servrar för att Kubernetes kluster som kör behållare ansökan.

GitHub är övertygad om att övergången kommer att tillåta en snabbare innovation på nätet code sharing-och utvecklingsplattform.

“Vi har gett våra ingenjörer för en bättre miljö att experimentera och köra koden som driver github.com,” Jesse Newland, GitHub huvudsakliga webbplats tillförlitlighet ingenjör, sade till ZDNet. “Vi är verkligen glada att se graden av innovation öka på GitHub och förhoppningsvis använda detta för att få bättre mjukvara och tjänster till alla i hela världen-och som en följd av detta har en positiv inverkan på den programvara som helhet.”

Efter år av att köra en i stort sett statisk grupp av servrar som drivs den ansökan som serverar web ansökningar, hade tiden kommit för GitHub att flytta till ett system med mer flexibilitet. Nya tjänster kan ta dagar, veckor, eller månader för att distribuera.

“Vi som behövs för att bygga små miljöer för experiment, att ge ingenjörer för att bygga nya grejer,” Newland sagt. “Vi är också vi som behövs för att snabbare reagera på förändringar i efterfrågan. Vår trafik är växande, och vi måste alltid ta itu med det, och vi gör också att se regelbundna dalar i vår trafik.”

Laget vände sig till Kubernetes för sin starka öppen källkod för att stödja projektet, GitHub första erfarenhet med det, och på grund av den mängd information som finns tillgänglig om den erfarenhet som motiverade dess design.

En av GitHub är stora hinder, dock var bristen på dokumentation för utbyggnaden av Kubernetes kluster i en fysisk datacentermiljö. Faktum är att mycket av den relevanta dokumentationen som finns på motivet är fokuserat på hem-användare, Newland sagt.

Som ett resultat av “flera av oss som arbetat i projektet har en garderob Kubernetes kluster i vårt hus,” Newland sade, “vilket är bra för experiment.”

Medan GitHub har drabbat milstolpe i flyttande program som körs github.com det är fortfarande raffinering hur det går Kubernetes i en fysisk miljö. Så småningom, Newland sade hans team vill dela den upplevelsen “och försöka att förbättra dokumentationen av Kubernetes så att andra folk som syftar till att göra samma sak i framtiden att få en bättre upplevelse.”

Laget tog också en risk genom att välja att starta sin migration med en av sina mest kritiska arbetsbelastning.

“Vi gjorde det mycket medvetet,” Newland sagt. “Vi visste att arbetsbelastningen är mycket väl förstås av ett stort antal människor runt om i företaget. Du kan hitta alla hörn av ansökan och hitta personer med stor erfarenhet i att viss del av det. Varje gång vi sprang in i ett problem, vi kunde spåra ingenjörer som verkligen är experter på området.”

Medan ansökan GitHub inledningsvis riktade, det var inte första ansökan laget sprang på Kubernetes-de behövs för att köra andra stödjande tjänster. Fortfarande, detta är vad teamet ansåg att deras första anmärkningsvärda framgång.

“Jag har sett, både på GitHub och andra organisationer, när en migration försök görs med hjälp av en leksak eller mindre som ett första stort steg,” Newland sagt. “Det kan ofta vara mycket framgångsrik-och det kan ofta stall där. Det är vad vi var ute efter att undvika. Vi ville inte att komma halvvägs och sedan flytta till ett annat sätt att bygga program.”

För att säkerställa Kubernetes skulle fungera väl för sitt behov, GitHub-team byggt en pre-produktion staging-miljö som kallas “översyn lab.”

“Vi kunde presentera något att ingenjörer internt som får oss att nästan crowdsource, på ett sätt, validering av funktionaliteten på denna plattform och vår användning av it,” Newland förklaras. “Att med låg risk experiment miljön var riktigt effektfulla och får människor att röra sig snabbt med en high stakes projekt eftersom de hade denna typ av isolerad miljö där blast radie av några problem var begränsad.”

Efter att ha sett de positiva resultaten av denna migration, GitHub arbetar för att ge sina ingenjörer att ett sätt att distribuera nya program för att Kubernetes i en self-service mode. Redan Newland sade, “vi har sett en ökning i graden av innovation och nya idéer och projekt programvara som inte bara existera och arbeta på din bärbara dator men existera och arbeta i produktionen.”

Relaterade täckning:

Linux Foundation erbjuder gratis Introduktion till Kubernetes klass Amazon hoppar på Kubernetes tåget GitHub öppna källor OctoDNS, nya verktyg för att hantera DNS-poster

0