{"id":35226,"date":"2019-10-31T22:03:05","date_gmt":"2019-10-31T19:03:05","guid":{"rendered":"https:\/\/prohoster.info\/blog\/gotovit-kubernetes-klaster-prosto-i-udobno-anonsiruem-addon-operator\/"},"modified":"2019-10-31T22:03:05","modified_gmt":"2019-10-31T19:03:05","slug":"gotovit-kubernetes-klaster-prosto-i-udobno-anonsiruem-addon-operator","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/gotovit-kubernetes-klaster-prosto-i-udobno-anonsiruem-addon-operator","title":{"rendered":"A \u00ebsht\u00eb e leht\u00eb dhe e rehatshme t\u00eb p\u00ebrgatis\u00ebsh nj\u00eb klaster Kubernetes? Njoftojm\u00eb addon-operatorin","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"A \u00ebsht\u00eb e leht\u00eb dhe e rehatshme t\u00eb p\u00ebrgatis\u00ebsh nj\u00eb klaster Kubernetes? Njoftojm\u00eb addon-operatorin\" src=\"\/wp-content\/uploads\/8df3959f765d5d1bc8d427d3258aacc4.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPas shfaqjes <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/447442\/\">shell-operator<\/a><\/noindex> ne prezantojm\u00eb v\u00ebllan\u00eb e tij m\u00eb t\u00eb madh \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\/addon-operator\">addon-operator<\/a><\/noindex>. Ky \u00ebsht\u00eb nj\u00eb projekt Open Source q\u00eb p\u00ebrdoret p\u00ebr t\u00eb instaluar n\u00eb nj\u00eb kluster Kubernetes komponent\u00ebt sistemor\u00eb, t\u00eb cilat mund t\u00eb quhen me nj\u00eb fjal\u00eb t\u00eb p\u00ebrbashk\u00ebt \u2014 plot\u00ebsuese.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>P\u00ebrse na nevojiten plot\u00ebsuese?<\/h2>\n<p>\nNuk \u00ebsht\u00eb sekret q\u00eb Kubernetes nuk \u00ebsht\u00eb nj\u00eb produkt p\u00ebrfundimtar gjith-in-nj\u00eb, dhe p\u00ebr t\u00eb nd\u00ebrtuar nj\u00eb kluster 't\u00eb rritur' do t\u00eb nevojiten plot\u00ebsuese t\u00eb ndryshme. Adaptor-operator do t\u00eb ndihmoj\u00eb n\u00eb instalimin, konfigurimin dhe mbajtjen p\u00ebrdit\u00ebsuar t\u00eb k\u00ebtyre plot\u00ebsueseve.<\/p>\n<p>Nevoja p\u00ebr komponente shtes\u00eb n\u00eb kluster \u00ebsht\u00eb e zbuluar n\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/449096\/\">raportin<\/a><\/noindex> kolegu <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/driusha\/\" class=\"user_link\">driusha<\/a><\/noindex>. N\u00eb p\u00ebrmbledhje, situata me Kubernetes aktualisht \u00ebsht\u00eb e till\u00eb q\u00eb p\u00ebr nj\u00eb instalim t\u00eb thjesht\u00eb 'p\u00ebr t\u00eb provuar' mund t\u00eb mjaftohesh me komponent\u00ebt e kutis\u00eb, p\u00ebr zhvilluesit dhe testimin mund t\u00eb shtosh Ingress, por p\u00ebr nj\u00eb instalim t\u00eb plot\u00eb, p\u00ebr t\u00eb cilin mund t\u00eb thuash 'produkti yt \u00ebsht\u00eb gati', \u00ebsht\u00eb e nevojshme t\u00eb shtosh rreth dhjet\u00eb plot\u00ebsuese t\u00eb ndryshme: di\u00e7ka p\u00ebr monitorimin, di\u00e7ka p\u00ebr log-et, mos harro ingress dhe cert-manager, ndaje grupe nodalesh, shto politikat e rrjetit, p\u00ebrfundo me konfigurime sysctl dhe autoscaler p\u00ebr pod\u2026<\/p>\n<p><img decoding=\"async\" alt=\"A \u00ebsht\u00eb e leht\u00eb dhe e rehatshme t\u00eb p\u00ebrgatis\u00ebsh nj\u00eb klaster Kubernetes? Njoftojm\u00eb addon-operatorin\" src=\"\/wp-content\/uploads\/ab3bed8ee8b29d4e51905e45c908f078.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Cila \u00ebsht\u00eb specifika e pun\u00ebs me to?<\/h2>\n<p>\nSi n\u00eb tregojn\u00eb praktikat, nj\u00eb instalim nuk mjafton. P\u00ebr nj\u00eb funksionim komod me klasterin, do t\u00eb nevojitet q\u00eb shtesat t\u00eb p\u00ebrdit\u00ebsohen, t\u00eb \u00e7aktivizohen (t\u00eb hiqen nga klasteri), dhe ndoshta do t\u00eb d\u00ebshirohet t\u00eb testohen para vendosjes n\u00eb klasterin production.<\/p>\n<p>Ndoshta, mjafton k\u00ebtu edhe Ansible? Mund t\u00eb jet\u00eb. Por <b>shtesat funksionale n\u00eb p\u00ebrgjith\u00ebsi nuk jetojn\u00eb pa konfigurime<\/b>. K\u00ebto cil\u00ebsime mund t\u00eb ndryshojn\u00eb n\u00eb var\u00ebsi t\u00eb variantit t\u00eb klasterit (aws, gce, azure, bare-metal, do, \u2026). Disa cil\u00ebsime nuk mund t'i caktohen paraprakisht \u2014 ato duhet t\u00eb merren nga klasteri. Dhe klasteri nuk \u00ebsht\u00eb statik: p\u00ebr disa cil\u00ebsime do t\u00eb duhet t\u00eb monitoroni ndryshimet. N\u00eb k\u00ebt\u00eb rast, Ansible nuk mjafton: nevojitet nj\u00eb program q\u00eb jeton n\u00eb klaster, pra nj\u00eb Kubernetes Operator.<\/p>\n<p>Ata q\u00eb e kan\u00eb provuar n\u00eb praktik\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\/shell-operator\">shell-operator<\/a><\/noindex>, do t\u00eb thon\u00eb se detyrat e instalimit dhe p\u00ebrdit\u00ebsimit t\u00eb shtesave dhe monitorimi i konfigurimeve mund t\u00eb zgjidhen fare mir\u00eb me <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\/shell-operator\/blob\/master\/HOOKS.md\">hook-esh<\/a><\/noindex> p\u00ebr shell-operator. Mund t\u00eb shkruhet nj\u00eb skript, i cili do t\u00eb b\u00ebj\u00eb nj\u00eb kusht <code>kubectl aplikoni<\/code> dhe do t\u00eb monitoroj\u00eb, p\u00ebr shembull, ConfigMap, ku do t\u00eb ruhen konfigurimet. Ajo, n\u00eb t\u00eb v\u00ebrtet\u00eb, \u00ebsht\u00eb realizuar n\u00eb addon-operator.<\/p>\n<h2>Si \u00ebsht\u00eb organizuar n\u00eb addon-operator?<\/h2>\n<p>\nKur krijuam nj\u00eb zgjidhje t\u00eb re, u bazuam n\u00eb parimet e m\u00ebposhtme:<\/p>\n<ul>\n<li> Instaluesi i shtesave duhet t\u00eb mb\u00ebshtes\u00eb <b>shabllonizimin dhe konfigurimin deklarativ<\/b>. Nuk b\u00ebjm\u00eb skripte magjike q\u00eb instalojn\u00eb shtesa. Addon-operator p\u00ebrdor Helm p\u00ebr t\u00eb instalur shtesa. P\u00ebr instalimin, duhet t\u00eb krijoni nj\u00eb chart dhe t\u00eb p\u00ebrzgjidhni vlerat q\u00eb do t\u00eb p\u00ebrdoren p\u00ebr konfigurin\u00eb. <\/li>\n<li> Cil\u00ebsimet mund t\u00eb <b>gjenerohen gjat\u00eb instalimit<\/b>, ato mund t\u00eb <b>merren nga klasteri<\/b>, ose <b>t\u00eb marrin p\u00ebrdit\u00ebsime<\/b>, duke ndjekur burimet e klasterit. K\u00ebto operacione mund t\u00eb realizohen n\u00ebp\u00ebrmjet hooks.<\/li>\n<li> Cil\u00ebsimet mund t\u00eb <b>t\u00eb ruhen n\u00eb klaster<\/b>. P\u00ebr ruajtjen e cil\u00ebsimeve n\u00eb klaster krijohet ConfigMap\/addon-operator dhe Addon-operator ndjek ndryshimet e k\u00ebtij ConfigMap. Addon-operator ofron qasje n\u00eb cil\u00ebsime p\u00ebr hooks n\u00ebp\u00ebrmjet marr\u00ebveshjeve t\u00eb thjeshta.<\/li>\n<li> <b>Shtesa varet nga cil\u00ebsimet<\/b>. N\u00ebse cil\u00ebsimet ndryshojn\u00eb, Addon-operator l\u00ebshon Helm-chart me vlerat e reja. Bashkimi i Helm-chart, vlerat p\u00ebr t\u00eb dhe hooks ne e kemi quajtur modul (shih m\u00eb posht\u00eb).<\/li>\n<li> <b>Stage-ing<\/b>. Nuk ka skripte magjike p\u00ebr l\u00ebshimin. Mekanizmi i p\u00ebrdit\u00ebsimeve \u00ebsht\u00eb i ngjash\u00ebm me nj\u00eb aplikacion normal \u2014 mbledhjen e shtesave dhe addon-operator n\u00eb nj\u00eb imazh, etiketimin dhe l\u00ebshimin.<\/li>\n<li> <b>Kontrolli i rezultatit<\/b>. Addon-operator ka aft\u00ebsin\u00eb t\u00eb jap\u00eb metrika p\u00ebr Prometheus.<\/li>\n<\/ul>\n<p><\/p>\n<h2>\u00c7far\u00eb \u00ebsht\u00eb nj\u00eb shtes\u00eb n\u00eb addon-operator?<\/h2>\n<p>\nNj\u00eb shtes\u00eb mund t\u00eb quhet gjith\u00e7ka q\u00eb sjell funksionalitete t\u00eb reja n\u00eb grumbull. P\u00ebr shembull, instalimi i Ingress-it \u00ebsht\u00eb nj\u00eb shembull i shk\u00eblqyer i nj\u00eb shtese. Mund t\u00eb jet\u00eb \u00e7do operator ose kontrollues me CRD-t\u00eb e tij: prometheus-operator, cert-manager, kube-controller-manager, etj. Ose di\u00e7ka e vog\u00ebl, por q\u00eb leht\u00ebson operimin \u2014 p\u00ebr shembull, nj\u00eb kopjues sekret, q\u00eb kopjon sekretet e regjistrit n\u00eb hap\u00ebsira t\u00eb reja emrash, ose nj\u00eb rregullues sysctl, q\u00eb konfiguron parametrat sysctl n\u00eb nyje t\u00eb reja.<\/p>\n<p>P\u00ebr realizimin e shtesave, Addon-operator ofron disa koncepte:<\/p>\n<ul>\n<li> <b>Helm-chart<\/b> p\u00ebrdoret p\u00ebr t\u00eb instaluar software t\u00eb ndrysh\u00ebm n\u00eb grumbull \u2014 p\u00ebr shembull, Prometheus, Grafana, nginx-ingress. N\u00ebse komponenti i nevojsh\u00ebm ka nj\u00eb Helm-chart, at\u00ebher\u00eb ta instaloje at\u00eb me Addon-operator do t\u00eb jet\u00eb shum\u00eb e thjesht\u00eb.<\/li>\n<li> <b>Depoja e vlerave<\/b>. Helm-chart-at zakonisht kan\u00eb shum\u00eb cil\u00ebsime t\u00eb ndryshme, t\u00eb cilat mund t\u00eb ndryshojn\u00eb me kalimin e koh\u00ebs. Addon-operator mb\u00ebshtet ruajtjen e k\u00ebtyre cil\u00ebsimeve dhe di t\u00eb ndjek\u00eb ndryshimet e tyre, p\u00ebr t\u00eb ripar\u00eb Helm-chart-in me vlera t\u00eb reja.<\/li>\n<li> <b>Hukut<\/b> \u2014 jan\u00eb skedar\u00eb ekzekutiv\u00eb q\u00eb Addon-operator i ekzekuton n\u00eb ngjarje dhe q\u00eb kan\u00eb qasje n\u00eb depon e values. Huku mund t\u00eb ndjek\u00eb ndryshimet n\u00eb grup dhe t\u00eb p\u00ebrdit\u00ebsoj\u00eb vlerat n\u00eb depon e values. K\u00ebshtu, me ndihm\u00ebn e hukeve mund t\u00eb b\u00ebhet discovery p\u00ebr mbledhjen e vlerave nga grupi n\u00eb fillim ose sipas nj\u00eb programi, madje edhe discovery t\u00eb vazhduesh\u00ebm, duke mbledhur vlera nga grupi n\u00eb p\u00ebrputhje me ndryshimet n\u00eb grup.<\/li>\n<li> <b>Moduli<\/b> \u2014 \u00ebsht\u00eb nj\u00eb bashkim i Helm-chart, depo t\u00eb values dhe hukeve. Modulet mund t\u00eb aktivizohen dhe \u00e7aktivizohen. \u00c7aktivizimi i modulit do t\u00eb thot\u00eb t\u00eb fshihen t\u00eb gjitha publikimet e Helm-chart. Modulet mund t\u00eb p\u00ebrfshijn\u00eb veten dinamikisht, p\u00ebr shembull, n\u00ebse t\u00eb gjith\u00eb modul\u00ebt e nevojsh\u00ebm jan\u00eb aktivizuar ose n\u00ebse discovery n\u00eb huke ka gjetur parametrat e nevojsh\u00ebm \u2014 kjo b\u00ebhet me ndihm\u00ebn e nj\u00eb skripti t\u00eb ndihm\u00ebs enabled.<\/li>\n<li> <b>Huket globale<\/b>. K\u00ebto jan\u00eb huke \"vet\u00eb\"; ato nuk p\u00ebrfshihen n\u00eb module dhe kan\u00eb qasje n\u00eb depo globale t\u00eb values, vlerat e t\u00eb cilave jan\u00eb t\u00eb disponueshme p\u00ebr t\u00eb gjith\u00eb huke n\u00eb module.<\/li>\n<\/ul>\n<p>\nSi funksionojn\u00eb k\u00ebto pjes\u00eb s\u00eb bashku? Le t\u00eb shohim imazhin nga dokumentacioni:<\/p>\n<p><img decoding=\"async\" alt=\"A \u00ebsht\u00eb e leht\u00eb dhe e rehatshme t\u00eb p\u00ebrgatis\u00ebsh nj\u00eb klaster Kubernetes? Njoftojm\u00eb addon-operatorin\" src=\"\/wp-content\/uploads\/c9bb8e5ae78aa5df0d6c4fbf353e4236.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKa dy skenar\u00eb t\u00eb funksionimit:<\/p>\n<ol>\n<li> Hoku global aktivizohet nga nj\u00eb ngjarje \u2014 p\u00ebr shembull, kur ndryshohet burimi n\u00eb klas\u00ebr. Ky hoku trajton ndryshimet dhe ruan vlerat e reja n\u00eb magazin\u00ebn globale t\u00eb values. Addon-operator v\u00ebren se magazina globale \u00ebsht\u00eb ndryshuar dhe aktivizon t\u00eb gjith\u00eb modul\u00ebt. \u00c7do modul, duke p\u00ebrdorur hoku e tij, p\u00ebrcakton n\u00ebse duhet t\u00eb aktivizohet dhe p\u00ebrdit\u00ebson magazin\u00ebn e tij t\u00eb values. N\u00ebse moduli \u00ebsht\u00eb aktivizuar, at\u00ebher\u00eb Addon-operatori fillon instalimin e Helm-chart. Helm-chart ka qasje n\u00eb vlerat nga magazina e modulit dhe nga magazina globale.<\/li>\n<li> Skema e dyt\u00eb \u00ebsht\u00eb m\u00eb e thjesht\u00eb: hoku modular aktivizohet nga nj\u00eb ngjarje, ndryshon vlerat n\u00eb magazin\u00ebn e values t\u00eb modulit. Addon-operator e v\u00ebren k\u00ebt\u00eb dhe aktivizon Helm-chart me vlerat e p\u00ebrdit\u00ebsuara.<\/li>\n<\/ol>\n<p>\nShtesat mund t\u00eb realizohen si nj\u00eb hoku i vet\u00ebm ose si nj\u00eb Helm-chart, ose <b>madje edhe si disa module t\u00eb varura<\/b> \u2014 kjo varet nga kompleksiteti i komponentit q\u00eb instalohet n\u00eb klas\u00ebr dhe niveli i nevojsh\u00ebm i fleksibilitetit t\u00eb konfigurimeve. P\u00ebr shembull, n\u00eb repozitor<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\/addon-operator\/tree\/master\/examples\">\/examples<\/a><\/noindex>) ka nj\u00eb shtes\u00eb sysctl-tuner, e cila \u00ebsht\u00eb e implementuar si nj\u00eb modul i thjesht me nj\u00eb hook dhe Helm-chart, si dhe me p\u00ebrdorimin e ruajtes s\u00eb values, duke mund\u00ebsuar shtimin e konfigurimeve p\u00ebrmes redaktimit t\u00eb ConfigMap.<\/p>\n<h2>D\u00ebrgesa e azhurnimeve<\/h2>\n<p>\nDisa fjal\u00eb rreth organizimit t\u00eb azhurnimeve t\u00eb komponent\u00ebve, t\u00eb cilat instalon Addon-operator.<\/p>\n<p>P\u00ebr t\u00eb nisur Addon-operator n\u00eb klaster, \u00ebsht\u00eb e nevojshme <b>t\u00eb nd\u00ebrtosh nj\u00eb imazh me shtesat<\/b> n\u00eb form\u00eb skedari hook dhe Helm-chart, t\u00eb shtosh skedarin binar <code>addon-operator<\/code> dhe gjith\u00e7ka tjet\u00ebr q\u00eb nevojitet p\u00ebr hooks: <code>bash<\/code>, <code>kubectl<\/code>, <code>jq<\/code>, <code>python<\/code> etj. M\u00eb pas, ky imazh mund t\u00eb shp\u00ebrndahet n\u00eb klaster si nj\u00eb aplikacion i zakonsh\u00ebm dhe me siguri do t\u00eb d\u00ebshironit t\u00eb organizoni nj\u00eb skem\u00eb t\u00eb till\u00eb t\u00eb etiketimit. N\u00ebse ka pak klaster\u00eb, mund t\u00eb p\u00ebrshtatet t\u00eb nj\u00ebjtin qasje si me aplikacionet: l\u00ebshimi i ri, versioni i ri, t\u00eb shkohet n\u00eb t\u00eb gjitha klaster\u00ebt dhe t\u00eb rregullohet imazhi n\u00eb Pod'et. Megjithat\u00eb, n\u00eb rastin e shp\u00ebrndarjes n\u00eb nj\u00eb num\u00ebr t\u00eb konsideruesh\u00ebm klaster\u00ebsh, koncepti i vet\u00eb-azhurimit nga kanali \u00ebsht\u00eb m\u00eb i p\u00ebrshtatsh\u00ebm p\u00ebr ne. <\/p>\n<p>K\u00ebtu \u00ebsht\u00eb si \u00ebsht\u00eb organizuar:<\/p>\n<ul>\n<li>Kanali \u2014 \u00ebsht\u00eb n\u00eb thelb nj\u00eb identifikues q\u00eb mund t\u00eb caktosh \u00e7far\u00ebdo (p\u00ebr shembull, dev\/stage\/ea\/stable).<\/li>\n<li>Emri i kanalit \u00ebsht\u00eb etiketa e imazhit. Kur \u00ebsht\u00eb e nevojshme t\u00eb zhvillohen p\u00ebrdit\u00ebsime n\u00eb kanal, krijohet nj\u00eb imazh i ri dhe etiketuar me emrin e kanalit.<\/li>\n<li>Kur n\u00eb registry shfaqet nj\u00eb imazh i ri, Addon-operatori rinis dhe aktivizohet me imazhin e ri.<\/li>\n<\/ul>\n<p>\nKjo nuk \u00ebsht\u00eb praktika m\u00eb e mir\u00eb, p\u00ebr t\u00eb cil\u00ebn \u00ebsht\u00eb shkruar n\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/containers\/images\/#updating-images\">dokumentacionin e Kubernetes<\/a><\/noindex>. Kjo nuk rekomandohet, por b\u00ebhet fjal\u00eb p\u00ebr <i>nj\u00eb aplikacion t\u00eb zakonsh\u00ebm q\u00eb jeton n\u00eb nj\u00eb kllaster<\/i>. N\u00eb rastin e Addon-operatorit, aplikacioni \u00ebsht\u00eb nj\u00eb grup Deployments, t\u00eb shp\u00ebrndara n\u00ebp\u00ebr kllastere, dhe vet\u00eb-rinovimi ndihmon shum\u00eb dhe thjeshton jet\u00ebn. <\/p>\n<p>Kanalet ndihmojn\u00eb gjithashtu <b>n\u00eb testim<\/b>: n\u00ebse ka nj\u00eb kllaster ndihm\u00ebs, mund ta konfiguroni at\u00eb n\u00eb kanal <code>stage<\/code> dhe t\u00eb zhvilloni p\u00ebrdit\u00ebsime n\u00eb t\u00eb p\u00ebrpara se t\u00eb lindin n\u00eb kanalet <code>ea<\/code> dhe <code>stable<\/code>. N\u00ebse me kllasterin n\u00eb kanal <code>ea<\/code> ndodh nj\u00eb gabim, mund ta kaloni at\u00eb n\u00eb <code>stable<\/code>, derisa t\u00eb hetohet problemi me k\u00ebt\u00eb kllaster. N\u00ebse kllasteri \u00ebsht\u00eb nxjerr\u00eb nga mb\u00ebshtetja aktive, ai kalon n\u00eb kanalin e tij \"t\u00eb ngrir\u00eb\" \u2014 p\u00ebr shembull, <code>freeze-2019-03-20<\/code>.<\/p>\n<p>. P\u00ebrve\u00e7 p\u00ebrdit\u00ebsimeve t\u00eb hook-\u00ebve dhe Helm-chart-\u00ebve, mund t\u00eb jet\u00eb e nevojshme <b>t\u00eb p\u00ebrdit\u00ebsohet edhe nj\u00eb komponent i jasht\u00ebm<\/b>. P\u00ebr shembull, ju keni v\u00ebn\u00eb re nj\u00eb gabim n\u00eb node-exporter dhe madje keni menduar se si ta rregulloni at\u00eb. M\u00eb pas hapni nj\u00eb PR dhe prisni nj\u00eb version t\u00eb ri p\u00ebr t\u00eb kaluar n\u00ebp\u00ebr t\u00eb gjitha klaster\u00ebt dhe p\u00ebr t\u00eb rritur versionin e imazhit. P\u00ebr t\u00eb mos pritur nj\u00eb koh\u00eb t\u00eb pacaktuar, mund t\u00eb nd\u00ebrtosh node-exporter-in tuaj dhe t\u00eb kalosh te ai derisa PR t\u00eb miratohet.<\/p>\n<p>N\u00eb p\u00ebrgjith\u00ebsi, kjo mund t\u00eb b\u00ebhet edhe pa Addon-operator, por me Addon-operator moduli p\u00ebr instalimin e node-exporter do t\u00eb jet\u00eb i duksh\u00ebm n\u00eb nj\u00eb depo, Dockerfile p\u00ebr nd\u00ebrtimin e imazhit tuaj mund t\u00eb ruhet atje, \u00ebsht\u00eb m\u00eb e leht\u00eb p\u00ebr t\u00eb gjith\u00eb pjes\u00ebmarr\u00ebsit q\u00eb t\u00eb kuptojn\u00eb se \u00e7far\u00eb po ndodh... Dhe n\u00ebse ka disa klaster\u00eb, b\u00ebhet m\u00eb e leht\u00eb si p\u00ebr t\u00eb testuar PR tuaj, ashtu edhe p\u00ebr t\u00eb instaluar versionin e ri!<\/p>\n<p>Kjo organizat\u00eb e azhurnimeve t\u00eb komponent\u00ebve funksionon me sukses p\u00ebr ne, por gjithashtu mund t\u00eb realizohet \u00e7do skem\u00eb tjet\u00ebr e p\u00ebrshtatshme \u2014 sepse <b>n\u00eb k\u00ebt\u00eb rast, Addon-operator \u00ebsht\u00eb nj\u00eb skedar i thjesht\u00eb binar<\/b>.<\/p>\n<h2>P\u00ebrfundimi<\/h2>\n<p>\nParimet e realizuara n\u00eb Addon-operator lejojn\u00eb q\u00eb t\u00eb nd\u00ebrtohet nj\u00eb proces i qart\u00eb p\u00ebr krijimin, testimin, instalimin dhe azhurnimin e plot\u00ebsimeve n\u00eb klaster, i ngjash\u00ebm me proceset e zhvillimit t\u00eb aplikacioneve t\u00eb zakonshme.<\/p>\n<p>Shtesat p\u00ebr Addon-operator n\u00eb format module (Helm-chart + hooks) mund t\u00eb publikohen p\u00ebr p\u00ebrdorim t\u00eb gjer\u00eb. Ne, kompania Flant, planifikojm\u00eb t\u00eb publikojm\u00eb gjat\u00eb ver\u00ebs arritjet tona n\u00eb form\u00ebn e k\u00ebtyre shtesave. Bashkohuni me zhvillimin n\u00eb GitHub (<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\/shell-operator\">shell-operator<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\/addon-operator\"><b>addon-operator<\/b><\/a><\/noindex>), provoni t\u00eb krijoni shtes\u00ebn tuaj mbi <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\/addon-operator\/tree\/master\/examples\">shembujt<\/a><\/noindex> dhe <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\/addon-operator\/blob\/master\/README.md\">dokumentacion<\/a><\/noindex>, prisni lajme n\u00eb Habr\u00eb dhe n\u00eb kanalin ton\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/c\/%D0%A4%D0%BB%D0%B0%D0%BD%D1%82\">n\u00eb YouTube<\/a><\/noindex>!<\/p>\n<h2>P.S.<\/h2>\n<p>\nLexoni gjithashtu n\u00eb blogun ton\u00eb:<\/p>\n<ul>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/449096\/\">Zgjerimi dhe plot\u00ebsimi i Kubernetes (p\u00ebrmbledhje dhe video e referatit)<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/447442\/\">Prezantim i shell-operator: krijimi i operator\u00ebve p\u00ebr Kubernetes tani \u00ebsht\u00eb edhe m\u00eb e leht\u00eb<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/455543\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u043b\u0435\u0434 \u0437\u0430 shell-operator \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0435\u0433\u043e \u0441\u0442\u0430\u0440\u0448\u0435\u0433\u043e \u0431\u0440\u0430\u0442\u0430 \u2014 addon-operator. \u042d\u0442\u043e Open Source-\u043f\u0440\u043e\u0435\u043a\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 Kubernetes \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u0432\u0430\u0442\u044c \u043e\u0431\u0449\u0438\u043c \u0441\u043b\u043e\u0432\u043e\u043c \u2014 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u0417\u0430\u0447\u0435\u043c \u0432\u043e\u043e\u0431\u0449\u0435 \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f? \u041d\u0435 \u0441\u0435\u043a\u0440\u0435\u0442, \u0447\u0442\u043e Kubernetes \u044d\u0442\u043e \u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u0432\u0441\u0451-\u0432-\u043e\u0434\u043d\u043e\u043c, \u0438 \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u00ab\u0432\u0437\u0440\u043e\u0441\u043b\u043e\u0433\u043e\u00bb \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u044f\u0442\u0441\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. Addon-operator \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35226","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u043b\u0435\u0434 \u0437\u0430 shell-operator \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0435\u0433\u043e \u0441\u0442\u0430\u0440\u0448\u0435\u0433\u043e \u0431\u0440\u0430\u0442\u0430 \u2014 addon-operator. \u042d\u0442\u043e Open Source-\u043f\u0440\u043e\u0435\u043a\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 Kubernetes \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u0432\u0430\u0442\u044c \u043e\u0431\u0449\u0438\u043c \u0441\u043b\u043e\u0432\u043e\u043c \u2014 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u0417\u0430\u0447\u0435\u043c \u0432\u043e\u043e\u0431\u0449\u0435 \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f? \u041d\u0435 \u0441\u0435\u043a\u0440\u0435\u0442, \u0447\u0442\u043e Kubernetes \u044d\u0442\u043e \u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u0432\u0441\u0451-\u0432-\u043e\u0434\u043d\u043e\u043c, \u0438 \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u00ab\u0432\u0437\u0440\u043e\u0441\u043b\u043e\u0433\u043e\u00bb \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u044f\u0442\u0441\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. Addon-operator \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \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\/gotovit-kubernetes-klaster-prosto-i-udobno-anonsiruem-addon-operator\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\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\udd47\u0413\u043e\u0442\u043e\u0432\u0438\u0442\u044c Kubernetes-\u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u043f\u0440\u043e\u0441\u0442\u043e \u0438 \u0443\u0434\u043e\u0431\u043d\u043e? \u0410\u043d\u043e\u043d\u0441\u0438\u0440\u0443\u0435\u043c addon-operator | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u043b\u0435\u0434 \u0437\u0430 shell-operator \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0435\u0433\u043e \u0441\u0442\u0430\u0440\u0448\u0435\u0433\u043e \u0431\u0440\u0430\u0442\u0430 \u2014 addon-operator. \u042d\u0442\u043e Open Source-\u043f\u0440\u043e\u0435\u043a\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 Kubernetes \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u0432\u0430\u0442\u044c \u043e\u0431\u0449\u0438\u043c \u0441\u043b\u043e\u0432\u043e\u043c \u2014 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u0417\u0430\u0447\u0435\u043c \u0432\u043e\u043e\u0431\u0449\u0435 \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f? \u041d\u0435 \u0441\u0435\u043a\u0440\u0435\u0442, \u0447\u0442\u043e Kubernetes \u044d\u0442\u043e \u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u0432\u0441\u0451-\u0432-\u043e\u0434\u043d\u043e\u043c, \u0438 \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u00ab\u0432\u0437\u0440\u043e\u0441\u043b\u043e\u0433\u043e\u00bb \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u044f\u0442\u0441\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. Addon-operator \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/gotovit-kubernetes-klaster-prosto-i-udobno-anonsiruem-addon-operator\" \/>\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:03:05+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:03:05+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\udd47T\u00eb krijosh nj\u00eb klaster Kubernetes \u00ebsht\u00eb e thjesht\u00eb dhe e rehatshme? Njoftojm\u00eb p\u00ebr addon-operator | ProHoster","description":"Pas shell-operator, ne paraqesim v\u00ebllain e tij m\u00eb t\u00eb madh \u2014 addon-operator. Ky \u00ebsht\u00eb nj\u00eb projekt Open Source, i cili p\u00ebrdoret p\u00ebr instalimin e komponent\u00ebve sistemor\u00eb n\u00eb klasterin Kubernetes, t\u00eb cil\u00ebt mund t\u00eb quhen me nj\u00eb fjal\u00eb t\u00eb p\u00ebrbashk\u00ebt \u2014 shtesa. Pse jan\u00eb t\u00eb nevojshme disa shtesa? Nuk \u00ebsht\u00eb sekret, q\u00eb Kubernetes nuk \u00ebsht\u00eb nj\u00eb produkt i gatsh\u00ebm t\u00eb gjitha-n\u00eb-nj\u00eb, dhe p\u00ebr nd\u00ebrtimin e nj\u00eb klasteri \"t\u00eb rritur\" do t\u00eb nevojiten shtesa t\u00eb ndryshme. Addon-operator do t\u00eb ndihmoj\u00eb n\u00eb instalimin, konfigurimin dhe","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/gotovit-kubernetes-klaster-prosto-i-udobno-anonsiruem-addon-operator","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\udd47\u0413\u043e\u0442\u043e\u0432\u0438\u0442\u044c Kubernetes-\u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u043f\u0440\u043e\u0441\u0442\u043e \u0438 \u0443\u0434\u043e\u0431\u043d\u043e? \u0410\u043d\u043e\u043d\u0441\u0438\u0440\u0443\u0435\u043c addon-operator | ProHoster","og:description":"\u0412\u0441\u043b\u0435\u0434 \u0437\u0430 shell-operator \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0435\u0433\u043e \u0441\u0442\u0430\u0440\u0448\u0435\u0433\u043e \u0431\u0440\u0430\u0442\u0430 \u2014 addon-operator. \u042d\u0442\u043e Open Source-\u043f\u0440\u043e\u0435\u043a\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 Kubernetes \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u0432\u0430\u0442\u044c \u043e\u0431\u0449\u0438\u043c \u0441\u043b\u043e\u0432\u043e\u043c \u2014 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u0417\u0430\u0447\u0435\u043c \u0432\u043e\u043e\u0431\u0449\u0435 \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f? \u041d\u0435 \u0441\u0435\u043a\u0440\u0435\u0442, \u0447\u0442\u043e Kubernetes \u044d\u0442\u043e \u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u0432\u0441\u0451-\u0432-\u043e\u0434\u043d\u043e\u043c, \u0438 \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u00ab\u0432\u0437\u0440\u043e\u0441\u043b\u043e\u0433\u043e\u00bb \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u044f\u0442\u0441\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. Addon-operator \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/gotovit-kubernetes-klaster-prosto-i-udobno-anonsiruem-addon-operator","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:03:05+00:00","article:modified_time":"2019-10-31T19:03:05+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35226","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-21 22:25:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:07:29","updated":"2026-01-21 22:25:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/35226","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=35226"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/35226\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=35226"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=35226"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=35226"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}