{"id":83787,"date":"2020-06-03T07:42:26","date_gmt":"2020-06-03T05:42:26","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/devoxx-uk-kubernetes-v-prodakshene-blue-green-deployment-avtomasshtabirovanie-i-avtomatizacziya-razvertyvaniya-chast-2"},"modified":"2020-06-03T07:42:26","modified_gmt":"2020-06-03T05:42:26","slug":"devoxx-uk-kubernetes-v-prodakshene-blue-green-deployment-avtomasshtabirovanie-i-avtomatizacziya-razvertyvaniya-chast-2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/devoxx-uk-kubernetes-v-prodakshene-blue-green-deployment-avtomasshtabirovanie-i-avtomatizacziya-razvertyvaniya-chast-2","title":{"rendered":"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Kubernetes \u00ebsht\u00eb nj\u00eb mjet i shk\u00eblqyer p\u00ebr t\u00eb drejtuar konteiner\u00ebt Docker n\u00eb nj\u00eb mjedis t\u00eb klasterizuar t\u00eb prodhimit. Megjithat\u00eb, ka detyra q\u00eb Kubernetes nuk mund t'i zgjidh\u00eb. Kur shp\u00ebrndajm\u00eb shpesh n\u00eb mjedisin e pun\u00ebs, na nevojitet nj\u00eb implementim Blue\/Green plot\u00ebsisht i automatizuar p\u00ebr t\u00eb shmangur ndalimet n\u00eb k\u00ebt\u00eb proces, gjat\u00eb t\u00eb cilit gjithashtu duhet t\u00eb trajtojm\u00eb k\u00ebrkesat ekstern HTTP dhe t\u00eb kryejm\u00eb shkarkimin SSL. Kjo k\u00ebrkon integrim me nj\u00eb balancues ngarkese si ha-proxy. Nj\u00eb detyr\u00eb tjet\u00ebr \u00ebsht\u00eb shkall\u00ebzimi gjysm\u00eb automatizuar i vet\u00eb klasterit Kubernetes kur punon n\u00eb nj\u00eb mjedis cloud, p\u00ebr shembull, zvog\u00eblimi i pjessh\u00ebm i klasterit gjat\u00eb nat\u00ebs.<\/p>\n<p>Nd\u00ebrsa Kubernetes nuk i ka k\u00ebto funksione direkt \"nga kutia\", ai ofron nj\u00eb API q\u00eb mund t\u00eb shfryt\u00ebzohet p\u00ebr zgjidhjen e k\u00ebtyre detyrave. Veglat p\u00ebr implementimin e automatizuar Blue\/Green dhe shkall\u00ebzimin e klasterit Kubernetes jan\u00eb zhvilluar n\u00eb kuad\u00ebr t\u00eb projektit Cloud RTI, i cili \u00ebsht\u00eb nd\u00ebrtuar mbi baz\u00ebn e open-source.<\/p>\n<p>N\u00eb k\u00ebt\u00eb artikull, n\u00eb transkriptin e videos, shpjegohet se si t\u00eb konfiguroni Kubernetes bashk\u00eb me komponente t\u00eb tjera me burim t\u00eb hapur p\u00ebr krijimin e nj\u00eb mjedisi t\u00eb gatsh\u00ebm p\u00ebr prodhim, i cili pranon kod nga angazhimi git commit pa nd\u00ebrprerje n\u00eb prodhim.<\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/43a4ba56526a91b6f3d1fb16c159cc1b.jpg\" style=\"display:block;margin: 0 auto;\" \/><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/504666\/\">DEVOXX UK. Kubernetes n\u00eb prodhim: Zbatimi Blue\/Green, shkall\u00ebzimi automatik dhe automatizimi i desplejimit. Pjesa 1<\/a><\/noindex><\/p>\n<p>Pra, pasi t\u00eb keni aksesuar aplikacionet tuaja nga bota e jashtme, mund t\u00eb filloni konfigurimin e plot\u00eb t\u00eb automatizimit, duke e \u00e7uar at\u00eb n\u00eb nj\u00eb faz\u00eb n\u00eb t\u00eb cil\u00ebn mund t\u00eb realizoni git commit dhe t\u00eb siguroni q\u00eb ky git commit p\u00ebrfundon n\u00eb prodhim. Natyrisht, gjat\u00eb realizimit t\u00eb k\u00ebtyre hapave, gjat\u00eb desplojimit, ne nuk duam t\u00eb hasim ndonj\u00eb nd\u00ebrprerje. Pra, \u00e7do automatizim n\u00eb Kubernetes fillon me API. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/aa470c1562e49d98a164e0485196426e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKubernetes nuk \u00ebsht\u00eb nj\u00eb mjet q\u00eb mund t\u00eb p\u00ebrdoret produktivisht \"n\u00eb m\u00ebnyr\u00eb t\u00eb drejtp\u00ebrdrejt\u00eb nga kutia\". Sigurisht, mund ta b\u00ebni k\u00ebt\u00eb, duke p\u00ebrdorur kubectl etj., por API \u00ebsht\u00eb gj\u00ebja m\u00eb interesante dhe e dobishme e k\u00ebsaj platforme. Duke p\u00ebrdorur API-n\u00eb si nj\u00eb grup funksionesh, mund t\u00eb keni akses n\u00eb pothuajse \u00e7do gj\u00eb q\u00eb d\u00ebshironi t\u00eb b\u00ebni n\u00eb Kubernetes. Vet\u00eb kubectl gjithashtu p\u00ebrdor REST API. <\/p>\n<p>Kjo \u00ebsht\u00eb REST, k\u00ebshtu q\u00eb mund t\u00eb p\u00ebrdorni \u00e7do gjuh\u00eb dhe mjet p\u00ebr t\u00eb punuar me k\u00ebt\u00eb API, por librarit\u00eb p\u00ebrdoruese do t'ju leht\u00ebsojn\u00eb jet\u00ebn n\u00eb m\u00ebnyr\u00eb t\u00eb konsiderueshme. Ekipi im ka shkruar 2 libra t\u00eb till\u00eb: nj\u00eb p\u00ebr Java \/ OSGi dhe nj\u00eb p\u00ebr Go. I dyti nuk p\u00ebrdoret shpesh, por gjithsesi, keni n\u00eb dispozicion k\u00ebto mjete t\u00eb dobishme. Ato jan\u00eb nj\u00eb projekt pjes\u00ebrisht i licencuar me burim t\u00eb hapur. Ekzistojn\u00eb shum\u00eb libra t\u00eb till\u00eb p\u00ebr gjuh\u00eb t\u00eb ndryshme, k\u00ebshtu q\u00eb mund t\u00eb zgjidhni ato q\u00eb i p\u00ebrshtaten m\u00eb mir\u00eb. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/808865e4cda6023c6775ec9e581fc46e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPra ndaj, para se t\u00eb filloni me automatizimin e shp\u00ebrndarjes, duhet t\u00eb siguroheni q\u00eb ky proces t\u00eb mos p\u00ebsoj\u00eb asnj\u00eb ndales\u00eb. P\u00ebr shembull, ekipi yn\u00eb kryen shp\u00ebrndarje n\u00eb prodhim n\u00eb mes t\u00eb dit\u00ebs, kur njer\u00ebzit po e p\u00ebrdorin maksimalisht aplikacionin, prandaj \u00ebsht\u00eb shum\u00eb e r\u00ebnd\u00ebsishme t\u00eb evitoni vonesat n\u00eb k\u00ebt\u00eb proces. P\u00ebr t\u00eb shmangur ndalesat, p\u00ebrdoren dy m\u00ebnyra: shp\u00ebrndarje blue\/green ose p\u00ebrdit\u00ebsim i vazhduesh\u00ebm rolling update. N\u00eb rastin e fundit, n\u00ebse keni 5 replika t\u00eb aplikacionit, ato p\u00ebrdit\u00ebsohen nj\u00eb nga nj\u00eb n\u00eb m\u00ebnyr\u00eb t\u00eb rregullt. Kjo metod\u00eb funksionon shum\u00eb mir\u00eb, por nuk \u00ebsht\u00eb e p\u00ebrshtatshme n\u00ebse gjat\u00eb shp\u00ebrndarjes keni versione t\u00eb ndryshme t\u00eb aplikacionit q\u00eb funksionojn\u00eb nj\u00ebkoh\u00ebsisht. N\u00eb k\u00ebt\u00eb rast, mund t\u00eb p\u00ebrdit\u00ebsoni nd\u00ebrfaqen e p\u00ebrdoruesit nd\u00ebrkoh\u00eb q\u00eb backend-i punon me versionin e vjet\u00ebr, dhe puna e aplikacionit do t\u00eb nd\u00ebrpritet. Prandaj, nga pik\u00ebpamja e programimit, punimi n\u00eb kushte t\u00eb tilla \u00ebsht\u00eb mjaft i v\u00ebshtir\u00eb. <\/p>\n<p>Kjo \u00ebsht\u00eb nj\u00eb nga arsyet pse ne preferojm\u00eb t\u00eb p\u00ebrdorim blue\/green deployment p\u00ebr automatizimin e implementimit t\u00eb aplikacioneve tona. Me k\u00ebt\u00eb metod\u00eb, ju duhet t\u00eb siguroheni se n\u00eb \u00e7do moment aktiv \u00ebsht\u00eb vet\u00ebm nj\u00eb version i aplikacionit. <\/p>\n<p>Mekanizmi i blue\/green deployment duket si vijon. Ne marrim trafik p\u00ebr aplikacionet tona p\u00ebrmes ha-proxy, i cili e drejton at\u00eb te instancat e aktivizuara t\u00eb aplikacionit t\u00eb t\u00eb nj\u00ebjtit version. <\/p>\n<p>Kur b\u00ebhet nj\u00eb implementim i ri, ne p\u00ebrdorim Deployer, i cili merr komponent\u00ebt e rinj dhe b\u00ebn implementimin e versionit t\u00eb ri. Implementimi i versionit t\u00eb ri t\u00eb aplikacionit do t\u00eb thot\u00eb se nj\u00eb grup i ri instancash \"ngrihet\", pas s\u00eb cil\u00ebs k\u00ebto instanca t\u00eb versionit t\u00eb ri aktivizohen n\u00eb nj\u00eb konteiner t\u00eb ri dhe t\u00eb ndar\u00eb. Megjithat\u00eb, ha-proxy nuk di asgj\u00eb p\u00ebr ta dhe p\u00ebr momentin nuk drejton asnj\u00eb ngarkes\u00eb pune te ato.<\/p>\n<p>Prandaj, e para q\u00eb duhet b\u00ebr\u00eb \u00ebsht\u00eb t\u00eb kryhen kontrollet e sh\u00ebndetshm\u00ebris\u00eb s\u00eb versioneve t\u00eb reja p\u00ebr t'u siguruar se instancat jan\u00eb t\u00eb gatshme p\u00ebr t\u00eb trajtuar ngarkes\u00ebn.<\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/6134f89567ac3627197883b2f4c768d4.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nT\u00eb gjith\u00eb komponent\u00ebt e shp\u00ebrndarjes duhet t\u00eb mb\u00ebshtesin ndonj\u00eb form\u00eb t\u00eb kontrollit t\u00eb sh\u00ebndetit. Kjo mund t\u00eb jet\u00eb nj\u00eb kontroll i thjesht\u00eb HTTP, kur merrni nj\u00eb status kod 200, ose nj\u00eb kontroll m\u00eb i thell\u00eb, ku verifikoni lidhjen e kopjeve me databaz\u00ebn dhe sh\u00ebrbimet e tjera, q\u00ebndrueshm\u00ebrin\u00eb e lidhjeve n\u00eb ambientin dinamik, si dhe n\u00ebse gjith\u00e7ka po nis dhe funksionon si\u00e7 duhet. Ky proces mund t\u00eb jet\u00eb mjaft kompleks. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/fdc537599187b32ab97bc00970283e1a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPasi sistemi t\u00eb jet\u00eb siguruar p\u00ebr funksionimin e t\u00eb gjitha kopjeve t\u00eb azhurnuara, Deployer do t\u00eb p\u00ebrdit\u00ebsoj\u00eb konfigurimin dhe do t\u00eb d\u00ebrgoj\u00eb confd-n\u00eb e sakta, e cila do t\u00eb rikonfiguronte ha-proxy-n. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/099240482096c2ac4aafe7e803409511.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVet\u00ebm pas k\u00ebsaj, trafiku do t\u00eb drejtohet n\u00eb n\u00ebnshtrimin me kopjet e versions s\u00eb re, nd\u00ebrsa n\u00ebnshtrimi i vjet\u00ebr do t\u00eb zhduket. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/f656b3a3adfc27e782e5d9785b8b615e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKy mekaniz\u00ebm nuk \u00ebsht\u00eb nj\u00eb ve\u00e7ori e Kubernetes. Koncepti i shp\u00ebrndarjes Blue\/green ekziston p\u00ebr nj\u00eb koh\u00eb t\u00eb gjat\u00eb dhe gjithmon\u00eb ka p\u00ebrdorur nj\u00eb balancues ngarkese. Fillimisht, ju drejtoni t\u00eb gjith\u00eb trafikun drejt versionit t\u00eb vjet\u00ebr t\u00eb aplikacionit dhe pas p\u00ebrdit\u00ebsimit, plot\u00ebsisht e shnd\u00ebrroni at\u00eb n\u00eb versionin e ri. Ky princip p\u00ebrdoret jo vet\u00ebm n\u00eb Kubernetes.<\/p>\n<p>Tani un\u00eb do t'ju prezantoj nj\u00eb komponent t\u00eb ri t\u00eb shp\u00ebrndarjes \u2013 Deployer, i cili kryen verifikimin e funksionimit, rind\u00ebrton proxy dhe m\u00eb shum\u00eb. Ky \u00ebsht\u00eb nj\u00eb koncept q\u00eb nuk lidhet me bot\u00ebn e jashtme dhe ekziston brenda Kubernetes. Do t'ju tregoj se si mund t\u00eb krijoni konceptin tuaj Deployer duke p\u00ebrdorur mjetet open-source. <\/p>\n<p>Pra, e para q\u00eb b\u00ebn Deployer \u00ebsht\u00eb krijimi i nj\u00eb kontrolluesi t\u00eb replikimit RC, duke p\u00ebrdorur API-n\u00eb e Kubernetes. Ky API krijon pod-e dhe sh\u00ebrbime p\u00ebr shp\u00ebrndarjen e m\u00ebtejshme, dometh\u00ebn\u00eb krijon nj\u00eb klas\u00eb krejt t\u00eb re p\u00ebr aplikacionet tona. Sapo RC t\u00eb sigurohet q\u00eb replikat kan\u00eb nisur, ai do t\u00eb kryej\u00eb nj\u00eb kontroll t\u00eb funksionimit Health check. P\u00ebr k\u00ebt\u00eb, n\u00eb Deployer p\u00ebrdoret komanda GET \/health. Ajo aktivizon komponent\u00ebt p\u00ebrkat\u00ebs t\u00eb kontrollit dhe verifikon t\u00eb gjitha elementet q\u00eb sigurojn\u00eb funksionimin e klas\u00ebs. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/f2ef0232e17bc69f0b70ea9eabc2f456.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPasi q\u00eb t\u00eb gjitha pods raportojn\u00eb p\u00ebr \"sh\u00ebndetin\" e tyre, Deployer krijon nj\u00eb element t\u00eb ri konfigurimi \u2013 nj\u00eb ruajtje t\u00eb shp\u00ebrndar\u00eb etcd, e cila p\u00ebrdoret brenda Kubernetes, duke p\u00ebrfshir\u00eb p\u00ebr ruajtjen e konfiguracionit t\u00eb balancuesit t\u00eb ngarkes\u00ebs. Ne regjistrojm\u00eb t\u00eb dh\u00ebnat n\u00eb etcd, dhe nj\u00eb mjet i vog\u00ebl confd monitoron etcd p\u00ebr t\u00eb zbuluar t\u00eb dh\u00ebna t\u00eb reja. <\/p>\n<p>N\u00ebse ai zb\u53d1\u73b0 ndonj\u00eb ndryshim n\u00eb konfigurimin e par\u00eb, ai gjeneron nj\u00eb skedar t\u00eb ri konfigurimi dhe ia d\u00ebrgon ha-proxy. N\u00eb k\u00ebt\u00eb rast, ha-proxy rindez pa humbur asnj\u00eb lidhje dhe adreson ngarkes\u00ebn te sh\u00ebrbimet e reja, t\u00eb cilat sigurojn\u00eb funksionimin e versioneve t\u00eb reja t\u00eb aplikacioneve tona. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/bef1536c2b8dee6b0da710fc6c6fda99.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSi\u00e7 e shihni, pavar\u00ebsisht nga numri i madh i komponent\u00ebve, nuk ka asgj\u00eb t\u00eb komplikuar k\u00ebtu. Ju thjesht duhet t\u00eb kushtoni m\u00eb shum\u00eb v\u00ebmendje API dhe etcd. Dua t'ju flas p\u00ebr nj\u00eb depozitor open-source, q\u00eb ne e p\u00ebrdorim vet\u00eb \u2013 Amdatu Kubernetes Deployer.<\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/34124e093d2e16fcbb80fd112c7d223f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKy \u00ebsht\u00eb nj\u00eb mjet p\u00ebr orkestrimin e implementimeve Kubernetes, q\u00eb ka funksione t\u00eb tilla si: <\/p>\n<ul>\n<li>implementimi Blue\/Green;<\/li>\n<li>konfigurimi i balancuesit t\u00eb ngarkes\u00ebs s\u00eb jashtme;<\/li>\n<li>menaxhimi i spesifikimeve t\u00eb implementimit;<\/li>\n<li>menaxhimi i implementimit t\u00eb v\u00ebrtet\u00eb;<\/li>\n<li>kontrollimi i funksionalitetit t\u00eb provave t\u00eb sh\u00ebndetit gjat\u00eb vendosjes;<\/li>\n<li>implementimi i variablave t\u00eb mjedisit n\u00eb pod.<\/li>\n<\/ul>\n<p>\nKy Deployer \u00ebsht\u00eb nd\u00ebrtuar mbi API-n\u00eb Kubernetes dhe ofron nj\u00eb API REST p\u00ebr menaxhimin e descriptor\u00ebve dhe vendosjeve, si dhe nj\u00eb API Websocket p\u00ebr log t\u00eb drejtp\u00ebrdrejt gjat\u00eb procesit t\u00eb vendosjes.<\/p>\n<p>Ai vendos t\u00eb dh\u00ebnat e konfiguarimit t\u00eb balancuesit t\u00eb ngarkes\u00ebs n\u00eb etcd, k\u00ebshtu q\u00eb nuk keni nevoj\u00eb t\u00eb p\u00ebrdorni ha-proxy me mb\u00ebshtetje 'ndoshta nga kutia', por mund t\u00eb p\u00ebrdorni leht\u00ebsisht skedarin tuaj t\u00eb konfiguruar p\u00ebr balancuesin. Amdatu Deployer \u00ebsht\u00eb shkruar n\u00eb Go, ashtu si Kubernetes vet\u00eb, dhe licencohet nga Apache.<\/p>\n<p>Para se t\u00eb filloja t\u00eb aplikoj k\u00ebt\u00eb version t\u00eb deployerit, p\u00ebrdora k\u00ebt\u00eb descriptor vendosjeje ku jan\u00eb p\u00ebrcaktuar parametrat e nevojsh\u00ebm. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/14e9ecca6ad772a43afcf95a4950fad8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNj\u00eb nga parametrat e r\u00ebnd\u00ebsish\u00ebm t\u00eb k\u00ebtij kodi \u00ebsht\u00eb aktivizimi i flagut \"useHealthCheck\". Na nevojitet t\u00eb specifikojm\u00eb se gjat\u00eb procesit t\u00eb shp\u00ebrndarjes duhet t\u00eb kryhet kontrolli i funksionimit. Ky parametr mund t\u00eb jet\u00eb i \u00e7aktivizuar kur n\u00eb shp\u00ebrndarje p\u00ebrdoren kontejner\u00eb t\u00eb pal\u00ebve t\u00eb treta q\u00eb nuk kan\u00eb nevoj\u00eb p\u00ebr verifikim. N\u00eb k\u00ebt\u00eb p\u00ebrshkrim gjithashtu \u00ebsht\u00eb e specifikuar numri i replikave dhe URL-ja e front-end-it q\u00eb i nevojitet ha-proxy. N\u00eb fund, p\u00ebrmendet flagu i specifikimit t\u00eb pods \"podspec\", i cili i drejtohet Kubernetes p\u00ebr t\u00eb marr\u00eb informacion n\u00eb lidhje me konfigurimin e porteve, imazhit etj. Ky \u00ebsht\u00eb nj\u00eb p\u00ebrshkrim mjaft i thjesht\u00eb n\u00eb formatin JSON. <\/p>\n<p>Nj\u00eb mjet tjet\u00ebr, i cili \u00ebsht\u00eb pjes\u00eb e projektit open-source Amdatu, \u00ebsht\u00eb Deploymentctl. Ai ka nj\u00eb nd\u00ebrfaqe p\u00ebrdoruesi (UI) p\u00ebr konfigurimin e shp\u00ebrndarjes, ruan historin\u00eb e shp\u00ebrndarjeve dhe p\u00ebrmban webhooks p\u00ebr thirrjet e rikthimit nga p\u00ebrdoruesit e jasht\u00ebm dhe zhvilluesit. Ju mund t\u00eb mos p\u00ebrdorni UI-n\u00eb, pasi vet\u00eb Amdatu Deployer \u00ebsht\u00eb nj\u00eb REST API, por kjo nd\u00ebrfaqe mund ta leht\u00ebsoj\u00eb shum\u00eb procesin e shp\u00ebrndarjes pa nevoj\u00ebn p\u00ebr angazhimin e ndonj\u00eb API. Deploymentctl \u00ebsht\u00eb shkruar n\u00eb OSGi\/Vertx duke p\u00ebrdorur Angular 2. <\/p>\n<p>Tani un\u00eb do t\u00eb demonstroj at\u00eb q\u00eb p\u00ebrmenda m\u00eb par\u00eb n\u00eb ekran, duke p\u00ebrdorur nj\u00eb regjistrim t\u00eb b\u00ebr\u00eb m\u00eb par\u00eb, k\u00ebshtu q\u00eb ju nuk do t\u00eb duhet t\u00eb prisni. Ne do t\u00eb zhvillojm\u00eb nj\u00eb aplikacion t\u00eb thjesht\u00eb n\u00eb Go. Mos u shqet\u00ebsoni n\u00ebse nuk keni pasur ndonj\u00ebher\u00eb p\u00ebrvoj\u00eb me Go, ky \u00ebsht\u00eb nj\u00eb aplikacion shum\u00eb i thjesht\u00eb, k\u00ebshtu q\u00eb gjith\u00e7ka do t'ju jet\u00eb e qart\u00eb. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/ab61ada396143e980d73a0bb8ff95076.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nK\u00ebtu ne po krijojm\u00eb nj\u00eb server HTTP q\u00eb p\u00ebrgjigjet vet\u00ebm n\u00eb \/health, k\u00ebshtu q\u00eb ky aplikacion vet\u00ebm kontrollon statusin e sh\u00ebndetit dhe asgj\u00eb m\u00eb shum\u00eb. N\u00ebse kontrolli kalon, aktivizohet struktura JSON e paraqitur m\u00eb posht\u00eb. Ajo p\u00ebrmban versionin e aplikacionit q\u00eb do t\u00eb implementohet nga deployer-i, mesazhin q\u00eb shihni n\u00eb krye t\u00eb skedarit dhe tipin boolean - n\u00ebse aplikacioni yn\u00eb \u00ebsht\u00eb n\u00eb gjendje apo jo.<\/p>\n<p>Me rreshtin e fundit kam b\u00ebr\u00eb nj\u00eb truk t\u00eb vog\u00ebl, sepse kam vendosur nj\u00eb vler\u00eb konstante boolean n\u00eb krye t\u00eb skedarit, e cila m\u00eb von\u00eb do t\u00eb ndihmoj\u00eb n\u00eb zhvillimin edhe t\u00eb nj\u00eb aplikacioni \"jo t\u00eb sh\u00ebndosh\u00eb\". M\u00eb von\u00eb do ta diskutojm\u00eb k\u00ebt\u00eb. <\/p>\n<p>Pra, le t\u00eb fillojm\u00eb. S\u00eb pari, kontrollojm\u00eb p\u00ebr ndonj\u00eb pod t\u00eb hapur duke p\u00ebrdorur komand\u00ebn ~ kubectl get pods dhe n\u00eb munges\u00eb t\u00eb p\u00ebrgjigjes nga URL-ja e frontend-it, sigurohemi se nuk ka asnj\u00eb implementim n\u00eb k\u00ebt\u00eb moment. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/4da1ae467993d6e60ec539ae5ff136ff.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nM\u00eb posht\u00eb n\u00eb ekran shihni nd\u00ebrfaqen e Deploymentctl, t\u00eb cil\u00ebn e p\u00ebrmenda m\u00eb par\u00eb, ku vendosen parametrat e implementimit: hap\u00ebsira emri, emri i aplikacionit, versioni i implementimit, numri i replikave, URL front-end, emri i kontejnerit, imazhi, kufijt\u00eb e burimeve, numri i portit p\u00ebr kontrollin e sh\u00ebndetit etj. Kufijt\u00eb e burimeve jan\u00eb shum\u00eb t\u00eb r\u00ebnd\u00ebsish\u00ebm, pasi lejojn\u00eb maksimalin e mundsh\u00ebm t\u00eb p\u00ebrdorimit t\u00eb \u2018harduerit\u2019. Po ashtu, mund t\u00eb shihni logun e implementimit t\u00eb Deployment log.<\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/edf6a02b336f1abce61f0a323edeee9d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nN\u00ebse tani p\u00ebrs\u00ebrisim komand\u00ebn ~ kubectl get pods, duket se sistemi \u2018ngrihet\u2019 p\u00ebr 20 sekonda, gjat\u00eb t\u00eb cilave ndodh rikonfigurimi i ha-proxy. Pas k\u00ebsaj, podi aktivizohet, dhe replik\u00ebn ton\u00eb mund ta shohim n\u00eb logun e implementimit. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/c6c8f6335e00d3a9cfcf4d4792ecf795.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nE kam prer\u00eb nga video pritjen 20-sekond\u00ebshe, dhe tani e shihni n\u00eb ekran q\u00eb versioni i par\u00eb i aplikacionit \u00ebsht\u00eb implementuar. E gjitha kjo \u00ebsht\u00eb realizuar vet\u00ebm p\u00ebrmes UI. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/d21fa9ad71e22b2bb9efdfc7bc9c8771.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTani tani le t\u00eb provojm\u00eb versionin e dyt\u00eb. P\u00ebr k\u00ebt\u00eb, un\u00eb po e ndryshoj mesazhin e aplikacionit nga \u00abHello, Kubernetes!\u00bb n\u00eb \u00abHello, Deployer!\u00bb, sistemi krijon k\u00ebt\u00eb imazh dhe e vendos n\u00eb regjistrin Docker, pas s\u00eb cil\u00ebs ne thjesht klikojm\u00eb p\u00ebrs\u00ebri n\u00eb butonin \u00abDeploy\u00bb n\u00eb dritaren Deploymentctl. Kjo aktivizon automatikisht logun e implementimit po ashtu si\u00e7 ndodhi me implementimin e versionit t\u00eb par\u00eb t\u00eb aplikacionit. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/e4ef784649fd18b1580d2562b318ac0f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKoma ~ kubectl get pods tregon se aktualisht jan\u00eb aktivizuar 2 versione t\u00eb aplikacionit, por frontend-i tregon se ne ende kemi versionin 1 n\u00eb pun\u00eb. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/1d4a9c91f836007325a2a2c833da8eff.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nBalancuesi i ngarkes\u00ebs pret deri sa t\u00eb kryhet kontrollet e sh\u00ebndetit (health check), pas s\u00eb cil\u00ebs do t\u00eb ridrejtoj\u00eb trafikun n\u00eb versionin e ri. Pas 20 sekondash, ne kalojm\u00eb n\u00eb curl dhe shohim se tani kemi implementuar versionin 2 t\u00eb aplikacionit, nd\u00ebrsa versioni i par\u00eb \u00ebsht\u00eb fshir\u00eb. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/e123618251e9fcb1c14829772634b6e8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nIshte nj\u00eb implementim i aplikacionit \"t\u00eb sh\u00ebndetsh\u00ebm\" \u2014 healthy. Le t\u00eb shohim se \u00e7far\u00eb do t\u00eb ndodh\u00eb n\u00ebse p\u00ebr versionin e ri t\u00eb aplikacionit e ndryshoj vler\u00ebn e parametrave Healthy nga true n\u00eb false, dometh\u00ebn\u00eb do t\u00eb provoj t\u00eb implementoj nj\u00eb aplikacion t\u00eb pa sh\u00ebndetsh\u00ebm, i cili nuk ia doli kontrollit t\u00eb funksionalitetit. Kjo mund t\u00eb ndodh\u00eb n\u00ebse gjat\u00eb faz\u00ebs s\u00eb zhvillimit ishin b\u00ebr\u00eb disa gabime konfigurimi dhe ai u d\u00ebrgua n\u00eb prodhim n\u00eb k\u00ebt\u00eb form\u00eb. <\/p>\n<p>Si\u00e7 e shihni, implementimi kalon t\u00eb gjitha etapat e lartp\u00ebrmendura, dhe ~ kubectl get pods tregon se t\u00eb dy pod-et jan\u00eb aktivizuar. Por ndryshe nga implementimi i m\u00ebparsh\u00ebm, logu tregon nj\u00eb gjendje timeout. Dometh\u00ebn\u00eb, p\u00ebr shkak se kontrolli i sh\u00ebndetit nuk arriti, versioni i ri i aplikacionit nuk mund t\u00eb implementohet. Si rezultat, ju shihni se sistemi \u00ebsht\u00eb kthyer n\u00eb p\u00ebrdorimin e versionit t\u00eb vjet\u00ebr t\u00eb aplikacionit, nd\u00ebrsa versioni i ri u fshi. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/4542761328603596704f21cef4c9d4a3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nE mira e k\u00ebtij \u00ebsht\u00eb se, edhe n\u00ebse keni nj\u00eb num\u00ebr t\u00eb madh k\u00ebrkesash t\u00eb nj\u00ebkohshme q\u00eb po vijn\u00eb n\u00eb aplikacion, ato nuk do t\u00eb ndiejn\u00eb asnj\u00eb pushim gjat\u00eb realizimit t\u00eb procedur\u00ebs s\u00eb shp\u00ebrndarjes. N\u00ebse e testoni k\u00ebt\u00eb aplikacion me korniz\u00ebn Gatling, e cila i d\u00ebrgon atij numrin maksimalt t\u00eb mundsh\u00ebm t\u00eb k\u00ebrkesave, asnj\u00eb nga k\u00ebto k\u00ebrkesa nuk do t\u00eb refuzohet. Kjo do t\u00eb thot\u00eb se p\u00ebrdoruesit tan\u00eb nuk do ta ndiejn\u00eb asnj\u00ebher\u00eb p\u00ebrdit\u00ebsimin e versioneve n\u00eb koh\u00eb reale. N\u00ebse p\u00ebrdit\u00ebsimi d\u00ebshton, puna do t\u00eb vazhdoj\u00eb n\u00eb versionin e vjet\u00ebr; n\u00ebse \u00ebsht\u00eb e suksesshme, p\u00ebrdoruesit do t\u00eb kalojn\u00eb n\u00eb versionin e ri. <\/p>\n<p>Ka ekziston vet\u00ebm nj\u00eb gj\u00eb q\u00eb mund t\u00eb \u00e7oj\u00eb n\u00eb d\u00ebshtim \u2013 n\u00ebse kontrolli i sh\u00ebndetit kalon me sukses, por aplikacioni d\u00ebshton sapo merr ngarkes\u00ebn e pun\u00ebs, do t\u00eb thot\u00eb se kolapsi do t\u00eb ndodhi vet\u00ebm pasi t\u00eb p\u00ebrfundoj\u00eb shp\u00ebrndarja. N\u00eb k\u00ebt\u00eb rast, do t'ju duhet t\u00eb riktheheni manualisht n\u00eb versionin e vjet\u00ebr. Pra, shqyrtuam se si t\u00eb p\u00ebrdorim Kubernetes me mjetet e tij open-source. Procedura e shp\u00ebrndarjes do t\u00eb jet\u00eb shum\u00eb m\u00eb e thjesht\u00eb n\u00ebse i integroni k\u00ebto mjete n\u00eb pipeline-t e nd\u00ebrtimit\/shp\u00ebrndarjes Build\/Deploy. P\u00ebr k\u00ebt\u00eb, mund t\u00eb p\u00ebrdorni si nd\u00ebrfaqen e p\u00ebrdoruesit ashtu edhe ta automatizoni plot\u00ebsisht k\u00ebt\u00eb proces, duke aplikuar, p\u00ebr shembull, commit to master. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/43b638be9d334c6c4f8e9f4fc00ce2f9.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nServeri yn\u00eb i nd\u00ebrtimit Build Server do t\u00eb krijoj\u00eb nj\u00eb imazh Docker, do ta ngarkoj\u00eb at\u00eb n\u00eb Docker Hub ose n\u00eb \u00e7do regjist\u00ebr tjet\u00ebr q\u00eb p\u00ebrdorni. Docker Hub mb\u00ebshtet webhook, k\u00ebshtu q\u00eb mund t\u00eb nisim nj\u00eb shp\u00ebrndarje t\u00eb larg\u00ebt p\u00ebrmes Deployer n\u00eb m\u00ebnyr\u00ebn e treguar m\u00eb sip\u00ebr. K\u00ebshtu mund t\u00eb automatizoni plot\u00ebsisht shp\u00ebrndarjen e aplikacionit n\u00eb prodhimin e mundsh\u00ebm. <\/p>\n<p>T\u00eb kalojm\u00eb te tema tjet\u00ebr \u2013 shkall\u00ebzimi i klasterit Kubernetes. V\u00ebrej se komanda kubectl \u00ebsht\u00eb komanda p\u00ebr shkall\u00ebzim. Me ndihm\u00ebn e saj, mund t\u00eb rritet leht\u00ebsisht numri i replikave n\u00eb klasterin ton\u00eb t\u00eb disponuesh\u00ebm. Megjithat\u00eb, n\u00eb praktik\u00eb, zakonisht d\u00ebshirojm\u00eb t\u00eb rrisim numrin e nod\u00ebve, jo t\u00eb pod\u00ebve. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/890f436b4bc52c81f5db5b35e64e7e18.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nN\u00eb k\u00ebt\u00eb m\u00ebnyr\u00eb, gjat\u00eb or\u00ebve t\u00eb pun\u00ebs mund t'ju nevojitet rritje, nd\u00ebrsa gjat\u00eb nat\u00ebs, p\u00ebr t\u00eb reduktuar kostot e sh\u00ebrbimeve t\u00eb Amazon \u2013 zvog\u00eblimi i numrit t\u00eb instancave t\u00eb aplikacioneve t\u00eb lancuara. Kjo nuk do t\u00eb thot\u00eb se mjafton t\u00eb shkall\u00ebzohet vet\u00ebm numri i pod\u00ebve, sepse edhe n\u00ebse nj\u00eb nga nod\u00ebt \u00ebsht\u00eb i papun\u00eb, do t\u00eb duhet t\u00eb paguani p\u00ebr t\u00eb Amazon. Dometh\u00ebn\u00eb, p\u00ebrve\u00e7 shkall\u00ebzimit t\u00eb pod\u00ebve, do t'ju nevojitet gjithashtu t\u00eb shkall\u00ebzoni numrin e makinave t\u00eb p\u00ebrdorura. <\/p>\n<p>Kjo mund t\u00eb shkaktoj\u00eb v\u00ebshtir\u00ebsi, sepse pavar\u00ebsisht n\u00ebse p\u00ebrdorim Amazon ose ndonj\u00eb sh\u00ebrbim tjet\u00ebr cloud, Kubernetes nuk di asgj\u00eb p\u00ebr numrin e makinave t\u00eb p\u00ebrdorura. Ajo nuk ka nj\u00eb mjet q\u00eb lejon shkall\u00ebzimin e sistemit n\u00eb nivelin e nod\u00ebve. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/2f00b19f1cb665d8e7bd896fa419554c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPrandaj, do t\u00eb duhet t\u00eb kujdesemi p\u00ebr nodet dhe pods. Mund t\u00eb vet\u00ebm t\u00eb shkall\u00ebzojm\u00eb nisjen e nodave t\u00eb rinj duke p\u00ebrdorur AWS API dhe makinat e grupit t\u00eb shkall\u00ebzimit p\u00ebr t\u00eb p\u00ebrcaktuar numrin e nyjeve punuese n\u00eb Kubernetes. Gjithashtu, mund t\u00eb p\u00ebrdorim cloud-init ose nj\u00eb skenar t\u00eb ngjash\u00ebm p\u00ebr t\u00eb regjistruar nodet n\u00eb klasterin Kubernetes. <\/p>\n<p>Makin\u00eb e re fillon n\u00eb grupin e Scaling, e inicijon veten si nod, regjistrohet n\u00eb regjistrin e masterit dhe fillon pun\u00ebn. Pas k\u00ebsaj, mund t\u00eb rritet numri i replikave q\u00eb do t\u00eb p\u00ebrdoren n\u00eb nodet q\u00eb lindin. Reduktimi i mas\u00ebs k\u00ebrkon m\u00eb shum\u00eb p\u00ebrpjekje, pasi \u00ebsht\u00eb e nevojshme t\u00eb sigurohemi q\u00eb nj\u00eb hap i till\u00eb nuk do t\u00eb \u00e7oj\u00eb n\u00eb shkat\u00ebrrimin e aplikacioneve q\u00eb tashm\u00eb jan\u00eb t\u00eb aktivizuara pas \u00e7aktivizimit t\u00eb \u2018makinave t\u00eb pap\u00ebrdorura\u2019. P\u00ebr t\u00eb parandaluar nj\u00eb skenar t\u00eb till\u00eb, \u00ebsht\u00eb e nevojshme t\u00eb \u00e7onim nodet n\u00eb statusin 'unschedulable'. Kjo do t\u00eb thot\u00eb se planifikuesi n\u00eb m\u00ebnyr\u00eb t\u00eb paracaktuar, gjat\u00eb planifikimit t\u00eb podave t\u00eb DaemonSet, do t\u00eb injoroj\u00eb k\u00ebto nodes. Planifikuesi nuk do t\u00eb fshij\u00eb asgj\u00eb nga k\u00ebto servera, por asdo t\u00eb aktivizoj\u00eb ndonj\u00eb kontejner t\u00eb ri atje. Hapi i ardhsh\u00ebm \u00ebsht\u00eb nxjerrja e nodit drain node, q\u00eb do t\u00eb thot\u00eb transferimi i podave q\u00eb jan\u00eb aktiv\u00eb nga ai n\u00eb nj\u00eb makin\u00eb tjet\u00ebr, ose nodet e tjera, q\u00eb kan\u00eb kapacitet t\u00eb mjaftuesh\u00ebm p\u00ebr k\u00ebt\u00eb. Pas sigurimit q\u00eb nuk ka m\u00eb konteiner\u00eb n\u00eb k\u00ebto nodet, ata mund t\u00eb fshihen nga Kubernetes. Pas k\u00ebsaj, p\u00ebr Kubernetes ato do t\u00eb skadojn\u00eb thjesht. M\u00eb pas, nevojitet t\u00eb p\u00ebrdoret API i AWS p\u00ebr t\u00eb \u00e7aktivizuar nodet e panevojshme, apo makinat. <br \/>\nMund t\u00eb p\u00ebrdorni Amdatu Scalerd \u2014 nj\u00eb tjet\u00ebr mjet open-source p\u00ebr skalimin, i ngjash\u00ebm me AWS API. Ai ofron CLI p\u00ebr t\u00eb shtuar ose hequr nodes n\u00eb klaster. Nj\u00eb ve\u00e7ori interesante \u00ebsht\u00eb mund\u00ebsia p\u00ebr t\u00eb konfiguruar planifikuesin p\u00ebrmes k\u00ebtij skedari json. <\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/f70c7c722cacb4792c316e9f80a7500a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKodi i paraqitur redukton kapacitetin e klasterit n\u00eb m\u00ebnyr\u00eb t\u00eb pjesshme gjat\u00eb nat\u00ebs. Ai \u00ebsht\u00eb i konfiguruar si p\u00ebr numrin e replikave ekzistuese, ashtu edhe p\u00ebr kapacitetin e d\u00ebshiruar t\u00eb klasterit Amazon. P\u00ebrdorimi i k\u00ebtij planifikuesi do t\u00eb reduktoj\u00eb automatikisht numrin e nodave gjat\u00eb nat\u00ebs dhe do t'i rris\u00eb ato n\u00eb m\u00ebngjes, duke lejuar kursim t\u00eb kostove p\u00ebr p\u00ebrdorimin e nodave t\u00eb nj\u00eb sh\u00ebrbimi t\u00eb till\u00eb n\u00eb re si Amazon. Kjo funksionalitet nuk \u00ebsht\u00eb e nd\u00ebrtuar n\u00eb Kubernetes, por p\u00ebrdorimi i Scalerd do t'ju lejoj\u00eb t\u00eb shkalloni k\u00ebt\u00eb platform\u00eb sipas d\u00ebshir\u00ebs. <\/p>\n<p>Dua t\u00eb theksoj se shum\u00eb njer\u00ebz m\u00eb thon\u00eb: \"Kjo \u00ebsht\u00eb e gjitha mir\u00eb, por si b\u00ebhet me baz\u00ebn time t\u00eb t\u00eb dh\u00ebnave, e cila zakonisht \u00ebsht\u00eb n\u00eb nj\u00eb gjendje statike?\" Si mund t\u00eb funksionoj\u00eb di\u00e7ka e till\u00eb n\u00eb nj\u00eb mjedis t\u00eb till\u00eb dinamik si Kubernetes? N\u00eb opinionin tim, nuk duhet ta b\u00ebni, nuk duhet t\u00eb p\u00ebrpiqeni t\u00eb organizoni funksionimin e depozitimit t\u00eb t\u00eb dh\u00ebnave n\u00eb Kubernetes. Teknikisht \u00ebsht\u00eb e mundur, dhe ka udh\u00ebzime n\u00eb internet p\u00ebr k\u00ebt\u00eb, megjithat\u00eb, do ta komplikohej ndjesh\u00ebm jet\u00ebn tuaj. <\/p>\n<p>Po, n\u00eb Kubernetes ekziston koncepti i magazinave t\u00eb q\u00ebndrueshme, dhe ju mund t\u00eb p\u00ebrpiqeni t\u00eb ekzekutoni magazina t\u00eb dh\u00ebnash si Mongo ose MySQL, por kjo \u00ebsht\u00eb nj\u00eb detyr\u00eb mjaft e nd\u00ebrlikuar. Kjo \u00ebsht\u00eb p\u00ebr shkak se magazinat e dh\u00ebnash nuk e mb\u00ebshtesin plot\u00ebsisht nd\u00ebrveprimin me nj\u00eb mjedis dinamik. Shumica e bazave t\u00eb t\u00eb dh\u00ebnave k\u00ebrkojn\u00eb konfigurim t\u00eb konsideruesh\u00ebm, duke p\u00ebrfshir\u00eb konfigurimin manual t\u00eb klasterit, nuk i p\u00eblqejn\u00eb automatizimet dhe gj\u00ebra t\u00eb ngjashme. <br \/>\nPrandaj, nuk ka kuptim ta komplikoni jet\u00ebn tuaj duke u p\u00ebrpjekur t\u00eb lan\u00e7oni nj\u00eb depozit\u00eb t\u00eb dh\u00ebnash n\u00eb Kubernetes. Organizoni pun\u00ebn e tyre n\u00eb m\u00ebnyr\u00eb tradicionale duke p\u00ebrdorur sh\u00ebrbime t\u00eb njohura dhe thjesht jepni mund\u00ebsin\u00eb q\u00eb Kubernetes t'i p\u00ebrdor\u00eb ato.<\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/129e8d403f42b7aa6fb022b386955e9e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nN\u00eb p\u00ebrfundim t\u00eb tem\u00ebs, d\u00ebshiroj t'ju prezantoj me platform\u00ebn Cloud RTI t\u00eb bazuar n\u00eb Kubernetes, mbi t\u00eb cil\u00ebn punon ekipi im. Ajo ofron menaxhim t\u00eb centralizuar t\u00eb regjistrave, monitorim t\u00eb aplikacioneve dhe klaster\u00ebve, dhe ka shum\u00eb funksione t\u00eb tjera t\u00eb dobishme q\u00eb do t'ju duhen. P\u00ebrdoren disa mjete open-source, si Grafana p\u00ebr vizualizimin e monitorimit.<\/p>\n<p><img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/a0e79033dbc0a2683e3567934c9ba014.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<img decoding=\"async\" alt=\"DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatik\u00eb e shkall\u00ebzimit dhe automatizimi i shp\u00ebrndarjes. Pjesa 2.\" src=\"\/wp-content\/uploads\/2020\/06\/2b1b7ba139053fc492c7ad25e96f362f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nU paraqit nj\u00eb pyetje, pse duhet t\u00eb p\u00ebrdorim nj\u00eb balancues ngarkese ha-proxy me Kubernetes. \u00cbsht\u00eb nj\u00eb pyetje e mir\u00eb, sepse aktualisht ekzistojn\u00eb 2 nivele balancimi ngarkese. Sh\u00ebrbimet e Kubernetes akoma ndodhen n\u00eb adresat IP virtuale. Nuk mund t'i p\u00ebrdorni ato p\u00ebr portet e makinave t\u00eb jashtme, sepse n\u00ebse Amazon ngarkon host-in e saj n\u00eb oborr, adresa do t\u00eb ndryshoj\u00eb. Kjo \u00ebsht\u00eb arsyeja pse ne vendosim ha-proxy p\u00ebrpara sh\u00ebrbimeve, p\u00ebr t\u00eb krijuar nj\u00eb struktur\u00eb m\u00eb statike p\u00ebr nj\u00eb nd\u00ebrveprim t\u00eb papenguar t\u00eb trafikut me Kubernetes. <\/p>\n<p>Nj\u00eb pyetje tjet\u00ebr e mir\u00eb \u2013 si mund t\u00eb kujdesemi p\u00ebr ndryshimin e skem\u00ebs s\u00eb baz\u00ebs s\u00eb t\u00eb dh\u00ebnave gjat\u00eb implementimit t\u00eb blue\/green? \u00cbsht\u00eb e v\u00ebrtet\u00eb se, pavar\u00ebsisht nga p\u00ebrdorimi i Kubernetes, ndryshimi i skem\u00ebs s\u00eb baz\u00ebs s\u00eb t\u00eb dh\u00ebnave \u00ebsht\u00eb nj\u00eb detyr\u00eb e v\u00ebshtir\u00eb. Duhet t\u00eb siguroheni q\u00eb skema e vjet\u00ebr dhe ajo e re t\u00eb jen\u00eb t\u00eb p\u00ebrputhshme, pastaj mund t\u00eb p\u00ebrdit\u00ebsoni baz\u00ebn e t\u00eb dh\u00ebnave dhe m\u00eb pas aplikacionet vet\u00eb. Mund t\u00eb kryeni nj\u00eb \u201cz\u00ebvend\u00ebsim t\u00eb nxeht\u00eb\u201d t\u00eb baz\u00ebs s\u00eb t\u00eb dh\u00ebnave dhe pastaj t\u00eb p\u00ebrdit\u00ebsoni aplikacionet. Njoh njer\u00ebz q\u00eb kan\u00eb ngarkuar nj\u00eb kluster krejt t\u00eb ri t\u00eb baz\u00ebs s\u00eb t\u00eb dh\u00ebnave me skem\u00eb t\u00eb re, ky \u00ebsht\u00eb nj\u00eb opsion n\u00ebse keni nj\u00eb baz\u00eb t\u00eb dh\u00ebnash pa skema si Mongo, por n\u00eb \u00e7do rast, kjo nuk \u00ebsht\u00eb nj\u00eb detyr\u00eb e leht\u00eb. N\u00ebse nuk ka m\u00eb pyetje, faleminderit p\u00ebr v\u00ebmendjen!<\/p>\n<p><center><div class=\"youtube-placeholder\" data-id=\"-Ci4vd4rh4M\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/-Ci4vd4rh4M\/hqdefault.jpg\" alt=\"Luaj videon\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<h3>Pak reklam\u00eb \ud83d\ude42<\/h3>\n<p>\nFaleminderit q\u00eb q\u00ebndroni me ne. Ju p\u00eblqejn\u00eb artikujt tan\u00eb? D\u00ebshironi t\u00eb shihni m\u00eb shum\u00eb materiale interesante? Na mb\u00ebshtetni duke b\u00ebr\u00eb nj\u00eb porosi ose duke na rekomanduar njohurive tuaj, <noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/cloudvps\/nl\">VPS cloud p\u00ebr zhvillues nga $4.99<\/a><\/noindex>, <b>nj\u00eb analog unik i server\u00ebve entry-level, i nd\u00ebrtuar p\u00ebr ju:<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/347386\/\">E gjith\u00eb e v\u00ebrteta rreth VPS (KVM) E5-2697 v3 (6 Nuclea) 10GB DDR4 480GB SSD 1Gbps nga $19 ose si ta ndajm\u00eb sakt\u00ebsisht serverin?<\/a><\/noindex> (disponohen variante me RAID1 dhe RAID10, deri n\u00eb 24 b\u00ebrthama dhe deri n\u00eb 40GB DDR4).<\/p>\n<p><b>Dell R730xd dyfish m\u00eb i lir\u00eb n\u00eb qendr\u00ebn e t\u00eb dh\u00ebnave Equinix Tier IV n\u00eb Amsterdam?<\/b> Vet\u00ebm k\u00ebtu <b><noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/serversnl\">2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TB nga $199<\/a><\/noindex> n\u00eb Holand\u00eb! <b>Dell R420 \u2014 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB \u2014 nga $99!<\/b><\/b> Lexoni rreth <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/329618\/\">Si t\u00eb nd\u00ebrtosh nj\u00eb infrastruktur\u00eb t\u00eb klas\u00ebs korporative me p\u00ebrdorimin e server\u00ebve Dell R730xd E5-2650 v4 me \u00e7mim prej 9000 euro p\u00ebr pak para?<\/a><\/noindex><br \/>\n<br \/>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/504672\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Kubernetes \u2014 \u044d\u0442\u043e \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 Docker \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0441\u0440\u0435\u0434\u0435. \u041e\u0434\u043d\u0430\u043a\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 Kubernetes \u0440\u0435\u0448\u0438\u0442\u044c \u043d\u0435 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438. \u041f\u0440\u0438 \u0447\u0430\u0441\u0442\u043e\u043c \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u0441\u0440\u0435\u0434\u0435 \u043c\u044b \u043d\u0443\u0436\u0434\u0430\u0435\u043c\u0441\u044f \u0432 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c Blue\/Green deployment, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0435\u0432 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0442\u0430\u043a\u0436\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0435 HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 SSL. \u042d\u0442\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":83788,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-83787","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"Kubernetes \u2014 \u044d\u0442\u043e \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 Docker \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0441\u0440\u0435\u0434\u0435. \u041e\u0434\u043d\u0430\u043a\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 Kubernetes \u0440\u0435\u0448\u0438\u0442\u044c \u043d\u0435 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438. \u041f\u0440\u0438 \u0447\u0430\u0441\u0442\u043e\u043c \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u0441\u0440\u0435\u0434\u0435 \u043c\u044b \u043d\u0443\u0436\u0434\u0430\u0435\u043c\u0441\u044f \u0432 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c Blue\/Green deployment, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0435\u0432 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0442\u0430\u043a\u0436\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0435 HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 SSL. \u042d\u0442\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438\" \/>\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\/sq\/blog\/administrirovanie\/devoxx-uk-kubernetes-v-prodakshene-blue-green-deployment-avtomasshtabirovanie-i-avtomatizacziya-razvertyvaniya-chast-2\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\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\udd47DEVOXX UK. Kubernetes \u0432 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0435: Blue\/Green deployment, \u0430\u0432\u0442\u043e\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f. \u0427\u0430\u0441\u0442\u044c 2 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"Kubernetes \u2014 \u044d\u0442\u043e \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 Docker \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0441\u0440\u0435\u0434\u0435. \u041e\u0434\u043d\u0430\u043a\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 Kubernetes \u0440\u0435\u0448\u0438\u0442\u044c \u043d\u0435 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438. \u041f\u0440\u0438 \u0447\u0430\u0441\u0442\u043e\u043c \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u0441\u0440\u0435\u0434\u0435 \u043c\u044b \u043d\u0443\u0436\u0434\u0430\u0435\u043c\u0441\u044f \u0432 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c Blue\/Green deployment, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0435\u0432 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0442\u0430\u043a\u0436\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0435 HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 SSL. \u042d\u0442\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/devoxx-uk-kubernetes-v-prodakshene-blue-green-deployment-avtomasshtabirovanie-i-avtomatizacziya-razvertyvaniya-chast-2\" \/>\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-06-03T05:42:26+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-06-03T05:42:26+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\udd47DEVOXX UK. Kubernetes n\u00eb prodhim: Blue\/Green deployment, automatikisht shkall\u00ebzimi dhe automatizimi i p\u00ebrcjelljes. Pjesa 2 | ProHoster","description":"Kubernetes \u00ebsht\u00eb nj\u00eb mjet i shk\u00eblqyer p\u00ebr t\u00eb drejtuar konteiner\u00ebt Docker n\u00eb nj\u00eb mjedis prodhimi t\u00eb klasterizuar. Megjithat\u00eb, ekzistojn\u00eb detyra q\u00eb Kubernetes nuk mund t'i zgjidh\u00eb. N\u00eb nj\u00eb mjedis prodhimi me shp\u00ebrndarje t\u00eb shpeshta, kemi nevoj\u00eb p\u00ebr nj\u00eb implementim t\u00eb plot\u00eb t\u00eb automatizuar Blue\/Green, p\u00ebr t\u00eb shmangur ndalesat n\u00eb k\u00ebt\u00eb proces, ku gjithashtu duhet t\u00eb trajtojm\u00eb k\u00ebrkesat HTTP t\u00eb jashtme dhe t\u00eb kryejm\u00eb shkarkimin e SSL. Kjo k\u00ebrkon integrim.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/devoxx-uk-kubernetes-v-prodakshene-blue-green-deployment-avtomasshtabirovanie-i-avtomatizacziya-razvertyvaniya-chast-2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","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\udd47DEVOXX UK. Kubernetes \u0432 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0435: Blue\/Green deployment, \u0430\u0432\u0442\u043e\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f. \u0427\u0430\u0441\u0442\u044c 2 | ProHoster","og:description":"Kubernetes \u2014 \u044d\u0442\u043e \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 Docker \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0441\u0440\u0435\u0434\u0435. \u041e\u0434\u043d\u0430\u043a\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 Kubernetes \u0440\u0435\u0448\u0438\u0442\u044c \u043d\u0435 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438. \u041f\u0440\u0438 \u0447\u0430\u0441\u0442\u043e\u043c \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u0441\u0440\u0435\u0434\u0435 \u043c\u044b \u043d\u0443\u0436\u0434\u0430\u0435\u043c\u0441\u044f \u0432 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c Blue\/Green deployment, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0435\u0432 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0442\u0430\u043a\u0436\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0435 HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 SSL. \u042d\u0442\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/devoxx-uk-kubernetes-v-prodakshene-blue-green-deployment-avtomasshtabirovanie-i-avtomatizacziya-razvertyvaniya-chast-2","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-06-03T05:42:26+00:00","article:modified_time":"2020-06-03T05:42:26+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"83787","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 15:11:01","updated":"2022-09-28 11:45:41"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/83787","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=83787"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/83787\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/83788"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=83787"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=83787"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=83787"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}