{"id":22651,"date":"2022-06-09T15:03:27","date_gmt":"2022-06-09T13:03:27","guid":{"rendered":"https:\/\/www.websupport.sk\/podpora\/?post_type=ht_kb&#038;p=22651"},"modified":"2022-06-14T14:28:17","modified_gmt":"2022-06-14T12:28:17","slug":"kubernetes-3-job-a-deployment","status":"publish","type":"ht_kb","link":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/","title":{"rendered":"Kubernetes \u2013 3. Job a deployment"},"content":{"rendered":"\n<p><a href=\"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-2-nody-pody-a-sluzby\/\">V druhom diele sme uk\u00e1zali, ako nain\u0161talova\u0165 Kubernetes Cluster<\/a> vo <a href=\"https:\/\/www.websupport.sk\/servery\/vdc\/\" target=\"_blank\" rel=\"noreferrer noopener\">Virtu\u00e1lnom d\u00e1tovom centre (VDC)<\/a>, ako spusti\u0165 Kubernetes Master Server a ako na\u0148 nasadi\u0165 sie\u0165 podov. N\u00e1sledne sme pripojili uzly k spusten\u00e9mu serveru, na ktor\u00e9 sme nasadili slu\u017ebu &#8211; konkr\u00e9tne webov\u00fd server Nginx.<\/p>\n\n\n\n<p>Doteraz sme pou\u017e\u00edvali iba predpripraven\u00e9 textov\u00e9 konfigura\u010dn\u00e9 s\u00fabory vo form\u00e1te YAML. V tomto diele si vytvor\u00edme vlastn\u00e9 jednoduch\u00e9 YAML s\u00fabory a postupne vysvetl\u00edme ich obsah.<\/p>\n\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-success\">Chcete si vytvori\u0165 vlastn\u00fd Kubernetes (K8s) klaster? Vysk\u00fa\u0161ajte si ho vo <a href=\"https:\/\/www.websupport.sk\/servery\/vdc\/\">Virtu\u00e1lnom d\u00e1tovom centre<\/a> od Websupportu.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ma\u017eeme nepotrebn\u00e9 slu\u017eby a nasadenia<\/h2>\n\n\n\n<p>Pred t\u00fdm, ako budeme pokra\u010dova\u0165, vyma\u017eeme nepotrebn\u00e9 slu\u017eby (services) a nasadenia (deployments), aby sme Kubernetes Cluster zbyto\u010dne neza\u0165azovali. Najsk\u00f4r vyp\u00ed\u0161eme zoznam spusten\u00fdch slu\u017eieb (prv\u00fd riadok) a akt\u00edvnych nasaden\u00ed (druh\u00fd riadok) na VPS <code>master<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get services<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get deployments<\/code><\/pre>\n\n\n\n<p>Potom nepotrebn\u00e9 slu\u017eby (prv\u00fd riadok) a nasadenia (druh\u00fd riadok) na VPS <code>master<\/code> zma\u017eeme:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl delete service &lt;nazov-nepotrebnej-sluzby&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl delete deployment &lt;nazov-nepotrebneho-nasadenia&gt;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Sp\u00fa\u0161\u0165ame jednoduch\u00fa \u00falohu (job)<\/h2>\n\n\n\n<p>Job (\u00faloha) sl\u00fa\u017ei na spustenie jednoduchej \u00falohy, pri\u010dom spust\u00ed jeden alebo viacero podov. Vykon\u00e1 sa konkr\u00e9tna \u00faloha (napr. pr\u00edkaz <code>sleep<\/code>) a pod sa ukon\u010d\u00ed. Po vymazan\u00ed jobu sa vyma\u017e\u00fa aj pody, ktor\u00e9 job spustil.<\/p>\n\n\n\n<p>Over\u00edme, \u017ee nie s\u00fa nasaden\u00e9 nepotrebn\u00e9 joby (prv\u00fd riadok) a\/alebo nepotrebn\u00e9 pody (druh\u00fd riadok):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get pods<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get jobs<\/code><\/pre>\n\n\n\n<p>Ak boli vyp\u00edsan\u00e9 pody alebo joby, ktor\u00e9 nie s\u00fa potrebn\u00e9, m\u00f4\u017eeme ich vymaza\u0165, aby nezaberali \u010das procesora (CPU) alebo miesto v opera\u010dnej pam\u00e4ti (RAM):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl delete pods &lt;nazov-nepotrebneho-podu&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl delete jobs &lt;nazov-nepotrebneho-jobu&gt;<\/code><\/pre>\n\n\n\n<p>Teraz je v\u0161etko pripraven\u00e9 na vytvorenie textov\u00e9ho konfigura\u010dn\u00e9ho s\u00faboru vo form\u00e1te YAML (prv\u00fd riadok), do ktor\u00e9ho zap\u00ed\u0161eme jednoduch\u00e9 nastavenia pre job (ostatn\u00e9 riadky):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano ~\/simple-job.yaml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>apiVersion: batch\/v1\nkind: Job\nmetadata:\n  name: simple-job\nspec:\n  template:\n    spec:\n      containers:\n        - name: job\n          image: busybox\n          args:\n            - \/bin\/sh\n            - -c\n            - date; echo 30-sekundov\u00fd sp\u00e1nok; sleep 30s; echo Koniec sp\u00e1nku; date\n      restartPolicy: Never\n<\/code><\/pre>\n\n\n\n<p>Vlo\u017e\u00edme skop\u00edrovan\u00fd obsah, ulo\u017e\u00edme pomocou kl\u00e1vesovej skratky <code>Ctrl + X<\/code> a n\u00e1sledne stla\u010den\u00edm kl\u00e1vesu <code>y<\/code> a potvrden\u00edm kl\u00e1vesom <code>Enter<\/code>.<\/p>\n\n\n\n<p>Textov\u00fd konfigura\u010dn\u00fd s\u00fabor vo form\u00e1te YAML (YAML Ain&#8217;t Markup Language &#8211; YAML nie je zna\u010dkovac\u00ed jazyk) obsahuje polo\u017eky r\u00f4znych \u00farovn\u00ed. Najvy\u0161\u0161iu \u00farove\u0148 maj\u00fa polo\u017eky, ktor\u00e9 s\u00fa \u00faplne v\u013eavo (tu napr. <code>apiVersion<\/code> alebo <code>kind<\/code>) a podraden\u00e9 s\u00fa polo\u017eky, ktor\u00e9 s\u00fa odsaden\u00e9 z\u013eava v\u017edy o 2 medzery (napr. podraden\u00e1 vo\u010di polo\u017eke <code>metadata<\/code> je polo\u017eka <code>name<\/code>).<\/p>\n\n\n\n<p>Ak potrebujeme odk\u00e1za\u0165 na podraden\u00fa polo\u017eku (napr. <code>args<\/code>), jednotliv\u00e9 polo\u017eky od seba oddel\u00edme bodkou:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>spec.template.spec.containers.args<\/code><\/pre>\n\n\n\n<p>Ka\u017ed\u00fd konfigura\u010dn\u00fd s\u00fabor objektu v r\u00e1mci syst\u00e9mu Kubernetes za\u010d\u00edna prv\u00fdm riadkom, ktor\u00fd \u0161pecifikuje n\u00e1zov a verziu pou\u017eit\u00e9ho API (tu <code>apiVersion: batch\/v1<\/code>). Nasleduje druh objektu (tu <code>kind: Job<\/code>), meta\u00fadaje (tu <code>metadata<\/code> &gt;&nbsp; <code>name<\/code>) a hlavn\u00e1 \u0161pecifik\u00e1cia s uveden\u00edm \u0161abl\u00f3ny kontajnera (<code>template.containers<\/code>) a jej n\u00e1zvu (<code>name<\/code>), obrazu (<code>image<\/code>) a argumentov (<code>args<\/code>).<\/p>\n\n\n\n<p>Vy\u0161\u0161ie op\u00edsan\u00fd job teda spust\u00ed pod s n\u00e1zvom <code>simple-job<\/code>. Pod bude obsahova\u0165 jeden kontajner s n\u00e1zvom <code>job<\/code>, pri\u010dom kontajner sa vytvor\u00ed z obrazu s n\u00e1zvom <code>busybox<\/code>. V kontajneri sa spust\u00ed sada jednoduch\u00fdch pr\u00edkazov (<code>date; echo 30-sekundov\u00fd sp\u00e1nok; sleep 30s; echo Koniec sp\u00e1nku; date<\/code>). No a automatick\u00fd re\u0161tart podu je vypnut\u00fd (<code>restartPolicy: Never<\/code>).<\/p>\n\n\n\n<p>Takto nasad\u00edme job z vy\u0161\u0161ie vytvoren\u00e9ho konfigura\u010dn\u00e9ho s\u00faboru:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl create -f ~\/simple-job.yaml<\/code><\/pre>\n\n\n\n<p>Job aj pod boli naozaj vytvoren\u00e9, pri\u010dom po uplynut\u00ed 30 sek\u00fand sa stav podu (st\u013apec STATUS) zmen\u00ed na <em>Completed<\/em> a v st\u013apci COMPLETIONS jobu bude uveden\u00e9 <em>1\/1<\/em>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get pods<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get jobs<\/code><\/pre>\n\n\n\n<p>Job sa s\u00edce ukon\u010dil (<em>Completed<\/em>), ale st\u00e1le je spusten\u00fd, tak\u017ee ho teraz vyma\u017eeme podobne, ako sme ho spustili, iba\u017ee namiesto mo\u017enosti <code>create<\/code> pou\u017eijeme <code>delete<\/code> (prv\u00fd riadok). N\u00e1sledne over\u00edme, \u010di job a pod naozaj boli vymazan\u00e9 (druh\u00fd a tret\u00ed riadok):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl delete -f ~\/simple-job.yaml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get pods<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get jobs<\/code><\/pre>\n\n\n\n<p>Ak potrebujeme, aby sa job ukon\u010dil po konkr\u00e9tnom \u010dase, dopln\u00edme do YAML s\u00faboru (prv\u00fd riadok) \u0161pecifik\u00e1ciu <code>spec.activeDeadlineSeconds<\/code> takto (ostatn\u00e9 riadky):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano ~\/simple-job-time-limit.yaml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>apiVersion: batch\/v1\nkind: Job\nmetadata:\n  name: simple-job-time-limit\nspec:\n  activeDeadlineSeconds: 20\n  template:\n    spec:\n      containers:\n        - name: job-time-limit\n          image: busybox\n          args:\n            - \/bin\/sh\n            - -c\n            - date; echo 30-sekundov\u00fd sp\u00e1nok; sleep 30s; echo Koniec sp\u00e1nku; date\n      restartPolicy: Never\n<\/code><\/pre>\n\n\n\n<p>Vlo\u017e\u00edme skop\u00edrovan\u00fd obsah, ulo\u017e\u00edme pomocou kl\u00e1vesovej skratky <code>Ctrl + X<\/code> a n\u00e1sledne stla\u010den\u00edm kl\u00e1vesu <code>y<\/code> a potvrden\u00edm kl\u00e1vesom <code>Enter<\/code>.<\/p>\n\n\n\n<p>Nasad\u00edme job z vy\u0161\u0161ie vytvoren\u00e9ho konfigura\u010dn\u00e9ho s\u00faboru (prv\u00fd riadok) a skontrolujeme, \u010di sa job a pod naozaj vytvorili (druh\u00fd a tret\u00ed riadok):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl create -f ~\/simple-job-time-limit.yaml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get pods<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get jobs<\/code><\/pre>\n\n\n\n<p>S\u00edce sme zadali 30-sekundov\u00fd sp\u00e1nok, ale ten sa nestihol zrealizova\u0165, preto\u017ee sme ur\u010dili \u010dasov\u00fd limit na 20 sek\u00fand, a tak sa po 20 sekund\u00e1ch job ukon\u010dil pred\u010dasne. Zist\u00edme to na konci roz\u0161\u00edren\u00e9ho v\u00fdpisu jobu:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get job simple-job-time-limit -o yaml<\/code><\/pre>\n\n\n\n<p>N\u00e1sledne job vyma\u017eeme:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl delete -f ~\/simple-job-time-limit.yaml<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Sp\u00fa\u0161\u0165ame nasadenie (deployment)<\/h2>\n\n\n\n<p>Nasadenie (deployment) vytvor\u00ed viacero rovnak\u00fdch podov. Nasadenie teda sp\u00fa\u0161\u0165a viacero k\u00f3pi\u00ed rovnakej aplik\u00e1cie a v pr\u00edpade p\u00e1du jednej k\u00f3pie ju automaticky nahrad\u00ed. Takto zabezpe\u010d\u00edme neust\u00e1lu funk\u010dnos\u0165 jednej alebo viacer\u00fdch k\u00f3pi\u00ed aplik\u00e1cie.<\/p>\n\n\n\n<p>Vytvor\u00edme textov\u00fd konfigura\u010dn\u00fd s\u00fabor vo form\u00e1te YAML (prv\u00fd riadok), do ktor\u00e9ho zap\u00ed\u0161eme jednoduch\u00e9 nastavenia pre nasadenie (ostatn\u00e9 riadky):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano ~\/deployment-httpd-frontend.yaml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>apiVersion: apps\/v1\nkind: Deployment\nmetadata:\n  labels:\n    app: httpd-frontend\n  name: httpd-frontend\nspec:\n  replicas: 3\n  selector:\n    matchLabels:\n      app: httpd-frontend\n  template:\n    metadata:\n      labels:\n        app: httpd-frontend\n    spec:\n      containers:\n      - image: httpd:2.4-alpine\n        name: httpd\n<\/code><\/pre>\n\n\n\n<p>Vlo\u017e\u00edme skop\u00edrovan\u00fd obsah, ulo\u017e\u00edme pomocou kl\u00e1vesovej skratky <code>Ctrl + X<\/code> a n\u00e1sledne stla\u010den\u00edm kl\u00e1vesu <code>y<\/code> a potvrden\u00edm kl\u00e1vesom <code>Enter<\/code>.<\/p>\n\n\n\n<p>Po spusten\u00ed nasadenia z vy\u0161\u0161ie uveden\u00e9ho YAML s\u00faboru sa vytvor\u00ed nasadenie s n\u00e1zvom (<code>metadata.name<\/code>) a ozna\u010den\u00edm (<code>metadata.labels<\/code>) <code>httpd-frontend<\/code>. Nasadenie spust\u00ed 3 pody (<code>spec.replicas<\/code>), pri\u010dom ka\u017ed\u00fd pod bude ozna\u010den\u00fd \u0161t\u00edtkom (label) <code>httpd-frontend<\/code> (<code>spec.template.metadata.labels<\/code>) a bude obsahova\u0165 kontajner s opera\u010dn\u00fdm syst\u00e9mom Alpine Linux vo verzii 2.4 so spusten\u00fdm http serverom (<code>spec.template.spec.containers.image<\/code>).&nbsp; No a <code>spec.selector.matchLabels<\/code> ur\u010duje, \u017ee nasadenie bude s podmi komunikova\u0165 cez \u0161t\u00edtok (label) <code>httpd-frontend<\/code>.<\/p>\n\n\n\n<p>Spust\u00edme nasadenie z vy\u0161\u0161ie vytvoren\u00e9ho konfigura\u010dn\u00e9ho s\u00faboru (prv\u00fd riadok) a skontrolujeme, \u010di sa nasadenie naozaj vytvorilo (druh\u00fd riadok):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl create -f ~\/deployment-httpd-frontend.yaml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get deployments | grep httpd-frontend<\/code><\/pre>\n\n\n\n<p>Nasadenie (deployment) vytvorilo ovl\u00e1da\u010d (controller) <code>replicaset<\/code> (s\u00fabor k\u00f3pi\u00ed) pod ozna\u010den\u00edm <code>httpd-frontend<\/code>, ktor\u00fd neust\u00e1le kontroluje, \u010di je spusten\u00fd po\u017eadovan\u00fd po\u010det podov. Zabezpe\u010duje tak neust\u00e1lu funk\u010dnos\u0165 v\u0161etk\u00fdch k\u00f3pi\u00ed nasadenej aplik\u00e1cie. Takto over\u00edme, \u010di je n\u00e1\u0161 ovl\u00e1da\u010d <code>replicaset<\/code> spusten\u00fd:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get replicasets | grep httpd-frontend<\/code><\/pre>\n\n\n\n<p>Tie\u017e over\u00edme, \u010di je spusten\u00fd po\u017eadovan\u00fd po\u010det podov:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get pods | grep httpd-frontend<\/code><\/pre>\n\n\n\n<p>Ovl\u00e1da\u010d aj pody s\u00fa spusten\u00e9. Teraz m\u00f4\u017eeme overi\u0165, \u010di sa v pr\u00edpade vymazania jedn\u00e9ho podu automaticky vytvor\u00ed n\u00e1hradn\u00fd. Vyma\u017eeme teda jeden zo spusten\u00fdch podov (prv\u00fd riadok) a n\u00e1sledne skontrolujeme, \u010di sa vytvoril n\u00e1hradn\u00fd pod (druh\u00fd riadok) namiesto vymazan\u00e9ho:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl delete pod httpd-frontend-5ddf995bdf-q7cgk<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get pods | grep httpd-frontend<\/code><\/pre>\n\n\n\n<p>Zistili sme, \u017ee vymazan\u00fd pod neexistuje a vytvoril sa nov\u00fd pod, ktor\u00fd nahradil ten vymazan\u00fd. Orchestr\u00e1cia podov teda funguje spr\u00e1vne.<\/p>\n\n\n\n<p>Vymaza\u0165 ale m\u00f4\u017eeme aj cel\u00fd <code>replicaset<\/code> (\u010di\u017ee v\u0161etky pody) a nasadenie (deployment) vytvor\u00ed nov\u00fd. Zist\u00edme n\u00e1zov replicasetu (prv\u00fd riadok), vyma\u017eeme ho (druh\u00fd riadok) a skontrolujeme, \u010di sa vytvoril nov\u00fd (tret\u00ed riadok):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get replicasets | grep httpd-frontend<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl delete replicaset httpd-frontend-5ddf995bdf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl get replicasets | grep httpd-frontend<\/code><\/pre>\n\n\n\n<p>Zistili sme, \u017ee replicaset bol vymazan\u00fd a vytvoril sa nov\u00fd replicaset (s nov\u00fdm podmi), ktor\u00fd nahradil ten vymazan\u00fd. Mana\u017ement podov teda funguje spr\u00e1vne.<\/p>\n\n\n\n<p>Podrobn\u00e9 inform\u00e1cie o v\u0161etk\u00fdch podoch, ktor\u00e9 spustilo nasadenie (deployment), zist\u00edme pomocou \u0161t\u00edtku <code>httpd-frontend<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl describe pod httpd-frontend<\/code><\/pre>\n\n\n\n<p>Po vymazan\u00ed cel\u00e9ho nasadenia (deployment) sa u\u017e pody nespustia a v\u0161etky k\u00f3pie aplik\u00e1cie sa teda ukon\u010dia:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kubectl delete deployment httpd-frontend<\/code><\/pre>\n\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-info\">H\u013ead\u00e1te mana\u017eovan\u00fd Kubernetes? Vyu\u017eite slu\u017eby na\u0161ich sk\u00fasen\u00fdch profesion\u00e1lov na cloud native &#8211; radi v\u00e1m <a href=\"https:\/\/www.websupport.sk\/kontakt\/\" target=\"_blank\" rel=\"noreferrer noopener\">priprav\u00edme rie\u0161nie na mieru<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Zhrnutie<\/h2>\n\n\n\n<p>V tre\u0165om diele sme spustili jednoduch\u00fa \u00falohu (job) s jednym podom bez \u010dasov\u00e9ho obmedzenia, a tie\u017e s \u010dasov\u00fdm obmedzen\u00edm. Viacero podov sme spustili pomocou nasadenia (deployment) a overili sme jednu zo z\u00e1kladn\u00fdch funkci\u00ed syst\u00e9mu Kubernetes: r\u00fdchle spustenie podov, ktor\u00e9 nahradia vypadnut\u00e9 pody.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>V druhom diele sme uk\u00e1zali, ako nain\u0161talova\u0165 Kubernetes Cluster vo Virtu\u00e1lnom d\u00e1tovom centre (VDC), ako spusti\u0165 Kubernetes Master Server a ako na\u0148 nasadi\u0165 sie\u0165 podov. N\u00e1sledne sme pripojili uzly k spusten\u00e9mu serveru, na ktor\u00e9 sme nasadili slu\u017ebu &#8211; konkr\u00e9tne webov\u00fd server Nginx. Doteraz sme pou\u017e\u00edvali iba predpripraven\u00e9 textov\u00e9 konfigura\u010dn\u00e9 s\u00fabory&#8230;<\/p>\n","protected":false},"author":3,"template":"","format":"standard","meta":{"footnotes":""},"ht-kb-category":[468],"ht-kb-tag":[336,474,396,471,330,339,381,198,192],"class_list":["post-22651","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-kubernetes","ht_kb_tag-cli","ht_kb_tag-cloud-native","ht_kb_tag-kontajnery","ht_kb_tag-kubernetes","ht_kb_tag-linux","ht_kb_tag-open-source","ht_kb_tag-server","ht_kb_tag-ubuntu","ht_kb_tag-vdc"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Kubernetes \u2013 3. Job a deployment - Websupport centrum podpory<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/\" \/>\n<meta property=\"og:locale\" content=\"sk_SK\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kubernetes \u2013 3. Job a deployment - Websupport centrum podpory\" \/>\n<meta property=\"og:description\" content=\"V druhom diele sme uk\u00e1zali, ako nain\u0161talova\u0165 Kubernetes Cluster vo Virtu\u00e1lnom d\u00e1tovom centre (VDC), ako spusti\u0165 Kubernetes Master Server a ako na\u0148 nasadi\u0165 sie\u0165 podov. N\u00e1sledne sme pripojili uzly k spusten\u00e9mu serveru, na ktor\u00e9 sme nasadili slu\u017ebu &#8211; konkr\u00e9tne webov\u00fd server Nginx. Doteraz sme pou\u017e\u00edvali iba predpripraven\u00e9 textov\u00e9 konfigura\u010dn\u00e9 s\u00fabory...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/\" \/>\n<meta property=\"og:site_name\" content=\"Websupport centrum podpory\" \/>\n<meta property=\"article:modified_time\" content=\"2022-06-14T12:28:17+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Predpokladan\u00fd \u010das \u010d\u00edtania\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 min\u00fat\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-3-job-a-deployment\\\/\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-3-job-a-deployment\\\/\",\"name\":\"Kubernetes \u2013 3. Job a deployment - Websupport centrum podpory\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/#website\"},\"datePublished\":\"2022-06-09T13:03:27+00:00\",\"dateModified\":\"2022-06-14T12:28:17+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-3-job-a-deployment\\\/#breadcrumb\"},\"inLanguage\":\"sk-SK\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-3-job-a-deployment\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-3-job-a-deployment\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kubernetes \u2013 3. Job a deployment\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/#website\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/\",\"name\":\"Websupport centrum podpory\",\"description\":\"Radi v\u00e1m pom\u00f4\u017eeme s va\u0161im probl\u00e9mom\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"sk-SK\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Kubernetes \u2013 3. Job a deployment - Websupport centrum podpory","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/","og_locale":"sk_SK","og_type":"article","og_title":"Kubernetes \u2013 3. Job a deployment - Websupport centrum podpory","og_description":"V druhom diele sme uk\u00e1zali, ako nain\u0161talova\u0165 Kubernetes Cluster vo Virtu\u00e1lnom d\u00e1tovom centre (VDC), ako spusti\u0165 Kubernetes Master Server a ako na\u0148 nasadi\u0165 sie\u0165 podov. N\u00e1sledne sme pripojili uzly k spusten\u00e9mu serveru, na ktor\u00e9 sme nasadili slu\u017ebu &#8211; konkr\u00e9tne webov\u00fd server Nginx. Doteraz sme pou\u017e\u00edvali iba predpripraven\u00e9 textov\u00e9 konfigura\u010dn\u00e9 s\u00fabory...","og_url":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/","og_site_name":"Websupport centrum podpory","article_modified_time":"2022-06-14T12:28:17+00:00","twitter_card":"summary_large_image","twitter_misc":{"Predpokladan\u00fd \u010das \u010d\u00edtania":"7 min\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/","url":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/","name":"Kubernetes \u2013 3. Job a deployment - Websupport centrum podpory","isPartOf":{"@id":"https:\/\/www.websupport.sk\/podpora\/#website"},"datePublished":"2022-06-09T13:03:27+00:00","dateModified":"2022-06-14T12:28:17+00:00","breadcrumb":{"@id":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/#breadcrumb"},"inLanguage":"sk-SK","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-3-job-a-deployment\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.websupport.sk\/podpora\/"},{"@type":"ListItem","position":2,"name":"Kubernetes \u2013 3. Job a deployment"}]},{"@type":"WebSite","@id":"https:\/\/www.websupport.sk\/podpora\/#website","url":"https:\/\/www.websupport.sk\/podpora\/","name":"Websupport centrum podpory","description":"Radi v\u00e1m pom\u00f4\u017eeme s va\u0161im probl\u00e9mom","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.websupport.sk\/podpora\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"sk-SK"}]}},"_links":{"self":[{"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb\/22651","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/users\/3"}],"version-history":[{"count":2,"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb\/22651\/revisions"}],"predecessor-version":[{"id":22948,"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb\/22651\/revisions\/22948"}],"wp:attachment":[{"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/media?parent=22651"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb-category?post=22651"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb-tag?post=22651"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}