{"id":81130,"date":"2020-05-11T01:42:39","date_gmt":"2020-05-10T23:42:39","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/kubernetes-open-source-protiv-vendorskogo"},"modified":"2020-05-11T01:42:39","modified_gmt":"2020-05-10T23:42:39","slug":"kubernetes-open-source-protiv-vendorskogo","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/kubernetes-open-source-protiv-vendorskogo","title":{"rendered":"Kubernetes: open source \u00eempotriva vendor-ului","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><b>Bun\u0103, m\u0103 numesc Dmitri Krasnov. Deja de mai bine de cinci ani m\u0103 ocup cu administrarea clusterelor Kubernetes \u0219i construirea unor arhitecturi complexe de microservicii. La \u00eenceputul acestui an, am lansat un serviciu pentru gestionarea clusterelor Kubernetes pe baza Containerum. Profit de ocazie s\u0103 explic ce reprezint\u0103 acest Kubernetes \u0219i cum se deosebe\u0219te integrarea cu un furnizor de open source.<\/b><\/p>\n<p>Pentru \u00eenceput, ce este <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/overview\/what-is-kubernetes\/\">Kubernetes<\/a><\/noindex>. Este un sistem pentru gestionarea containerelor pe un num\u0103r mare de gazde. \u00cen greac\u0103, de altfel, se traduce ca \"pilot\" sau \"c\u0103pitan\". A fost dezvoltat ini\u021bial de Google, dup\u0103 care, ca o contribu\u021bie tehnologic\u0103, a fost transferat Cloud Native Computing Foundation, o organiza\u021bie interna\u021bional\u0103 non-profit care reune\u0219te cei mai importan\u021bi dezvoltatori din lume, utilizatori finali \u0219i furnizori de tehnologii pentru containere. <\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes: open source \u00eempotriva vendor-ului\" src=\"\/wp-content\/uploads\/2020\/05\/7cbe773adf691ad29c4aaa7a2c8f0461.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>A conduce un num\u0103r mare de containere <\/h3>\n<p>\nAcum s\u0103 \u00een\u021belegem ce sunt aceste containere. Este o aplica\u021bie cu tot mediu s\u0103u \u2014 \u00een principal, bibliotecile de care depinde func\u021bionarea programului. Toate acestea sunt \u00eempachetate \u00een arhive \u0219i prezentate sub form\u0103 de imagini care pot fi rulate indiferent de sistemul de operare, testate \u0219i nu numai. Dar exist\u0103 o problem\u0103 \u2014 este foarte dificil s\u0103 gestionezi containere pe un num\u0103r mare de gazde. De aceea a fost creat Kubernetes. <\/p>\n<p>Imaginea unui container reprezint\u0103 aplica\u021bia plus dependen\u021bele sale. Aplica\u021bia, dependen\u021bele sale \u0219i imaginea sistemului de fi\u0219iere OS sunt plasate \u00een p\u0103r\u021bi diferite ale imaginii, denumite straturi. Straturile pot fi reutilizate pentru diferite containere. De exemplu, pentru toate aplica\u021biile din companie poate fi utilizat un strat de baz\u0103 Ubuntu. La pornirea containerelor, nu este nevoie s\u0103 se p\u0103streze pe gazd\u0103 multiple copii ale aceluia\u0219i strat de baz\u0103. Acest lucru permite optimizarea stoc\u0103rii \u0219i livr\u0103rii imaginilor.<\/p>\n<p>C\u00e2nd dorim s\u0103 lans\u0103m o aplica\u021bie dintr-un container, straturile necesare se suprapun, form\u00e2nd un sistem de fi\u0219iere overlay. Deasupra se suprapune un strat de scriere, care, la oprirea containerului, este \u0219ters. Aceasta garanteaz\u0103 c\u0103, la lansarea containerului, aplica\u021bia va avea \u00eentotdeauna acela\u0219i mediu, care nu poate fi modificat. Aceasta asigur\u0103 reproducibilitatea mediului pe diferite sisteme de operare gazd\u0103. Fie c\u0103 este vorba de Ubuntu sau CentOS, mediul va fi \u00eentotdeauna identic. \u00cen plus, containerul este izolat de gazd\u0103 prin mecanismele \u00eencorporate \u00een nucleul Linux. Aplica\u021biile din container nu pot vedea fi\u0219ierele, procesele gazdei \u0219i ale containerelor vecine. Aceast\u0103 izolare a aplica\u021biilor de sistemul de operare gazd\u0103 ofer\u0103 un strat suplimentar de securitate. <\/p>\n<p>Pentru gestionarea containerelor pe gazd\u0103 exist\u0103 numeroase instrumente. Cel mai popular dintre ele este Docker. Acesta permite asigurarea \u00eentregului ciclu de via\u021b\u0103 al containerelor. Cu toate acestea, func\u021bioneaz\u0103 doar pe un singur gazd\u0103. Atunci c\u00e2nd este necesar\u0103 gestionarea containerelor pe mai multe gazde, Docker poate transforma via\u021ba inginerilor \u00eentr-un iad. De aceea a fost creat Kubernetes.<\/p>\n<p>Cererea pentru Kubernetes este determinat\u0103 exact de capacitatea de a manevra grupuri de containere pe mai multe gazde ca \u0219i cum ar fi entit\u0103\u021bi unice. Popularitatea sistemului asigur\u0103 posibilitatea de a construi DevOps sau Development Operations, \u00een care Kubernetes este folosit pentru a lansa procesele acestui DevOps.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes: open source \u00eempotriva vendor-ului\" src=\"\/wp-content\/uploads\/2020\/05\/40f253f4445595376231bb384253763d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<i>Figura 1. Reprezentare schematic\u0103 a principiului de func\u021bionare a Kubernetes<\/i><\/p>\n<h3>Automatizare complet\u0103<\/h3>\n<p>\nDevOps, \u00een principiu, reprezint\u0103 automatizarea procesului de dezvoltare. Pe scurt, dezvoltatorii scriu cod, care este \u00eenc\u0103rcat \u00een depozit. Apoi, acest cod poate fi automat compilat direct \u00eentr-un container cu toate bibliotecile, testat \u0219i \"desc\u0103rcat\" la urm\u0103toarea etap\u0103 \u2013 Staging, iar apoi imediat \u00een Production.<\/p>\n<p>\u00cempreun\u0103 cu Kubernetes, DevOps permite automatizarea acestui proces, astfel \u00eenc\u00e2t acesta s\u0103 decurg\u0103 aproape f\u0103r\u0103 implicarea dezvoltatorilor. Datorit\u0103 acestui lucru, compilarea se accelereaz\u0103 semnificativ, deoarece dezvoltatorul nu trebuie s\u0103 se ocupe de asta pe computerul s\u0103u \u2013 pur \u0219i simplu scrie o bucat\u0103 de cod, face push \u00een repository, dup\u0103 care se lanseaz\u0103 un pipeline, care poate include procesul de compilare, testare \u0219i implementare. A\u0219a se \u00eent\u00e2mpl\u0103 cu fiecare commit, astfel \u00eenc\u00e2t testarea este continu\u0103.<\/p>\n<p>\u00cen acela\u0219i timp, utilizarea containerului permite s\u0103 fii sigur c\u0103 \u00eentregul mediu al acestei aplica\u021bii va ajunge \u00een produc\u021bie exact \u00een forma \u00een care a fost testat. Adic\u0103, nu vor ap\u0103rea probleme de genul \u201e\u00een mediu de testare au fost alte versiuni, \u00een produc\u021bie sunt altele, iar c\u00e2nd s-a lansat \u2013 totul a c\u0103zut\u201d. \u0218i deoarece ast\u0103zi avem tendin\u021ba spre arhitectura de microservicii, c\u00e2nd \u00een loc de o aplica\u021bie imens\u0103 exist\u0103 sute de aplica\u021bii mici, pentru a le administra manual ar fi necesar un num\u0103r uria\u0219 de angaja\u021bi. De aceea, folosim Kubernetes.<\/p>\n<p><b><\/p>\n<h3>Avantaje, avantaje, avantaje<\/h3>\n<p><\/b><br \/>\nDac\u0103 vorbim despre avantajele Kubernetes ca platform\u0103, acesta are avantaje semnificative \u00een ceea ce prive\u0219te gestionarea arhitecturii de microservicii. <\/p>\n<ul>\n<li> <b>Gestionarea multiplelor replici.<\/b> Cel mai important este c\u0103 gestioneaz\u0103 containere pe mai multe gazde. \u0218i mai important, gestioneaz\u0103 numeroase replici ale aplica\u021biilor \u00een containere ca o entitate unic\u0103. Datorit\u0103 acestui fapt, inginerii nu trebuie s\u0103 se ocupe de fiecare container \u00een parte. Dac\u0103 unul dintre containere se pr\u0103bu\u0219e\u0219te, Kubernetes va observa acest lucru \u0219i \u00eel va reporni. <\/li>\n<li> <b>Re\u021beaua cluster-ului.<\/b> De asemenea, Kubernetes dispune de a\u0219a-numita re\u021bea de cluster cu propriul spa\u021biu de adresare. Datorit\u0103 acestui fapt, fiecare pod are propria adres\u0103. Podul este considerat\u0103 unitatea structural\u0103 minim\u0103 a cluster-ului, \u00een care sunt lansate direct containerele. \u00cen plus, Kubernetes are func\u021bionalitatea de a combina un echilibrator de sarcin\u0103 \u0219i descoperirea serviciilor. Aceasta permite eliminarea gestion\u0103rii manuale a adreselor IP \u0219i transferarea acestei sarcini c\u0103tre Kubernetes. Iar verific\u0103rile automate de s\u0103n\u0103tate ajut\u0103 la detectarea problemelor \u0219i la redirec\u021bionarea traficului c\u0103tre podurile func\u021bionale.<\/li>\n<li> <b>Gestionarea configura\u021biilor. <\/b>C\u00e2nd gestion\u0103m un num\u0103r mare de aplica\u021bii, devine dificil s\u0103 administr\u0103m configura\u021bia acestora. Pentru aceasta, Kubernetes dispune de resurse speciale numite ConfigMap-uri. Acestea permit stocarea centralizat\u0103 a configura\u021biilor \u0219i \u00eenlocuirea lor \u00een poduri la lansarea aplica\u021biilor. Acest mecanism garanteaz\u0103 coeren\u021ba configura\u021biei, fie c\u0103 avem zece sau o sut\u0103 de replici ale aplica\u021biilor. <\/li>\n<li> <b>Volume persistente. <\/b>Containerele sunt prin natura lor imutabile, iar la oprirea unui container, toate datele scrise \u00een sistemul de fi\u0219iere vor fi distruse. \u00cens\u0103 anumite aplica\u021bii stocheaz\u0103 date direct pe disc. Pentru a rezolva aceast\u0103 problem\u0103, Kubernetes are func\u021bionalitatea de gestionare a stoc\u0103rii pe disc \u2014 Volume persistente. Acest mecanism folose\u0219te un stoc extern pentru date, care poate oferi stocare permanent\u0103 \u00een containere, fie bloc sau fi\u0219ier. Aceast\u0103 solu\u021bie permite p\u0103strarea datelor separat de muncitorii (workers), protej\u00e2ndu-le \u00een cazul defect\u0103rii acestora.<\/li>\n<li> <b>Balansor de \u00eenc\u0103rcare.<\/b> De\u0219i \u00een Kubernetes gestion\u0103m entit\u0103\u021bi abstracte precum Deployment, StatefulSet etc., \u00een cele din urm\u0103 containerele sunt lansate pe servere obi\u0219nuite <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/ro\/vps\/abuzoustojchivye-vps\/\"   title=\"virtu\u00e1lne ma\u0161ini\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4246\">virtu\u00e1lne ma\u0161ini<\/a> sau fizice. Acestea nu sunt perfecte \u0219i pot c\u0103dea \u00een orice moment. Kubernetes va observa acest lucru \u0219i va redirec\u021biona traficul intern c\u0103tre alte replici. Dar ce facem cu traficul care vine din exterior? Dac\u0103 direc\u021bion\u0103m traficul c\u0103tre unul dintre muncitori \u0219i acesta pic\u0103, serviciul devine indisponibil. Pentru a rezolva aceast\u0103 problem\u0103, Kubernetes are servicii de tip Load Balancer. Acestea sunt concepute pentru a configura automat un balansor de sarcin\u0103 extern pentru to\u021bi muncitorii din cluster. Acest balansor extern direc\u021bioneaz\u0103 traficul extern c\u0103tre muncitori \u0219i monitorizeaz\u0103 statusul acestora. Dac\u0103 unul sau mai mul\u021bi muncitori devin indisponibili, traficul este redirec\u021bionat c\u0103tre altele. Aceasta permite crearea de servicii de \u00eenalt\u0103 disponibilitate cu ajutorul Kubernetes.<\/li>\n<\/ul>\n<p>\nKubernetes se dovede\u0219te cel mai eficient atunci c\u00e2nd ruleaz\u0103 arhitecturi de microservicii. Implementarea sistemului \u00eentr-o arhitectur\u0103 clasic\u0103 este posibil\u0103, dar lipsit\u0103 de sens. Dac\u0103 o aplica\u021bie nu poate func\u021biona \u00een mai multe replici, care este diferen\u021ba - fie \u00een Kubernetes sau nu?<\/p>\n<p><b><\/p>\n<h3>Kubernetes open source<\/h3>\n<p><\/b><br \/>\nKubernetes open source \u2013 o alegere excelent\u0103: l-ai instalat \u0219i func\u021bioneaz\u0103. Poate fi implementat pe serverele tale fizice, pe propria infrastructur\u0103, instal\u00e2nd un master \u0219i workerii pe care vor rula toate aplica\u021biile. \u0218i cel mai important \u2013 totul este gratuit. Cu toate acestea, exist\u0103 nuan\u021be.<\/p>\n<ul>\n<li> Primul \u2013 cerin\u021bele de cuno\u0219tin\u021be \u0219i experien\u021b\u0103 ale administratorilor \u0219i inginerilor care vor implementa \u0219i \u00eentre\u021bine totul. Deoarece clientul are o libertate total\u0103 de ac\u021biune \u00een cluster, responsabilitatea pentru func\u021bionarea acestuia \u00eei revine lui. \u0218i este foarte simplu s\u0103 strici totul aici.<\/li>\n<li> Al doilea \u2013 lipsa integr\u0103rilor. Dac\u0103 lansezi Kubernetes f\u0103r\u0103 a avea vreo platform\u0103 de virtualizare popular\u0103, nu vei ob\u021bine toate avantajele programului. Cum ar fi utilizarea Persistent Volumes \u0219i a serviciilor Load balancer.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Kubernetes: open source \u00eempotriva vendor-ului\" src=\"\/wp-content\/uploads\/2020\/05\/8445e46889ca4c4d53bd91abeaa49256.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<i>Figura 2. Arhitectura k8s<\/i><\/p>\n<p><b><\/p>\n<h3>Kubernetes de la vendor<\/h3>\n<p><\/b><br \/>\nIntegrarea cu un furnizor de cloud ofer\u0103 dou\u0103 posibilit\u0103\u021bi: <\/p>\n<ul>\n<li> \u00cen primul r\u00e2nd, o persoan\u0103 poate pur \u0219i simplu s\u0103 apese butonul \u201ecreeaz\u0103 cluster\u201d \u0219i s\u0103 primeasc\u0103 un cluster deja configurat \u0219i gata de utilizare.<\/li>\n<li> \u00cen al doilea r\u00e2nd, vendorul instaleaz\u0103 singur clusterul \u0219i configureaz\u0103 integrarea cu cloudul.<\/li>\n<\/ul>\n<p>\nCum se \u00eent\u00e2mpl\u0103 asta la noi. Inginerul care lanseaz\u0103 clusterul specific\u0103 c\u00e2\u021bi worker-i are nevoie \u0219i cu ce parametrii (de exemplu, 5 worker-i, fiecare cu 10 CPU-uri, 16 GB RAM \u0219i, s\u0103 zicem, 100 GB disk). Dup\u0103 care prime\u0219te acces la clusterul deja format. \u00cen acest timp, worker-ii pe care se va rula sarcina se predau complet clientului, dar \u00eentregul management plane r\u0103m\u00e2ne \u00een responsabilitatea vendorului (\u00een cazul \u00een care serviciul este oferit pe modelul de managed service).<\/p>\n<p>Cu toate acestea, aceast\u0103 schem\u0103 are dezavantajele sale. Din cauza faptului c\u0103 management plane r\u0103m\u00e2ne la vendor,  acesta nu ofer\u0103 acces complet clientului, ceea ce reduce flexibilitatea \u00een lucrul cu Kubernetes. Uneori se \u00eent\u00e2mpl\u0103 ca clientul s\u0103 doreasc\u0103 s\u0103 adauge un anumit fel de func\u021bionalitate specific\u0103 la Kubernetes, de exemplu, autentificarea prin LDAP, dar configura\u021bia management plane nu permite acest lucru.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes: open source \u00eempotriva vendor-ului\" src=\"\/wp-content\/uploads\/2020\/05\/e5cff16e4280cf041917c886c146a2d0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<i>Figura 3. Exemplu de cluster Kubernetes de la un furnizor de cloud<\/i><\/p>\n<p><b><\/p>\n<h3>Ce s\u0103 alegi: open source sau de la vendor<\/h3>\n<p><\/b><br \/>\nDeci, Kubernetes open source sau vendor? Dac\u0103 alegi Kubernetes open source, utilizatorul poate face ce vrea cu el. Dar este mare riscul de a-\u0219i \u00eempu\u0219ca singur \u00een picior. Cu cel vendor este mai complicat, deoarece totul este g\u00e2ndit \u0219i configurat de companie. Cel mai mare dezavantaj al Kubernetes open source este cerin\u021ba de speciali\u0219ti. Cu cel vendor, compania este scutit\u0103 de aceast\u0103 problem\u0103, dar va trebui s\u0103 decide: s\u0103 pl\u0103teasc\u0103 specialistii proprii sau v\u00e2nditorului.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes: open source \u00eempotriva vendor-ului\" src=\"\/wp-content\/uploads\/2020\/05\/f14130c42049e20b2f33121e4d789cca.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<img decoding=\"async\" alt=\"Kubernetes: open source \u00eempotriva vendor-ului\" src=\"\/wp-content\/uploads\/2020\/05\/4fb1feaacd42a67a444ae1600e37d0f0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEi bine, avantajele sunt evidente, dezavantajele sunt de asemenea cunoscute. Un lucru r\u0103m\u00e2ne constant: Kubernetes rezolv\u0103 o mul\u021bime de probleme, automatiz\u00e2nd gestionarea mai multor containere. \u0218i pe care s\u0103-l alegi, open source sau vendor, fiecare decide singur.<\/p>\n<p><i>Articolul a fost preg\u0103tit de Dmitri Krasnov, arhitect principal al serviciului Containerum al furnizorului #CloudMTS. <\/i><br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ru_mts\/blog\/500728\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0414\u043c\u0438\u0442\u0440\u0438\u0439 \u041a\u0440\u0430\u0441\u043d\u043e\u0432. \u0423\u0436\u0435 \u0431\u043e\u043b\u0435\u0435 \u043f\u044f\u0442\u0438 \u043b\u0435\u0442 \u044f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 Kubernetes \u0438 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435\u043c \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u044b\u0445 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440. \u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0433\u043e\u0434\u0430 \u043c\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u043f\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430\u043c\u0438 Kubernetes \u043d\u0430 \u0431\u0430\u0437\u0435 Containerum. \u041f\u043e\u043b\u044c\u0437\u0443\u044f\u0441\u044c \u043f\u043e\u0432\u043e\u0434\u043e\u043c \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u044d\u0442\u043e\u0442 \u0441\u0430\u043c\u044b\u0439 Kubernetes \u0438 \u0447\u0435\u043c \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0432\u0435\u043d\u0434\u043e\u0440\u043e\u043c \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 open source. \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430, \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":81131,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-81130","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.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0414\u043c\u0438\u0442\u0440\u0438\u0439 \u041a\u0440\u0430\u0441\u043d\u043e\u0432. \u0423\u0436\u0435 \u0431\u043e\u043b\u0435\u0435 \u043f\u044f\u0442\u0438 \u043b\u0435\u0442 \u044f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 Kubernetes \u0438 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435\u043c \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u044b\u0445 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440.\" \/>\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\/ro\/blog\/administrirovanie\/kubernetes-open-source-protiv-vendorskogo\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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: open source \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u0435\u043d\u0434\u043e\u0440\u0441\u043a\u043e\u0433\u043e | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0414\u043c\u0438\u0442\u0440\u0438\u0439 \u041a\u0440\u0430\u0441\u043d\u043e\u0432. \u0423\u0436\u0435 \u0431\u043e\u043b\u0435\u0435 \u043f\u044f\u0442\u0438 \u043b\u0435\u0442 \u044f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 Kubernetes \u0438 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435\u043c \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u044b\u0445 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/kubernetes-open-source-protiv-vendorskogo\" \/>\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=\"2020-05-10T23:42:39+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-10T23:42:39+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: open source versus vendor | ProHoster","description":"Bun\u0103, m\u0103 numesc Dmitri Krasnov. De peste cinci ani m\u0103 ocup cu administrarea clusterele Kubernetes \u0219i construirea arhitecturi complexe de microservicii.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/kubernetes-open-source-protiv-vendorskogo","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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: open source \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u0435\u043d\u0434\u043e\u0440\u0441\u043a\u043e\u0433\u043e | ProHoster","og:description":"\u041f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0414\u043c\u0438\u0442\u0440\u0438\u0439 \u041a\u0440\u0430\u0441\u043d\u043e\u0432. \u0423\u0436\u0435 \u0431\u043e\u043b\u0435\u0435 \u043f\u044f\u0442\u0438 \u043b\u0435\u0442 \u044f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 Kubernetes \u0438 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435\u043c \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u044b\u0445 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440.","og:url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/kubernetes-open-source-protiv-vendorskogo","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":"2020-05-10T23:42:39+00:00","article:modified_time":"2020-05-10T23:42:39+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"81130","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 16:04:23","updated":"2022-09-27 22:17:56","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/81130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=81130"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/81130\/revisions"}],"predecessor-version":[{"id":164121,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/81130\/revisions\/164121"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/81131"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=81130"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=81130"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=81130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}