{"id":36484,"date":"2019-10-31T22:11:54","date_gmt":"2019-10-31T19:11:54","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kubernetes-priklyuchenie-dailymotion-sozdanie-infrastruktury-v-oblakah-on-premises\/"},"modified":"2019-10-31T22:11:54","modified_gmt":"2019-10-31T19:11:54","slug":"kubernetes-priklyuchenie-dailymotion-sozdanie-infrastruktury-v-oblakah-on-premises","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kubernetes-priklyuchenie-dailymotion-sozdanie-infrastruktury-v-oblakah-on-premises","title":{"rendered":"Kubernetes-eventyret Dailymotion: opbygning af infrastruktur i skyen + on-premises","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Kubernetes-eventyret Dailymotion: opbygning af infrastruktur i skyen + on-premises\" src=\"\/wp-content\/uploads\/2019\/07\/a30bdada22eff611ec47864ef988e1ed.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<i><b>Bem. overs.<\/b>: Dailymotion \u2014 en af verdens st\u00f8rste videotjenester og derfor en bem\u00e6rkelsesv\u00e6rdig bruger af Kubernetes. I dette materiale deler systemarkitekten David Donchez konklusionerne fra opbygningen af virksomhedens produktionsplatform baseret p\u00e5 K8s, som startede med en cloudinstallation i GKE og endte som en hybridl\u00f8sning, der muligg\u00f8r bedre svartider og reducerede infrastrukturomkostninger.<\/i><\/p>\n<p>N\u00e5r man tr\u00e6ffer beslutning om at ombygge den prim\u00e6re API <noindex><a rel=\"nofollow\" href=\"https:\/\/www.dailymotion.com\/\">Dailymotion<\/a><\/noindex> for tre \u00e5r siden, \u00f8nskede vi at udvikle en mere effektiv m\u00e5de at implementere applikationer og lette <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/dailymotion\/deploying-apps-on-multiple-kubernetes-clusters-with-helm-19ee2b06179e\">processerne i udvikling og produktion<\/a><\/noindex>. Til dette form\u00e5l besluttede vi at anvende en containerorkestreringsplatform og valgte naturligvis Kubernetes.<\/p>\n<p>Hvorfor b\u00f8r man opbygge sin egen platform baseret p\u00e5 Kubernetes?<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Produktionsniveau API p\u00e5 kort tid med Google Cloud<\/h2>\n<p><\/p>\n<blockquote><p>Sommeren 2016<\/p><\/blockquote>\n<p>\nFor tre \u00e5r siden, lige efter at Dailymotion blev k\u00f8bt af <noindex><a rel=\"nofollow\" href=\"https:\/\/www.vivendi.com\/\">Vivendi<\/a><\/noindex>, fokuserede vores ingeni\u00f8rteams p\u00e5 et globalt m\u00e5l: At skabe et helt nyt Dailymotion produkt.<\/p>\n<p>Efter at have analyseret containere, l\u00f8sninger til orkestrering og vores tidligere erfaringer, var vi sikre p\u00e5, at Kubernetes var det rigtige valg. Nogle udviklere havde allerede kendskab til grundl\u00e6ggende koncepter og vidste, hvordan man brugte det, hvilket var en stor fordel for infrastrukturtransformationen.<\/p>\n<p>Fra et infrastruktursynspunkt kr\u00e6vedes der et kraftfuldt og fleksibelt system til implementering af nye typer cloud-native applikationer. Vi valgte at forblive i skyen i begyndelsen af vores rejse for fredeligt at bygge en s\u00e5 p\u00e5lidelig lokal platform som muligt. Vi besluttede at deploye vores applikationer med Google Kubernetes Engine, selvom vi vidste, at vi f\u00f8r eller senere ville g\u00e5 over til vores egne datacentre og anvende en hybrid strategi.<\/p>\n<h3>Hvorfor valgte vi GKE?<\/h3>\n<p>\nVi traf dette valg hovedsageligt af tekniske \u00e5rsager. Desuden var der behov for hurtigt at levere infrastruktur, der im\u00f8dekom virksomhedens behov. Vi havde nogle krav til implementeringen af applikationer, s\u00e5som geografisk distribution, skalerbarhed og fejlfindingskapacitet.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes-eventyret Dailymotion: opbygning af infrastruktur i skyen + on-premises\" src=\"\/wp-content\/uploads\/2019\/07\/87b01007260066aa7814fb5dacca8707.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>GKE-klynger i Dailymotion<\/i><\/p>\n<p>Da Dailymotion er en videotjeneste, der er tilg\u00e6ngelig over hele verden, \u00f8nskede vi meget at forbedre servicekvaliteten ved at reducere ventetiden <i>(latency)<\/i>. Tidligere <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.dailymotion.com\/\">vores API<\/a><\/noindex> var tilg\u00e6ngelig kun i Paris, hvilket var suboptimalt. Vi \u00f8nskede at kunne placere applikationer ikke kun i Europa, men ogs\u00e5 i Asien og USA.<\/p>\n<p>Denne f\u00f8lsomhed over for forsinkelser bet\u00f8d, at vi m\u00e5tte arbejde grundigt p\u00e5 platformens netv\u00e6rksarkitektur. Mens de fleste cloud-tjenester tvang os til at oprette vores netv\u00e6rk i hver region og derefter forbinde dem via VPN eller en eller anden administreret tjeneste, gjorde Google Cloud det muligt at oprette et helt routabelt enkelt netv\u00e6rk, der d\u00e6kkede alle Google-regioner. Dette er et stort plus i forhold til drift og effektivitet af systemet.<\/p>\n<p>Desuden fungerer netv\u00e6rkstjenesterne og belastningsbalancerne fra Google Cloud fremragende. De giver muligheden for at bruge vilk\u00e5rlige offentlige IP-adresser fra hver region, og den fantastiske BGP-protokol h\u00e5ndterer resten (dvs. omdirigerer brugerne til den n\u00e6rmeste klynge). Det er tydeligt, at i tilf\u00e6lde af fejl vil trafikken automatisk g\u00e5 til en anden region uden menneskelig indblanding.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes-eventyret Dailymotion: opbygning af infrastruktur i skyen + on-premises\" src=\"\/wp-content\/uploads\/2019\/07\/fa6a14cf56fbf16fb6ca5da837dbd915.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Overv\u00e5gning af belastningsbalancering i Google<\/i><\/p>\n<p>Vores platform bruger ogs\u00e5 GPU'er aktivt. Google Cloud g\u00f8r det muligt at udnytte dem meget effektivt direkte i Kubernetes-klynger.<\/p>\n<p>I mellemtiden koncentrerede infrastrukturteamet sig prim\u00e6rt om den gamle stak, der var implementeret p\u00e5 fysiske servere. Derfor opfyldte brugen af en administreret tjeneste (herunder masterkomponenter fra Kubernetes) vores krav og gjorde det muligt at tr\u00e6ne teamene i at arbejde med lokale klynger.<\/p>\n<p>Som et resultat kunne vi begynde at modtage production-trafik p\u00e5 Google Cloud-infrastrukturen blot seks m\u00e5neder efter projektets start.<\/p>\n<p>Men p\u00e5 trods af en r\u00e6kke fordele medf\u00f8rer arbejdet med en cloud-udbyder visse omkostninger, der kan stige afh\u00e6ngigt af belastningen. Derfor analyserede vi omhyggeligt hver administreret tjeneste, vi brugte, for at planl\u00e6gge at implementere dem on-premises i fremtiden. Faktisk begyndte implementeringen af lokale klynger i slutningen af 2016, og en hybridstrategi blev ogs\u00e5 initieret dengang.<\/p>\n<h2>Lancering af Dailymotion's lokale containerorkestreringsplatform<\/h2>\n<p><\/p>\n<blockquote><p>Efter\u00e5ret 2016<\/p><\/blockquote>\n<p>\nUnder betingelser, hvor hele stakken var klar til produktion, mens arbejdet med API'et <noindex><a rel=\"nofollow\" href=\"https:\/\/tartiflette.io\/\">fortsatte<\/a><\/noindex>, der var tid til at fokusere p\u00e5 regionale klynger.<\/p>\n<p>P\u00e5 det tidspunkt s\u00e5 brugerne mere end 3 milliarder videoer hver m\u00e5ned. Selvf\u00f8lgelig havde vi allerede haft vores egen omfattende Content Delivery Network i flere \u00e5r. Vi \u00f8nskede at udnytte denne situation og implementere Kubernetes-klynger i de eksisterende datacentre.<\/p>\n<p>Dailymotion's infrastruktur bestod af mere end 2.500 servere i seks datacentre. Alle konfigureres ved hj\u00e6lp af Saltstack. Vi begyndte at forberede alle n\u00f8dvendige opskrifter til at oprette master- og worker-noder samt etcd-klyngen.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes-eventyret Dailymotion: opbygning af infrastruktur i skyen + on-premises\" src=\"\/wp-content\/uploads\/2019\/07\/1b9924fd95cbf729126be6ad8b5e401e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Netv\u00e6rksdelen<\/h3>\n<p>\nVores netv\u00e6rk er fuldt routable. Hver server annoncerer sin IP i netv\u00e6rket ved hj\u00e6lp af Exabgp. Vi sammenlignede flere netv\u00e6rksplugins, og den eneste, der opfyldte alle behov (p\u00e5 grund af den L3-tilgang, der blev anvendt), var <noindex><a rel=\"nofollow\" href=\"https:\/\/www.projectcalico.org\/\">Calico<\/a><\/noindex>. Den passede perfekt ind i den eksisterende netv\u00e6rksmodel for infrastrukturen.<\/p>\n<p>Da vi \u00f8nskede at anvende alle de eksisterende infrastrukturelementer, var det f\u00f8rst og fremmest n\u00f8dvendigt at forst\u00e5 vores egen netv\u00e6rksv\u00e6rkt\u00f8j (anvendt p\u00e5 alle servere): at bruge det til at annoncere IP-adresseomr\u00e5der i netv\u00e6rket med Kubernetes-noder. Vi lod Calico tildele IP-adresser til pods, men brugte ikke det til BGP-sessioner p\u00e5 netv\u00e6rksudstyret hverken dengang eller nu. Faktisk h\u00e5ndterer Exabgp routingen, som annoncerer de undernet, der bruges af Calico. Dette g\u00f8r det muligt for os at tilg\u00e5 enhver pod fra det interne netv\u00e6rk (is\u00e6r fra belastningsbalancerne).<\/p>\n<h3>S\u00e5dan h\u00e5ndterer vi ingress-trafikken<\/h3>\n<p>\nFor at omdirigere indkommende anmodninger til den rigtige tjeneste besluttede vi at bruge Ingress Controller p\u00e5 grund af dens integration med Kubernetes-ingress-resurserne.<\/p>\n<p>For tre \u00e5r siden var nginx-ingress-controller den mest modne controller: Nginx havde v\u00e6ret brugt i lang tid og var kendt for sin stabilitet og ydeevne.<\/p>\n<p>I vores system valgte vi at placere controllerne p\u00e5 dedikerede 10-gigabit blade-servere. Hver controller blev tilsluttet endpoint'en kube-apiserver for den tilsvarende klynge. P\u00e5 disse servere blev Exabgp ogs\u00e5 brugt til at annoncere offentlige eller private IP-adresser. Topologien i vores netv\u00e6rk muligg\u00f8r brug af BGP fra disse controllere til at routinge al trafik direkte til pods uden at bruge en service s\u00e5som NodePort. Denne tilgang hj\u00e6lper med at undg\u00e5 horisontal trafik mellem noderne og \u00f8ger effektiviteten.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes-eventyret Dailymotion: opbygning af infrastruktur i skyen + on-premises\" src=\"\/wp-content\/uploads\/2019\/07\/5f715a395d72579a2d123520ccd6c933.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Trafikstr\u00f8m fra internettet til pods<\/i><\/p>\n<p>Nu hvor vi har f\u00e5et styr p\u00e5 vores hybride platform, kan vi dykke dybere ned i selve migreringsprocessen af trafikken.<\/p>\n<h2>Migration af trafik fra Google Cloud til Dailymotion-infrastrukturen<\/h2>\n<p><\/p>\n<blockquote><p>Efter\u00e5r 2018<\/p><\/blockquote>\n<p>\nEfter n\u00e6sten to \u00e5rs udvikling, testning og konfiguration har vi endelig f\u00e5et en komplet Kubernetes-stack klar til at tage imod en del af trafikken.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes-eventyret Dailymotion: opbygning af infrastruktur i skyen + on-premises\" src=\"\/wp-content\/uploads\/2019\/07\/6028f9f810c3e0e3f2a32819a1f38df5.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDen aktuelle rute-strategi er ganske simpel, men tilfredsstiller behovene. Udover offentlige IP'er (i Google Cloud og Dailymotion) anvendes AWS Route 53 til at definere politikker og omdirigere brugerne til den klynge, vi v\u00e6lger.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes-eventyret Dailymotion: opbygning af infrastruktur i skyen + on-premises\" src=\"\/wp-content\/uploads\/2019\/07\/e3878f4d34deabfa872e4d20aef9376e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Eksempel p\u00e5 en rute-politik med brug af Route 53<\/i><\/p>\n<p>Fra Google Cloud er det enkelt, da vi bruger en enkelt IP for alle klynger, og brugeren bliver omdirigeret til den n\u00e6rmeste GKE-klynge. For vores klynger er teknologien anderledes, da deres IP'er er forskellige.<\/p>\n<p>Under migreringen str\u00e6bte vi efter at omdirigere regionale foresp\u00f8rgsler til de relevante klynger og vurderede fordelene ved denne tilgang.<\/p>\n<p>Da vores GKE-klynger er konfigureret til automatisk skalering ved hj\u00e6lp af Custom Metrics, \u00f8ger\/reducerer de kapaciteten afh\u00e6ngigt af den indkommende trafik.<\/p>\n<p>I normal drift sendes al regional trafik til den lokale klynge, mens GKE fungerer som backup i tilf\u00e6lde af problemer (health-checks udf\u00f8res af Route 53).<\/p>\n<h2>\u2026<\/h2>\n<p>\nI fremtiden \u00f8nsker vi at automatisere routingpolitikkerne fuldst\u00e6ndigt for at opn\u00e5 en autonom hybridstrategi, der konstant forbedrer tilg\u00e6ngeligheden for brugerne. N\u00e5r det kommer til fordelene: omkostningerne til skyen er blevet betydeligt reduceret, og vi har endda v\u00e6ret i stand til at reducere API-responstiden. Vi har tillid til den resulterende cloud-platform og er klar til at omdirigere mere trafik til den efter behov.<\/p>\n<h2>P.S. fra overs\u00e6tteren<\/h2>\n<p>\nDu kunne ogs\u00e5 v\u00e6re interesseret i en anden nylig Dailymotion-udgivelse om Kubernetes. Den omhandler implementering af applikationer med Helm p\u00e5 flere Kubernetes-klynger, og <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/dailymotion\/deploying-apps-on-multiple-kubernetes-clusters-with-helm-19ee2b06179e\">den blev offentliggjort<\/a><\/noindex> for omkring en m\u00e5ned siden.<\/p>\n<p>L\u00e6s ogs\u00e5 p\u00e5 vores blog:<\/p>\n<ul>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/440278\/\">Tinders overgang til Kubernetes<\/a><\/noindex>\u00bb.<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/441754\/\">Kubernetes-successhistorier i produktion. Del 10: <b>Reddit<\/b><\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/412571\/\">Kubernetes-successhistorier i produktion. Del 9: <b>CERN og 210 K8s-klynger<\/b><\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/349940\/\">Kubernetes-successhistorier i produktion. Del 8: <b>Huawei<\/b><\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/347098\/\">Kubernetes-successhistorier i produktion. Del 7: <b>BlackRock<\/b><\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/345780\/\">Kubernetes-successhistorier i produktion. Del 6: <b>BlaBlaCar<\/b><\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/342412\/\">Kubernetes-successhistorier i produktion. Del 5: <b>den digitale bank Monzo<\/b><\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/339724\/\">Kubernetes-successhistorier i produktion. Del 4: <b>SoundCloud (skaberne af Prometheus)<\/b><\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/335814\/\">Kubernetes-successhistorier i produktion. Del 3: <b>GitHub<\/b><\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/334770\/\">Kubernetes-successhistorier i produktion. Del 2: <b>Concur og SAP<\/b><\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/334140\/\">Kubernetes-successhistorier i produktion. Del 1: <b>4200 pods og TessMaster hos eBay<\/b><\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/460877\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: Dailymotion \u2014 \u043e\u0434\u0438\u043d \u0438\u0437 \u043a\u0440\u0443\u043f\u043d\u0435\u0439\u0448\u0438\u0445 \u0432 \u043c\u0438\u0440\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0430 \u0432\u0438\u0434\u0435\u043e \u0438 \u043f\u043e\u0442\u043e\u043c\u0443 \u0437\u0430\u043c\u0435\u0442\u043d\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c Kubernetes. \u0412 \u044d\u0442\u043e\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440 David Donchez \u0434\u0435\u043b\u0438\u0442\u0441\u044f \u0438\u0442\u043e\u0433\u0430\u043c\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f production-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u043d\u0430 \u0431\u0430\u0437\u0435 K8s, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u0447\u0438\u043d\u0430\u043b\u0430\u0441\u044c \u0441 \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u0439 \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u0438 \u0432 GKE \u0438 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0430\u0441\u044c \u043a\u0430\u043a \u0433\u0438\u0431\u0440\u0438\u0434\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u043b\u043e \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u043b\u0443\u0447\u0448\u0435\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u0438 \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442\u044c \u043d\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u044b\u0445 \u0437\u0430\u0442\u0440\u0430\u0442\u0430\u0445. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27305,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36484","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\".\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kubernetes-priklyuchenie-dailymotion-sozdanie-infrastruktury-v-oblakah-on-premises\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Kubernetes-\u043f\u0440\u0438\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 Dailymotion: \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0432 \u043e\u0431\u043b\u0430\u043a\u0430\u0445 + on-premises | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\".\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kubernetes-priklyuchenie-dailymotion-sozdanie-infrastruktury-v-oblakah-on-premises\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:11:54+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:11:54+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Kubernetes-eventyret Dailymotion: opbygning af infrastruktur i skyen + on-premises | ProHoster","description":".","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kubernetes-priklyuchenie-dailymotion-sozdanie-infrastruktury-v-oblakah-on-premises","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Kubernetes-\u043f\u0440\u0438\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 Dailymotion: \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0432 \u043e\u0431\u043b\u0430\u043a\u0430\u0445 + on-premises | ProHoster","og:description":".","og:url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kubernetes-priklyuchenie-dailymotion-sozdanie-infrastruktury-v-oblakah-on-premises","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:11:54+00:00","article:modified_time":"2019-10-31T19:11:54+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36484","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 03:31:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:44:22","updated":"2026-01-22 03:31:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/36484","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=36484"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/36484\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media\/27305"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=36484"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=36484"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=36484"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}