Kubernetes avventura Dailymotion: ħolqien ta 'infrastruttura fis-sħab + fuq il-post

Kubernetes avventura Dailymotion: ħolqien ta 'infrastruttura fis-sħab + fuq il-post

Nota. transl.: Dailymotion huwa wieħed mill-akbar servizzi ta' hosting ta' vidjow fid-dinja u għalhekk utent notevoli ta' Kubernetes. F'dan il-materjal, il-perit tas-sistema David Donchez jaqsam ir-riżultati tal-ħolqien tal-pjattaforma ta 'produzzjoni tal-kumpanija bbażata fuq K8s, li bdiet b'installazzjoni ta' cloud f'GKE u spiċċat bħala soluzzjoni ibrida, li ppermettiet ħinijiet ta 'rispons aħjar u tfaddil fuq l-ispejjeż tal-infrastruttura.

Jiddeċiedu li jerġgħu jinbnew l-API Core Dailymotion tliet snin ilu, ridna niżviluppaw mod aktar effiċjenti biex jospitaw l-applikazzjonijiet u nagħmluha aktar faċli proċessi fl-iżvilupp u l-produzzjoni. Għal dan il-għan, iddeċidejna li nużaw pjattaforma tal-orkestrazzjoni tal-kontejners u naturalment għażilna Kubernetes.

Għaliex ta 'min tibni l-pjattaforma tiegħek ibbażata fuq Kubernetes?

API fil-livell ta' produzzjoni fi ftit ħin bl-użu ta' Google Cloud

Sajf 2016

Tliet snin ilu, immedjatament wara li nxtara Dailymotion minn Vivendi, it-timijiet tal-inġinerija tagħna huma ffokati fuq għan globali wieħed: li jinħoloq prodott Dailymotion kompletament ġdid.

Ibbażat fuq l-analiżi tagħna tal-kontenituri, is-soluzzjonijiet tal-orkestrazzjoni, u l-esperjenza tal-passat tagħna, aħna konvinti li Kubernetes huwa l-għażla t-tajba. Xi żviluppaturi diġà kellhom fehim tal-kunċetti bażiċi u kienu jafu kif jużawha, li kien vantaġġ kbir għat-trasformazzjoni tal-infrastruttura.

Mill-perspettiva tal-infrastruttura, kienet meħtieġa sistema qawwija u flessibbli biex tospita tipi ġodda ta 'applikazzjonijiet cloud-native. Għażilna li nibqgħu fis-sħab fil-bidu tal-vjaġġ tagħna sabiex inkunu nistgħu nibnu l-aktar pjattaforma fuq il-post b'saħħitha possibbli b'serħan tal-moħħ. Iddeċidejna li niskjeraw l-applikazzjonijiet tagħna bl-użu tal-Google Kubernetes Engine, għalkemm konna nafu li llum jew għada se nimxu lejn iċ-ċentri tad-dejta tagħna stess u napplikaw strateġija ibrida.

Għaliex għażilt GKE?

Għamilna din l-għażla prinċipalment għal raġunijiet tekniċi. Barra minn hekk, kien meħtieġ li tiġi pprovduta malajr infrastruttura li tissodisfa l-ħtiġijiet tan-negozju tal-kumpanija. Kellna xi rekwiżiti għall-hosting tal-applikazzjonijiet, bħad-distribuzzjoni ġeografika, iskalabbiltà u tolleranza għall-ħsarat.

Kubernetes avventura Dailymotion: ħolqien ta 'infrastruttura fis-sħab + fuq il-post
GKE raggruppa f'Dailymotion

Peress li Dailymotion hija pjattaforma tal-vidjo disponibbli mad-dinja kollha, ridna tassew intejbu l-kwalità tas-servizz billi nnaqqsu l-ħin ta’ stennija. (latenza)... Preċedentement API tagħna kien disponibbli biss f'Pariġi, li kien subottimali. Ridt li nkun kapaċi nospita applikazzjonijiet mhux biss fl-Ewropa, iżda wkoll fl-Asja u fl-Istati Uniti.

Din is-sensittività għal latency kienet tfisser li jrid isir xogħol serju fuq l-arkitettura tan-netwerk tal-pjattaforma. Filwaqt li l-biċċa l-kbira tas-servizzi tal-cloud ġiegħlek toħloq in-netwerk tiegħek stess f'kull reġjun u mbagħad tikkonnettjahom permezz ta 'VPN jew xi tip ta' servizz ġestit, Google Cloud ippermettilek toħloq netwerk uniku kompletament routable li jkopri r-reġjuni kollha ta 'Google. Dan huwa vantaġġ kbir f'termini ta 'tħaddim u effiċjenza tas-sistema.

Barra minn hekk, servizzi tan-netwerk u load balancers minn Google Cloud jagħmlu xogħol eċċellenti. Sempliċement jippermettulek tuża indirizzi IP pubbliċi arbitrarji minn kull reġjun, u l-protokoll BGP mill-isbaħ jieħu ħsieb il-bqija (jiġifieri direzzjoni mill-ġdid lill-utenti lejn l-eqreb cluster). Ovvjament, f'każ ta' falliment, it-traffiku jmur awtomatikament f'reġjun ieħor mingħajr ebda intervent uman.

Kubernetes avventura Dailymotion: ħolqien ta 'infrastruttura fis-sħab + fuq il-post
Monitoraġġ Google Load Balancing

Il-pjattaforma tagħna tagħmel ukoll użu qawwi mill-GPUs. Google Cloud jippermettilek tużahom b'mod effettiv ħafna direttament fil-clusters ta' Kubernetes.

Dak iż-żmien, it-tim tal-infrastruttura kien iffukat primarjament fuq il-munzell tal-legat skjerat fuq servers fiżiċi. Huwa għalhekk li l-użu ta 'servizz ġestit (inklużi l-kaptani ta' Kubernetes) issodisfa r-rekwiżiti tagħna u ppermettilna nħarrġu timijiet biex naħdmu ma 'clusters lokali.

Bħala riżultat, stajna nibdew nirċievu traffiku tal-produzzjoni fuq l-infrastruttura tal-Google Cloud 6 xhur biss wara l-bidu tax-xogħol.

Madankollu, minkejja numru ta 'vantaġġi, il-ħidma ma' fornitur tal-cloud hija assoċjata ma 'ċerti spejjeż, li jistgħu jiżdiedu skont it-tagħbija. Huwa għalhekk li analizzajna bir-reqqa kull servizz amministrat li użajna, bit-tama li nimplimentawhom fil-post fil-futur. Fil-fatt, l-implimentazzjoni tar-raggruppamenti lokali bdiet fl-aħħar tal-2016 u fl-istess ħin inbdiet l-istrateġija ibrida.

Tnedija tal-pjattaforma lokali tal-orkestrazzjoni tal-kontejners Dailymotion

Ħarifa 2016

F'kundizzjonijiet meta l-munzell kollu kien lest għall-produzzjoni, u jaħdem fuq l-API kompliet, kien wasal iż-żmien li nikkonċentra fuq clusters reġjonali.

Dak iż-żmien, l-utenti kienu qed jaraw aktar minn 3 biljun vidjow kull xahar. Naturalment, kellna n-Netwerk estensiv ta' Kunsinna tal-Kontenut tagħna stess għal ħafna snin. Ridna nieħdu vantaġġ minn din iċ-ċirkustanza u niskjeraw raggruppamenti Kubernetes f'ċentri tad-dejta eżistenti.

L-infrastruttura ta 'Dailymotion kienet tikkonsisti f'aktar minn 2,5 elf servers f'sitt ċentri tad-dejta. Kollha kemm huma kkonfigurati bl-użu ta 'Saltstack. Bdejna nħejju r-riċetti kollha meħtieġa għall-ħolqien ta' nodi ta' kaptan u ħaddiem, kif ukoll cluster etcd.

Kubernetes avventura Dailymotion: ħolqien ta 'infrastruttura fis-sħab + fuq il-post

Parti tan-netwerk

In-netwerk tagħna huwa mgħoddi kompletament. Kull server jirreklama l-IP tiegħu fuq in-netwerk billi juża Exabgp. Aħna qabblu diversi plugins tan-netwerk u l-uniku wieħed li ssodisfa l-bżonnijiet kollha (minħabba l-approċċ L3 użat) kien Calico. Hija tidħol perfettament fil-mudell eżistenti tal-infrastruttura tan-netwerk.

Peress li ridna nużaw l-elementi kollha ta 'infrastruttura disponibbli, l-ewwel ħaġa li kellna nagħmlu kienet insemmu l-utilità tan-netwerk tagħna mkabbra fid-dar (użata fuq is-servers kollha): użaha biex tirreklama firxiet ta' indirizzi IP fuq in-netwerk b'nodi Kubernetes. Ħallejna lil Calico jassenja indirizzi IP lill-imżiewed, iżda ma użahx u għadu ma użahx għal sessjonijiet BGP fuq tagħmir tan-netwerk. Fil-fatt, ir-routing huwa mmaniġġjat minn Exabgp, li jirreklama s-subnets użati minn Calico. Dan jippermettilna nilħqu kwalunkwe pod min-netwerk intern (u b'mod partikolari minn load balancers).

Kif nimmaniġġjaw it-traffiku tad-dħul

Biex terġa 'tidderieġi t-talbiet deħlin lejn is-servizz mixtieq, ġie deċiż li jintuża Ingress Controller minħabba l-integrazzjoni tiegħu mar-riżorsi ta' ingress Kubernetes.

Tliet snin ilu, nginx-ingress-controller kien l-aktar kontrollur matur: Nginx kien ilu għal żmien twil u kien magħruf għall-istabbiltà u l-prestazzjoni tiegħu.

Fis-sistema tagħna, iddeċidejna li npoġġu l-kontrolluri fuq servers blade dedikati ta '10-Gigabit. Kull kontrollur kien imqabbad mal-endpoint kube-apiserver tal-cluster korrispondenti. Dawn is-servers użaw ukoll Exabgp biex jirreklamaw indirizzi IP pubbliċi jew privati. It-topoloġija tan-netwerk tagħna tippermettilna nużaw BGP minn dawn il-kontrolluri biex inwasslu t-traffiku kollu direttament lejn il-miżwed mingħajr ma nużaw servizz bħal NodePort. Dan l-approċċ jgħin biex jevita traffiku orizzontali bejn in-nodi u jtejjeb l-effiċjenza.

Kubernetes avventura Dailymotion: ħolqien ta 'infrastruttura fis-sħab + fuq il-post
Moviment tat-traffiku mill-Internet għall-imżiewed

Issa li nifhmu l-pjattaforma ibrida tagħna, nistgħu nidħlu aktar fil-fond fil-proċess innifsu tal-migrazzjoni tat-traffiku.

Migrazzjoni tat-traffiku minn Google Cloud għall-infrastruttura Dailymotion

Ħarifa 2018

Wara kważi sentejn ta 'bini, ittestjar u rfinar, fl-aħħar għandna munzell sħiħ ta' Kubernetes lest biex jaċċetta xi traffiku.

Kubernetes avventura Dailymotion: ħolqien ta 'infrastruttura fis-sħab + fuq il-post

L-istrateġija tar-rotot attwali hija pjuttost sempliċi, iżda biżżejjed biex tissodisfa l-ħtiġijiet. Minbarra l-IPs pubbliċi (fuq Google Cloud u Dailymotion), l-AWS Route 53 tintuża biex tistabbilixxi politiki u tidderieġi mill-ġdid lill-utenti lejn il-cluster tal-għażla tagħna.

Kubernetes avventura Dailymotion: ħolqien ta 'infrastruttura fis-sħab + fuq il-post
Eżempju ta’ politika ta’ rotta bl-użu tar-Rotta 53

Bil-Google Cloud dan huwa faċli peress li aħna naqsmu IP waħda fil-clusters kollha u l-utent jiġi ridirett lejn l-eqreb cluster GKE. Għall-clusters tagħna t-teknoloġija hija differenti, peress li l-IPs tagħhom huma differenti.

Matul il-migrazzjoni, fittixna li nidderieġu mill-ġdid it-talbiet reġjonali lejn il-clusters xierqa u evalwajna l-benefiċċji ta’ dan l-approċċ.

Minħabba li l-clusters tal-GKE tagħna huma kkonfigurati biex jiskalaw awtomatikament bl-użu tal-Metriċi Custom, dawn jiżdiedu/jiżżlu skont it-traffiku li jkun dieħel.

Fil-modalità normali, it-traffiku reġjonali kollu huwa dirett lejn il-cluster lokali, u GKE iservi bħala riżerva f'każ ta' problemi (il-verifiki tas-saħħa jsiru permezz tar-Rotta 53).

...

Fil-futur, irridu nawtomatizzaw bis-sħiħ il-politiki tar-rotot biex niksbu strateġija ibrida awtonoma li kontinwament ittejjeb l-aċċessibbiltà għall-utenti. Min-naħa pożittiva, l-ispejjeż tal-cloud tnaqqsu b'mod sinifikanti u l-ħinijiet ta 'rispons tal-API saħansitra tnaqqsu. Aħna nafdaw il-pjattaforma tal-cloud li tirriżulta u lesti li nidderieġu aktar traffiku lejha jekk meħtieġ.

PS minn traduttur

Jista 'jkun interessat ukoll f'post ieħor reċenti ta' Dailymotion dwar Kubernetes. Huwa ddedikat għall-iskjerament ta 'applikazzjonijiet ma Helm fuq ħafna raggruppamenti Kubernetes u ġie ppubblikat madwar xahar ilu.

Aqra wkoll fuq il-blog tagħna:

Sors: www.habr.com

Żid kumment