{"id":38648,"date":"2019-10-31T22:25:04","date_gmt":"2019-10-31T19:25:04","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kratkoe-vvedenie-v-kustomize\/"},"modified":"2019-10-31T22:25:04","modified_gmt":"2019-10-31T19:25:04","slug":"kratkoe-vvedenie-v-kustomize","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/kratkoe-vvedenie-v-kustomize","title":{"rendered":"Nj\u00eb hyrje e shkurt\u00ebr n\u00eb Kustomize","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i><b>Sh\u00ebn. p\u00ebrk.<\/b>: Artikulli \u00ebsht\u00eb shkruar nga Scott Lowe \u2014 nj\u00eb inxhinier me p\u00ebrvoj\u00eb t\u00eb madhe n\u00eb IT, autor ose bashkautor i shtat\u00eb librave t\u00eb botuar (shumica nga VMware vSphere). Aktualisht ai punon n\u00eb filialin e VMware \u2014 Heptio (e bler\u00eb n\u00eb vitin 2016), i specializuar n\u00eb computacionin n\u00eb re dhe Kubernetes. Teksti sh\u00ebrben si nj\u00eb hyrje e p\u00ebrmbledhur dhe e leht\u00eb p\u00ebr t'u kuptuar p\u00ebr menaxhimin e konfigurimeve p\u00ebr Kubernetes duke p\u00ebrdorur teknologjin\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/kustomize.io\/\">Kustomize<\/a><\/noindex>, e cila s\u00eb fundmi u b\u00eb pjes\u00eb e K8s.<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Nj\u00eb hyrje e shkurt\u00ebr n\u00eb Kustomize\" src=\"\/wp-content\/uploads\/2019\/10\/099d2281c06d7a294532a816bb6aab21.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKustomize \u00ebsht\u00eb nj\u00eb mjet q\u00eb lejon p\u00ebrdoruesit \"t\u00eb personalizojn\u00eb skedar\u00ebt YAML t\u00eb thjesht\u00eb dhe t\u00eb lir\u00eb nga shabllon\u00ebt p\u00ebr q\u00ebllime t\u00eb ndryshme, duke l\u00ebn\u00eb origjinalin YAML t\u00eb paprekur dhe t\u00eb p\u00ebrdorsh\u00ebm\" (p\u00ebrshkrimi i huazuar drejtp\u00ebrdrejt nga <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes-sigs\/kustomize\">repozitari kustomize n\u00eb GitHub<\/a><\/noindex>). Kustomize mund t\u00eb ekzekutohet drejtp\u00ebrdrejt ose, duke filluar nga Kubernetes 1.14, t\u00eb p\u00ebrdoret <code>kubectl -k<\/code> p\u00ebr t\u00eb aksesuar funksionet e tij (nd\u00ebrsa n\u00eb Kubernetes 1.15, binari i ve\u00e7ant\u00eb \u00ebsht\u00eb m\u00eb i ri se funksionalitetet e nd\u00ebrtuara n\u00eb kubectl). <i>(<b>Sh\u00ebn. p\u00ebrk.<\/b>: Me lan\u00e7imin e fundit <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/467477\/\">Kubernetes 1.16<\/a><\/noindex> kustomize <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/1177\">mb\u00ebshtetjes<\/a><\/noindex> p\u00ebrve\u00e7 k\u00ebsaj n\u00eb utilitarin kubeadm.)<\/i> N\u00eb k\u00ebt\u00eb publikim, dua t\u00eb prezantoj lexuesit me bazat e kustomize.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>N\u00eb form\u00ebn e saj m\u00eb t\u00eb thjesht\u00eb\/p\u00ebrdorim, kustomize \u00ebsht\u00eb thjesht nj\u00eb grup burimesh (skedar\u00ebsh YAML, q\u00eb p\u00ebrcaktojn\u00eb objektet Kubernetes: Deployments, Services, etj.) plus nj\u00eb list\u00eb udh\u00ebzimesh p\u00ebr ndryshimet q\u00eb duhet t\u00eb b\u00ebhen n\u00eb k\u00ebto burime. Ashtu si make p\u00ebrdor nj\u00eb set udh\u00ebzimesh t\u00eb p\u00ebrmbajtura n\u00eb <code>Makefile<\/code>, nd\u00ebrsa Docker ndryn nj\u00eb kontejner n\u00eb baz\u00eb t\u00eb udh\u00ebzimeve nga <code>Dockerfile<\/code>, kustomize p\u00ebrdor <code>kustomization.yaml<\/code> p\u00ebr t\u00eb ruajtur udh\u00ebzimet p\u00ebr ndryshimet q\u00eb p\u00ebrdoruesi d\u00ebshiron t\u00eb b\u00ebj\u00eb n\u00eb grupin e burimeve.<\/p>\n<p>Ja nj\u00eb shembull i skedarit <code>kustomization.yaml<\/code>:<\/p>\n<pre><code class=\"plaintext\">resources:\n- deployment.yaml\n- service.yaml\nnamePrefix: dev-\nnamespace: development\ncommonLabels:\n  environment: development<\/code><\/pre>\n<p>\nNuk do t\u00eb mundohem t\u00eb flas p\u00ebr t\u00eb gjitha fushat e mundshme n\u00eb skedarin <code>kustomization.yaml<\/code> (p\u00ebr k\u00ebt\u00eb \u00ebsht\u00eb shkruar mir\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes-sigs\/kustomize\/blob\/master\/docs\/fields.md\">k\u00ebtu<\/a><\/noindex>), por do t\u00eb jap nj\u00eb shpjegim t\u00eb shkurt\u00ebr t\u00eb shembullit t\u00eb ve\u00e7ant\u00eb:<\/p>\n<ul>\n<li> Fusha <code>resources<\/code> tregon se (cilat burime) do t\u00eb ndryshoj\u00eb kustomize. N\u00eb k\u00ebt\u00eb rast, ai do t\u00eb k\u00ebrkoj\u00eb burimet n\u00eb skedaret <code>deployment.yaml<\/code> dhe <code>service.yaml<\/code> n\u00eb katalogun e tij (n\u00eb rast nevoje, mund t\u00eb specifikohen rrug\u00eb t\u00eb plota ose relative).<\/li>\n<li> Fusha <code>namePrefix<\/code> kustomize k\u00ebrkon q\u00eb t\u00eb shtoj\u00eb nj\u00eb prefiks t\u00eb caktuar (n\u00eb k\u00ebt\u00eb rast \u2014 <code>dev-<\/code>) n\u00eb atributin <code>emri<\/code> e t\u00eb gjitha burimeve t\u00eb p\u00ebrcaktuara n\u00eb fush\u00ebn <code>resources<\/code>. K\u00ebshtu, n\u00ebse n\u00eb Deployment ka <code>emri<\/code> me vler\u00eb <code>nginx-deployment<\/code>, kustomize do ta b\u00ebj\u00eb at\u00eb <code>dev-nginx-deployment<\/code>.<\/li>\n<li> Fusha <code>namespace<\/code> kustomize k\u00ebrkon q\u00eb t\u00eb shtoj\u00eb nj\u00eb hap\u00ebsir\u00eb emri t\u00eb caktuar p\u00ebr t\u00eb gjitha resurset. N\u00eb k\u00ebt\u00eb rast, Deployment dhe Sh\u00ebrbimi do t\u00eb shkojn\u00eb n\u00eb hap\u00ebsir\u00ebn emri <code>zhvillim<\/code>.<\/li>\n<li> S\u00eb fundi, fusha <code>commonLabels<\/code> p\u00ebrmban nj\u00eb grup etiketash q\u00eb do t\u00eb shtohet n\u00eb t\u00eb gjitha burimet. N\u00eb shembullin ton\u00eb, kustomize do t'i jap\u00eb burimeve nj\u00eb etiket\u00eb me emrin <code>environment<\/code> dhe vler\u00ebn <code>zhvillim<\/code>.<\/li>\n<\/ul>\n<p>\nN\u00ebse p\u00ebrdoruesi kryen <code>kustomize build .<\/code> n\u00eb direktoriumin me skedarin <code>kustomization.yaml<\/code> dhe burimet e nevojshme (p.sh. skedar\u00ebt <code>deployment.yaml<\/code> dhe <code>service.yaml<\/code>), at\u00ebher\u00eb rezultati do t\u00eb jet\u00eb teksti me ndryshimet e shkruara n\u00eb <code>kustomization.yaml<\/code>.<\/p>\n<p><img decoding=\"async\" alt=\"Nj\u00eb hyrje e shkurt\u00ebr n\u00eb Kustomize\" src=\"\/wp-content\/uploads\/2019\/10\/f15c7ccb5f200c7e9b5a25142c364cb8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i><b>Sh\u00ebn. p\u00ebrk.<\/b>: Ilustrimi nga dokumentacioni i projektit p\u00ebr p\u00ebrdorimin \"e thjesht\u00eb\" t\u00eb kustomize<\/i><\/p>\n<p>T\u00eb dh\u00ebnat mund t\u00eb redirektohen, n\u00ebse \u00ebsht\u00eb e nevojshme p\u00ebr t\u00eb dokumentuar ndryshimet:<\/p>\n<pre><code class=\"bash\">kustomize build . &gt; custom-config.yaml<\/code><\/pre>\n<p>\nT\u00eb dh\u00ebnat e daljes jan\u00eb t\u00eb ndjeshme (me t\u00eb nj\u00ebjtat t\u00eb dh\u00ebna n\u00eb hyrje do t\u00eb merren t\u00eb nj\u00ebjtat rezultate n\u00eb dalje), prandaj nuk \u00ebsht\u00eb e nevojshme ta ruani rezultatin n\u00eb skedar. N\u00eb vend t\u00eb k\u00ebsaj, mund ta kaloni menj\u00ebher\u00eb n\u00eb komand\u00ebn tjet\u00ebr:<\/p>\n<pre><code class=\"bash\">kustomize build . | kubectl apply -f -<\/code><\/pre>\n<p>\nQasja n\u00eb funksionet e kustomize gjithashtu mund t\u00eb arrihet p\u00ebrmes <code>kubectl -k<\/code> (duke nga versioni 1.14 t\u00eb Kubernetes). Megjithat\u00eb, mbani n\u00eb mend se paketa e ve\u00e7ant\u00eb kustomize azhurnohet m\u00eb shpejt sesa ajo e integruar n\u00eb kubectl (t\u00eb pakt\u00ebn, k\u00ebshtu ndodhi me l\u00ebshimin e Kubernetes 1.15).<\/p>\n<p>Lexuesit mund t\u00eb pyesin: \"P\u00ebrse na nevojiten t\u00eb gjitha k\u00ebto komplike, n\u00ebse mund t\u00eb redaktojm\u00eb skedar\u00ebt direkt?\" Nj\u00eb pyetje e shk\u00eblqyer. N\u00eb shembullin ton\u00eb, n\u00eb t\u00eb v\u00ebrtet\u00eb <i>mund t\u00eb<\/i> t\u00eb modifikojm\u00eb skedar\u00ebt <code>deployment.yaml<\/code> dhe <code>service.yaml<\/code> direkt, por \u00e7far\u00eb ndodh n\u00ebse ato jan\u00eb nj\u00eb fork i projektit t\u00eb dikujt? Ndryshimi i drejtp\u00ebrdrejt\u00eb i skedar\u00ebve e shtyn (n\u00ebse nuk e b\u00ebn t\u00eb pamundur) rebase fork-un kur b\u00ebhen ndryshime n\u00eb burim. P\u00ebrdorimi i kustomize lejon centralizimin e k\u00ebtyre ndryshimeve n\u00eb nj\u00eb skedar <code>kustomization.yaml<\/code>, duke l\u00ebn\u00eb skedar\u00ebt origjinal\u00eb t\u00eb paprekur dhe, k\u00ebshtu, duke leht\u00ebsuar n\u00ebse \u00ebsht\u00eb e nevojshme rebase-in e skedar\u00ebve origjinal\u00eb.<\/p>\n<p>P\u00ebrfitimet e kustomize b\u00ebhen evidente n\u00eb raste m\u00eb komplekse p\u00ebrdorimi. N\u00eb shembullin e m\u00ebsip\u00ebrm <code>kustomization.yaml<\/code> dhe burimet ndodhen n\u00eb t\u00eb nj\u00ebjt\u00ebn direktori. Megjithat\u00eb, kustomize mb\u00ebshtet skenar\u00eb p\u00ebrdorimi ku ka nj\u00eb konfiguracion baz\u00eb dhe shum\u00eb variacione t\u00eb saj, t\u00eb njohura gjithashtu si <i>overlays<\/i>. P\u00ebr shembull, nj\u00eb p\u00ebrdorues d\u00ebshiroi t\u00eb marr\u00eb Deployment dhe Service p\u00ebr nginx, t\u00eb cilat un\u00eb i p\u00ebrdora si shembull, dhe t\u00eb krijoj\u00eb versione zhvillimi, testimi dhe prodhimi (ose variante) t\u00eb atyre skedave. P\u00ebr k\u00ebt\u00eb, ata do t\u00eb ken\u00eb nevoj\u00eb p\u00ebr overlays p\u00ebrkat\u00ebse dhe, p\u00ebrkat\u00ebsisht, p\u00ebr resurset baz\u00eb.<\/p>\n<p>P\u00ebr t\u00eb ilustruar iden\u00eb e overlays dhe resurseve baz\u00eb <i>(resurset baz\u00eb)<\/i>, le t\u00eb supozojm\u00eb se drejtorit\u00eb kan\u00eb k\u00ebt\u00eb struktur\u00eb:<\/p>\n<pre><code class=\"plaintext\">- base\n  - deployment.yaml\n  - service.yaml\n  - kustomization.yaml\n- overlays\n  - dev\n    - kustomization.yaml\n  - staging\n    - kustomization.yaml\n  - prod\n    - kustomization.yaml<\/code><\/pre>\n<p>\nN\u00eb skedar <code>base\/kustomization.yaml<\/code> p\u00ebrdoruesit me an\u00eb t\u00eb fush\u00ebs <code>resources<\/code> thjesht shpallin resurset q\u00eb kustomize duhet t\u00eb p\u00ebrfshij\u00eb.<\/p>\n<p>N\u00eb secilin nga skedar\u00ebt <code>overlays\/{dev,staging,prod}\/kustomization.yaml<\/code> p\u00ebrdoruesit i referohen konfigurimit baz\u00eb n\u00eb fush\u00ebn <code>resources<\/code>, dhe m\u00eb pas tregojn\u00eb ndryshimet specifike p\u00ebr <i>k\u00ebto mjedise<\/i>. P\u00ebr shembull, skedari <code>overlays\/dev\/kustomization.yaml<\/code> mund t\u00eb duket si shembulli i dh\u00ebn\u00eb m\u00eb par\u00eb:<\/p>\n<pre><code class=\"plaintext\">resources:\n- ..\/..\/base\nnamePrefix: dev-\nnamespace: development\ncommonLabels:\n  environment: development<\/code><\/pre>\n<p>\nN\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb, skedari <code>overlays\/prod\/kustomization.yaml<\/code> mund t\u00eb jet\u00eb krejt ndryshe:<\/p>\n<pre><code class=\"plaintext\">resources:\n- ..\/..\/base\nnamePrefix: prod-\nnamespace: production\ncommonLabels:\n  environment: production\n  sre-team: blue<\/code><\/pre>\n<p>\nKur p\u00ebrdoruesi t\u00eb ekzekutoj\u00eb <code>kustomize build .<\/code> n\u00eb katalog <code>overlays\/dev<\/code>, kustomize do t\u00eb gjeneroj\u00eb variantin e zhvillimit. N\u00ebse ekzekutohet <code>kustomize build .<\/code> n\u00eb katalog <code>overlays\/prod<\/code> \u2014 do t\u00eb jet\u00eb nj\u00eb variant production. Dhe gjith\u00eb kjo \u2014 pa b\u00ebr\u00eb ndryshime n\u00eb origjinalet <i>(baz\u00eb)<\/i> dosjet, dhe gjith\u00eb kjo \u2014 n\u00eb m\u00ebnyr\u00eb deklarative dhe deterministe. Mund t\u00eb angazhoj konfigurimin baz\u00eb dhe drejtorit\u00eb overlay drejtp\u00ebrdrejt n\u00eb sistemin e menaxhimit t\u00eb versioneve, duke ditur se n\u00eb baz\u00eb t\u00eb k\u00ebtyre dosjeve, \u00e7doher\u00eb mund t\u00eb rinovohet konfigurimi i nevojsh\u00ebm.<\/p>\n<p><img decoding=\"async\" alt=\"Nj\u00eb hyrje e shkurt\u00ebr n\u00eb Kustomize\" src=\"\/wp-content\/uploads\/2019\/10\/959af6422f6ae4c1b8d755e9c5728d38.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i><b>Sh\u00ebn. p\u00ebrk.<\/b>: Ilustrimi nga dokumentacioni i projektit p\u00ebr p\u00ebrdorimin e overlays n\u00eb kustomizim<\/i><\/p>\n<p>Kustomize di <i>shum\u00eb m\u00eb<\/i> shum\u00eb m\u00eb tep\u00ebr se sa \u00ebsht\u00eb p\u00ebrshkruar n\u00eb k\u00ebt\u00eb artikull. Megjithat\u00eb, shpresoj se do t\u00eb sh\u00ebrbej\u00eb si nj\u00eb hyrje e mir\u00eb.<\/p>\n<h2>Burime shtes\u00eb<\/h2>\n<p>\nKa shum\u00eb artikuj t\u00eb mir\u00eb dhe publikime n\u00eb lidhje me kustomizimin. Ja disa q\u00eb i kam konsideruar ve\u00e7an\u00ebrisht t\u00eb dobishme:<\/p>\n<ul>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/levelup.gitconnected.com\/kubernetes-change-base-yaml-config-for-different-environments-prod-test-6224bfb6cdd6\">Ndryshoni konfigurimin baz\u00eb YAML p\u00ebr ambiente t\u00eb ndryshme prod\/test duke p\u00ebrdorur Kustomize<\/a><\/noindex>;<\/li>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.stack-labs.com\/code\/kustomize-101\/\">Kustomize \u2014 M\u00ebnyra e duhur p\u00ebr t\u00eb b\u00ebr\u00eb templating n\u00eb Kubernetes<\/a><\/noindex>;<\/li>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/manage-kubernetes-objects\/kustomization\/\">Menaxhimi Deklarativ i Objekteve Kubernetes Duke P\u00ebrdorur Kustomize<\/a><\/noindex>;<\/li>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/testingclouds.wordpress.com\/2018\/07\/20\/844\/\">Personalizimi i Grafikeve t\u00eb Helm Upstream me Kustomize<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\n<i><b>Sh\u00ebn. p\u00ebrk.<\/b>: Gjithashtu mund t\u00eb rekomandoj nj\u00eb bllok lidhjesh, t\u00eb publikuara si <noindex><a rel=\"nofollow\" href=\"https:\/\/kustomize.io\/#resources\">Burimet<\/a><\/noindex> n\u00eb faqen e utilitarit, dhe koleksionin e m\u00ebpassh\u00ebm t\u00eb videove me prezantimet e fundit mbi kustomizimin.<\/i><\/p>\n<p>N\u00ebse keni ndonj\u00eb pyetje ose propozim p\u00ebr p\u00ebrmir\u00ebsimin e k\u00ebtij materiali, un\u00eb gjithmon\u00eb jam i hapur p\u00ebr reagime. Mund t\u00eb kontaktoni me mua n\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/twitter.com\/scott_lowe\">Twitter<\/a><\/noindex> ose n\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.slack.com\/\">kanalin Slack t\u00eb Kubernetes<\/a><\/noindex>. Shijoni dhe modifikoni manifestet tuaja me an\u00eb t\u00eb kustomize!<\/p>\n<h2>P.S. nga p\u00ebrkthyesi<\/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\/462707\/\">Mjetet p\u00ebr zhvilluesit e aplikacioneve q\u00eb funksionojn\u00eb n\u00eb Kubernetes<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/445196\/\">Kubernetes 1.14: nj\u00eb p\u00ebrmbledhje e risive kryesore<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/468259\/\">Pes\u00eb p\u00ebrfundimet kryesore t\u00eb Helm Summit 2019 n\u00eb Amsterdam<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/420437\/\">Njohje praktike me menaxherin e paketave p\u00ebr Kubernetes - Helm.<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/469179\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: \u0421\u0442\u0430\u0442\u044c\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u043b Scott Lowe \u2014 \u0438\u043d\u0436\u0435\u043d\u0435\u0440 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0441\u0442\u0430\u0436\u0435\u043c \u0432 \u0418\u0422, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0430\u0432\u0442\u043e\u0440\u043e\u043c\/\u0441\u043e\u0430\u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u043c\u0438 \u043f\u0435\u0447\u0430\u0442\u043d\u044b\u0445 \u043a\u043d\u0438\u0433 (\u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u043e VMware vSphere). \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0435\u0451 \u0434\u043e\u0447\u0435\u0440\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 VMware \u2014 Heptio (\u043f\u043e\u0433\u043b\u043e\u0449\u0435\u043d\u0430 \u0432 2016 \u0433\u043e\u0434\u0443), \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044f\u0441\u044c \u043d\u0430 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u0445 \u0438 Kubernetes. \u0421\u0430\u043c \u0436\u0435 \u0442\u0435\u043a\u0441\u0442 \u0441\u043b\u0443\u0436\u0438\u0442 \u0451\u043c\u043a\u0438\u043c \u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u043c \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u043c\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28991,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-38648","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=\"\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: \u0421\u0442\u0430\u0442\u044c\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u043b Scott Lowe \u2014 \u0438\u043d\u0436\u0435\u043d\u0435\u0440 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0441\u0442\u0430\u0436\u0435\u043c \u0432 \u0418\u0422, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0430\u0432\u0442\u043e\u0440\u043e\u043c\/\u0441\u043e\u0430\u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u043c\u0438 \u043f\u0435\u0447\u0430\u0442\u043d\u044b\u0445 \u043a\u043d\u0438\u0433 (\u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u043e VMware vSphere). \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0435\u0451 \u0434\u043e\u0447\u0435\u0440\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 VMware \u2014 Heptio (\u043f\u043e\u0433\u043b\u043e\u0449\u0435\u043d\u0430 \u0432 2016 \u0433\u043e\u0434\u0443), \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044f\u0441\u044c \u043d\u0430 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u0445 \u0438 Kubernetes. \u0421\u0430\u043c \u0436\u0435 \u0442\u0435\u043a\u0441\u0442 \u0441\u043b\u0443\u0436\u0438\u0442 \u0451\u043c\u043a\u0438\u043c \u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u043c \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u043c\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\/kratkoe-vvedenie-v-kustomize\" \/>\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\udd47\u041a\u0440\u0430\u0442\u043a\u043e\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 Kustomize | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: \u0421\u0442\u0430\u0442\u044c\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u043b Scott Lowe \u2014 \u0438\u043d\u0436\u0435\u043d\u0435\u0440 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0441\u0442\u0430\u0436\u0435\u043c \u0432 \u0418\u0422, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0430\u0432\u0442\u043e\u0440\u043e\u043c\/\u0441\u043e\u0430\u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u043c\u0438 \u043f\u0435\u0447\u0430\u0442\u043d\u044b\u0445 \u043a\u043d\u0438\u0433 (\u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u043e VMware vSphere). \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0435\u0451 \u0434\u043e\u0447\u0435\u0440\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 VMware \u2014 Heptio (\u043f\u043e\u0433\u043b\u043e\u0449\u0435\u043d\u0430 \u0432 2016 \u0433\u043e\u0434\u0443), \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044f\u0441\u044c \u043d\u0430 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u0445 \u0438 Kubernetes. \u0421\u0430\u043c \u0436\u0435 \u0442\u0435\u043a\u0441\u0442 \u0441\u043b\u0443\u0436\u0438\u0442 \u0451\u043c\u043a\u0438\u043c \u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u043c \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u043c\u0438\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/kratkoe-vvedenie-v-kustomize\" \/>\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:25:04+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:25:04+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\udd47Nj\u00eb hyrje e shkurt\u00ebr n\u00eb Kustomize | ProHoster","description":"Sh\u00ebn. p\u00ebrkthimi: Artikulli \u00ebsht\u00eb shkruar nga Scott Lowe \u2014 nj\u00eb inxhinier me p\u00ebrvoj\u00eb t\u00eb madhe n\u00eb IT, autor ose bashkautor i shtat\u00eb librave t\u00eb botuar (kryesisht mbi VMware vSphere). Ai aktualisht punon n\u00eb organizat\u00ebn e saj binjake VMware \u2014 Heptio (e bler\u00eb n\u00eb vitin 2016), me specializim n\u00eb computing n\u00eb re dhe Kubernetes. Teksti sh\u00ebrben si nj\u00eb hyrje e p\u00ebrmbledhur dhe e leht\u00eb p\u00ebr tu kuptuar p\u00ebr menaxhimin e konfiguracioneve.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/kratkoe-vvedenie-v-kustomize","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\u041a\u0440\u0430\u0442\u043a\u043e\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 Kustomize | ProHoster","og:description":"\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: \u0421\u0442\u0430\u0442\u044c\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u043b Scott Lowe \u2014 \u0438\u043d\u0436\u0435\u043d\u0435\u0440 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0441\u0442\u0430\u0436\u0435\u043c \u0432 \u0418\u0422, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0430\u0432\u0442\u043e\u0440\u043e\u043c\/\u0441\u043e\u0430\u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u043c\u0438 \u043f\u0435\u0447\u0430\u0442\u043d\u044b\u0445 \u043a\u043d\u0438\u0433 (\u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u043e VMware vSphere). \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0435\u0451 \u0434\u043e\u0447\u0435\u0440\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 VMware \u2014 Heptio (\u043f\u043e\u0433\u043b\u043e\u0449\u0435\u043d\u0430 \u0432 2016 \u0433\u043e\u0434\u0443), \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044f\u0441\u044c \u043d\u0430 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u0445 \u0438 Kubernetes. \u0421\u0430\u043c \u0436\u0435 \u0442\u0435\u043a\u0441\u0442 \u0441\u043b\u0443\u0436\u0438\u0442 \u0451\u043c\u043a\u0438\u043c \u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u043c \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u043c\u0438","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/kratkoe-vvedenie-v-kustomize","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:25:04+00:00","article:modified_time":"2019-10-31T19:25:04+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"38648","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-23 22:54:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:05:23","updated":"2026-01-23 22:54:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/38648","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=38648"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/38648\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/28991"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=38648"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=38648"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=38648"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}