Kubernetes kasada Dailymotion: ƙirƙirar abubuwan more rayuwa a cikin gajimare + kan-gidaje

Kubernetes kasada Dailymotion: ƙirƙirar abubuwan more rayuwa a cikin gajimare + kan-gidaje

Lura. fassara: Dailymotion shine ɗayan manyan sabis na ɗaukar bidiyo a duniya don haka sanannen mai amfani da Kubernetes. A cikin wannan kayan, masanin tsarin David Donchez ya raba sakamakon samar da tsarin samar da kamfanin bisa ga K8s, wanda ya fara tare da shigarwar girgije a cikin GKE kuma ya ƙare a matsayin mafita na matasan, wanda ya ba da damar mafi kyawun lokutan amsawa da tanadi akan farashin kayan aiki.

Yanke shawarar Sake Gina Core API Dailymotion shekaru uku da suka gabata, muna son haɓaka hanyar da ta fi dacewa don ɗaukar aikace-aikacen da sauƙaƙe matakai a cikin ci gaba da samarwa. Don wannan dalili, mun yanke shawarar yin amfani da dandamali na ƙungiyar kade-kade kuma mun zaɓi Kubernetes ta zahiri.

Me yasa ya cancanci gina dandalin ku bisa Kubernetes?

API ɗin matakin samarwa ba tare da wani lokaci ba ta amfani da Google Cloud

Lokacin bazara 2016

Shekaru uku da suka gabata, nan da nan bayan Dailymotion ta siya vivendi, Ƙungiyoyin injiniyanmu sun mayar da hankali kan burin duniya ɗaya: don ƙirƙirar sabon samfurin Dailymotion.

Dangane da binciken mu na kwantena, mafita na ƙungiyar kade-kade, da kuma kwarewarmu ta baya, mun tabbata cewa Kubernetes shine zaɓin da ya dace. Wasu masu haɓakawa sun riga sun fahimci ainihin ra'ayoyin kuma sun san yadda ake amfani da su, wanda ya kasance babbar fa'ida ga canjin ababen more rayuwa.

Daga yanayin abubuwan more rayuwa, ana buƙatar tsari mai ƙarfi da sassauƙa don ɗaukar sabbin nau'ikan aikace-aikacen asali na girgije. Mun zaɓi zama a cikin gajimare a farkon tafiyarmu domin mu gina mafi ƙaƙƙarfan dandali mai yuwuwa tare da kwanciyar hankali. Mun yanke shawarar tura aikace-aikacen mu ta amfani da Google Kubernetes Engine, ko da yake mun san cewa ba dade ko ba dade za mu matsa zuwa namu cibiyoyin bayanai da kuma amfani da matasan dabarun.

Me yasa kuka zabi GKE?

Mun yi wannan zaɓi ne saboda dalilai na fasaha. Bugu da kari, ya zama dole a gaggauta samar da ababen more rayuwa wadanda suka dace da bukatun kasuwancin kamfanin. Muna da wasu buƙatu don ɗaukar nauyin aikace-aikacen, kamar rarraba ƙasa, haɓakawa da haƙurin kuskure.

Kubernetes kasada Dailymotion: ƙirƙirar abubuwan more rayuwa a cikin gajimare + kan-gidaje
GKE gungu a cikin Dailymotion

Tun da Dailymotion dandamali ne na bidiyo da ake samu a duk duniya, da gaske muna son haɓaka ingancin sabis ɗin ta rage lokacin jira (latency)... A baya API ɗin mu yana samuwa ne kawai a cikin Paris, wanda ya fi kyau. Ina so in sami damar daukar nauyin aikace-aikacen ba kawai a Turai ba, har ma a Asiya da Amurka.

Wannan azanci ga jinkiri yana nufin cewa dole ne a yi aiki mai tsanani akan gine-ginen cibiyar sadarwa na dandamali. Yayin da yawancin ayyukan girgije suka tilasta muku ƙirƙirar hanyar sadarwar ku a kowane yanki sannan ku haɗa su ta hanyar VPN ko wani nau'in sabis ɗin sarrafawa, Google Cloud ya ba ku damar ƙirƙirar hanyar sadarwa guda ɗaya mai sauƙi wacce ke rufe duk yankuna na Google. Wannan babban ƙari ne dangane da aiki da ingantaccen tsarin.

Bugu da kari, ayyukan cibiyar sadarwa da masu daidaita kaya daga Google Cloud suna yin kyakkyawan aiki. Suna kawai ba ku damar amfani da adiresoshin IP na jama'a na sabani daga kowane yanki, kuma ƙa'idar BGP mai ban mamaki tana kula da sauran (watau tura masu amfani zuwa gungu mafi kusa). Babu shakka, idan aka gaza, zirga-zirga za ta tafi wani yanki kai tsaye ba tare da wani sa hannun ɗan adam ba.

Kubernetes kasada Dailymotion: ƙirƙirar abubuwan more rayuwa a cikin gajimare + kan-gidaje
Kula da Daidaita Load na Google

Dandalin mu kuma yana yin amfani da GPUs sosai. Google Cloud yana ba ku damar amfani da su sosai kai tsaye a cikin gungu na Kubernetes.

A lokacin, ƙungiyar samar da ababen more rayuwa ta fi mayar da hankali kan tarin gadon da aka tura akan sabar ta zahiri. Shi ya sa ta yin amfani da sabis ɗin sarrafawa (ciki har da mashawartan Kubernetes) ya cika buƙatunmu kuma ya ba mu damar horar da ƙungiyoyi don yin aiki tare da gungu na gida.

A sakamakon haka, mun sami damar fara karɓar zirga-zirgar samarwa akan kayan aikin Google Cloud kawai watanni 6 bayan fara aiki.

Duk da haka, duk da yawan abũbuwan amfãni, yin aiki tare da mai samar da girgije yana hade da wasu farashi, wanda zai iya karuwa dangane da nauyin. Shi ya sa muka yi nazari a hankali kowane sabis ɗin da aka sarrafa da muka yi amfani da shi, muna fatan aiwatar da su a cikin gida a nan gaba. A gaskiya ma, an fara aiwatar da gungu na gida a ƙarshen 2016 kuma an ƙaddamar da dabarun matasan a lokaci guda.

Kaddamar da dandamalin ƙungiyar kwantena na gida Dailymotion

Kaka 2016

A cikin yanayi lokacin da duk tari ya shirya don samarwa, kuma yayi aiki akan API ya ci gaba, lokaci ya yi da za a mai da hankali kan gungu na yanki.

A lokacin, masu amfani suna kallon bidiyo fiye da biliyan 3 kowane wata. Tabbas, mun sami babban hanyar sadarwar Isar da abun ciki namu tsawon shekaru da yawa. Mun so mu yi amfani da wannan yanayin kuma mu tura gungu na Kubernetes a cikin cibiyoyin bayanai na yanzu.

Kayan aikin Dailymotion sun ƙunshi sabobin fiye da dubu 2,5 a cikin cibiyoyin bayanai guda shida. Dukkansu an saita su ta amfani da Saltstack. Mun fara shirya duk mahimman girke-girke don ƙirƙirar nodes na master da ma'aikata, da kuma gungu na sauransu.

Kubernetes kasada Dailymotion: ƙirƙirar abubuwan more rayuwa a cikin gajimare + kan-gidaje

Bangaren cibiyar sadarwa

Cibiyar sadarwar mu gaba daya ta lalace. Kowane uwar garken yana tallata IP ɗin sa akan hanyar sadarwar ta amfani da Exabgp. Mun kwatanta plugins na cibiyar sadarwa da yawa kuma kawai wanda ya gamsar da duk buƙatun (saboda tsarin L3 da aka yi amfani da shi). Calico. Ya dace daidai da tsarin samar da ababen more rayuwa na cibiyar sadarwa.

Tun da muna so mu yi amfani da duk abubuwan abubuwan da ke akwai, abu na farko da za mu yi shi ne gano kayan aikin cibiyar sadarwar mu na gida (amfani da shi akan duk sabobin): amfani da shi don tallata jeri na adireshin IP akan hanyar sadarwa tare da Kubernetes nodes. Mun ƙyale Calico ya sanya adiresoshin IP zuwa kwasfa, amma bai yi ba kuma har yanzu ba mu yi amfani da shi don zaman BGP akan kayan aikin cibiyar sadarwa ba. A haƙiƙa, Exabgp ne ke kula da zirga-zirgar ababen hawa, wanda ke tallata ƙananan hanyoyin sadarwa da Calico ke amfani da shi. Wannan yana ba mu damar isa ga kowane kwasfa daga cibiyar sadarwar ciki (kuma musamman daga masu daidaitawa).

Yadda muke sarrafa cunkoson ababen hawa

Don tura buƙatun masu shigowa zuwa sabis ɗin da ake so, an yanke shawarar yin amfani da Ingress Controller saboda haɗin kai tare da albarkatun ingress Kubernetes.

Shekaru uku da suka wuce, nginx-ingress-controller shine mafi girma mai kulawa: Nginx ya kasance na dogon lokaci kuma an san shi da kwanciyar hankali da aiki.

A cikin tsarin mu, mun yanke shawarar sanya masu sarrafawa akan sabar ruwan wukake na 10-Gigabit. An haɗa kowane mai sarrafawa zuwa ƙarshen kube-apiserver na gungu mai dacewa. Waɗannan sabar kuma sun yi amfani da Exabgp don tallata adiresoshin IP na jama'a ko na sirri. Topology na cibiyar sadarwar mu yana ba mu damar amfani da BGP daga waɗannan masu sarrafawa don tafiyar da duk zirga-zirga kai tsaye zuwa kwas ɗin ba tare da amfani da sabis kamar NodePort ba. Wannan hanya tana taimakawa guje wa zirga-zirgar ababen hawa a kwance tsakanin nodes kuma yana inganta inganci.

Kubernetes kasada Dailymotion: ƙirƙirar abubuwan more rayuwa a cikin gajimare + kan-gidaje
Motsin zirga-zirga daga Intanet zuwa kwasfa

Yanzu da muka fahimci tsarin dandalinmu, za mu iya zurfafa zurfafa cikin tsarin ƙaura da kanta.

Hijira na zirga-zirga daga Google Cloud zuwa abubuwan more rayuwa na Dailymotion

Kaka 2018

Bayan kusan shekaru biyu na gini, gwaji, da daidaitawa, a ƙarshe muna da cikakken tarin Kubernetes a shirye don karɓar wasu zirga-zirga.

Kubernetes kasada Dailymotion: ƙirƙirar abubuwan more rayuwa a cikin gajimare + kan-gidaje

Dabarun tuƙi na yanzu abu ne mai sauƙi, amma ya isa ya dace da buƙatun. Baya ga IPs na jama'a (akan Google Cloud da Dailymotion), Ana amfani da AWS Route 53 don saita manufofi da tura masu amfani zuwa gungu na zaɓinmu.

Kubernetes kasada Dailymotion: ƙirƙirar abubuwan more rayuwa a cikin gajimare + kan-gidaje
Misalin manufar karkatar da hanya ta amfani da Hanyar 53

Tare da Google Cloud wannan yana da sauƙi yayin da muke raba IP guda ɗaya a cikin dukkan gungu kuma ana tura mai amfani zuwa gungu na GKE mafi kusa. Ga gungu namu fasahar ta bambanta, tunda IP ɗin su daban.

A lokacin ƙaura, mun nemi tura buƙatun yanki zuwa gungu masu dacewa kuma mun kimanta fa'idodin wannan hanyar.

Saboda gungu na GKE ɗin mu an saita su don daidaitawa ta atomatik ta amfani da Ma'auni na Musamman, suna haɓaka sama/ƙasa dangane da zirga-zirgar shigowa.

A cikin yanayin al'ada, duk zirga-zirgar yanki ana kai su zuwa gungu na gida, kuma GKE yana aiki a matsayin wurin ajiya idan akwai matsala (ana gudanar da duba lafiyar ta Hanyar 53).

...

A nan gaba, muna son aiwatar da manufofin zirga-zirgar ababen hawa don cimma dabara mai cin gashin kanta wacce ke ci gaba da inganta isa ga masu amfani. A gefen ƙari, farashin girgije ya ragu sosai kuma an rage lokutan amsa API. Mun amince da sakamakon dandali na gajimare kuma a shirye muke mu tura ƙarin zirga-zirga zuwa gare shi idan ya cancanta.

PS daga mai fassara

Hakanan kuna iya sha'awar wani sabon gidan jaridar Dailymotion game da Kubernetes. An sadaukar da shi don ƙaddamar da aikace-aikace tare da Helm akan yawancin Kubernetes gungu da aka buga kimanin wata daya da ya wuce.

Karanta kuma a kan shafinmu:

source: www.habr.com

Add a comment