{"id":22005,"date":"2022-03-22T15:15:50","date_gmt":"2022-03-22T14:15:50","guid":{"rendered":"https:\/\/www.websupport.sk\/podpora\/?post_type=ht_kb&#038;p=22005"},"modified":"2022-06-14T14:25:15","modified_gmt":"2022-06-14T12:25:15","slug":"kubernetes-1-historia-architektura-a-instalacia","status":"publish","type":"ht_kb","link":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/","title":{"rendered":"Kubernetes &#8211; 1. Hist\u00f3ria, architekt\u00fara a in\u0161tal\u00e1cia"},"content":{"rendered":"\n<p>Zdarma dostupn\u00fd syst\u00e9m s otvoren\u00fdm zdrojov\u00fdm k\u00f3dom <a href=\"https:\/\/kubernetes.io\/\">Kubernetes<\/a> (K8s) sl\u00fa\u017ei na organizovanie kontajnerov, \u010do umo\u017e\u0148uje automatiz\u00e1ciu nasadenia, \u0161k\u00e1lovania a spr\u00e1vy aplik\u00e1ci\u00ed be\u017eiacich v kontajneroch. \u010casto sa pou\u017e\u00edva v spolupr\u00e1ci s kontajneriza\u010dn\u00fdm prostred\u00edm <a href=\"https:\/\/www.websupport.sk\/podpora\/kb-categories\/docker\/\">Docker<\/a>, containerd \u010di CRI-O. Nasadzuje sa ako slu\u017eba typu platforma-ako-slu\u017eba (PaaS) alebo infra\u0161trukt\u00fara-ako-slu\u017eba (IaaS).<\/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\">Hist\u00f3ria<\/h2>\n\n\n\n<p>Kubernetes za\u010dali vyv\u00edja\u0165 in\u017einieri spolo\u010dnosti Google v roku 2014. V\u00fdvoj a dizajn bol do ve\u013ekej miery ovplyvnen\u00fd syst\u00e9mom na spr\u00e1vu klastrov, ktor\u00fd vtedy pou\u017e\u00edval Google pod n\u00e1zvom Borg (odkaz na seri\u00e1l Star Trek). Kubernetes bol v tom \u010dase vyv\u00edjan\u00fd pod n\u00e1zvom \u201cProject 7\u201d, \u010do predstavuje odkaz na seri\u00e1l Star Trek &#8211; konkr\u00e9tne na postavu ex-Borga \u201cSeven of Nine\u201d. Dne\u0161n\u00fd n\u00e1zov Kubernetes z\u00edskal pod\u013ea gr\u00e9ckeho ozna\u010denia kormideln\u00edka &#8211; preto kormidlo v logu, ktor\u00e9 svojimi siedmimi r\u00fa\u010dkami rovnako odkazuje na postavu \u201cSeven of Nine\u201d.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"640\" src=\"https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo.png\" alt=\"\" class=\"wp-image-22014\" srcset=\"https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo.png 640w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo-300x300.png 300w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo-150x150.png 150w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo-50x50.png 50w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo-60x60.png 60w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo-100x100.png 100w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption>Logo syst\u00e9mu Kubernetes<\/figcaption><\/figure>\n\n\n\n<p>Aby Kubernetes mohol by\u0165 pou\u017e\u00edvan\u00fd ako nez\u00e1visl\u00e1 \u0161tandardizovan\u00e1 platforma na orchestr\u00e1ciu kontajnerov, Google sa v roku 2015 rozhodol, \u017ee spolo\u010dne s neziskovou organiz\u00e1ciou <em>Linux Foundation<\/em> zalo\u017e\u00ed projekt <em>Cloud Native Computing Foundation<\/em> (CNCF). T\u00e1to organiz\u00e1cia m\u00e1 za \u00falohu stara\u0165 sa o v\u00fdvoj a \u0161\u00edrenie kontariza\u010dnej technol\u00f3gie a pr\u00edpravu technologick\u00e9ho prostredia na jej pokro\u010dil\u00e9 nasadzovanie. Medzi zakladate\u013esk\u00e9 firmy CNCF patria tak\u00e9 zvu\u010dn\u00e9 men\u00e1 ako Intel, Cisco, IBM, Red Hat \u010di Twitter.<\/p>\n\n\n\n<p>V roku 2016 CNCF vydala spr\u00e1vcu bal\u00edkov Helm, v\u010faka ktor\u00e9mu sa spr\u00e1va a nasadenie aplik\u00e1ci\u00ed do klasteru Kubernetes v\u00fdrazne zjednodu\u0161ila. Popularita Kubernetes n\u00e1sledne vystrelila na deviate miesto v r\u00e1mci projektov <a href=\"https:\/\/github.com\/kubernetes\">na GitHube<\/a> a dokonca na druh\u00e9 miesto (hne\u010f za Linux!) v po\u010dte prispievate\u013eov. CNCF okrem spr\u00e1vcu bal\u00edkov Helm vyv\u00edja aj ostatn\u00e9 n\u00e1stroje, ktor\u00e9 s\u00fa pou\u017e\u00edvan\u00e9 pri pr\u00e1ci s Kubernetes &#8211; napr. Containerd, CoreDNS alebo etcd.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ako Kubernetes funguje<\/h2>\n\n\n\n<p>Architekt\u00faru syst\u00e9mu Kubernetes si treba predstavi\u0165 ako <strong>klaster<\/strong>, ktor\u00fd sa sklad\u00e1 z dvoch ve\u013ek\u00fdch \u010dast\u00ed: <strong>Spr\u00e1vca<\/strong> (Kubernetes Master) a <strong>uzly<\/strong> (Kubernetes Worker Nodes). Spr\u00e1vca kontroluje a pl\u00e1nuje fungovanie uzlov. Principi\u00e1lne ide o podobn\u00fd n\u00e1stroj ako je <a href=\"https:\/\/www.websupport.sk\/support\/kb\/docker-swarm\/\">Docker Swarm<\/a>, ale Kubernetes navy\u0161e pon\u00faka sofistikovanej\u0161iu automatiz\u00e1ciu (orchestr\u00e1ciu) v pr\u00edpade p\u00e1du kontajnerov, v pr\u00edpade p\u00e1du fyzick\u00fdch serverov alebo v pr\u00edpade pr\u00edli\u0161neho za\u0165a\u017eenia sie\u0165ovej komunik\u00e1cie (load balancing).<\/p>\n\n\n\n<p><strong>Kontajner<\/strong> je softv\u00e9rov\u00fd bal\u00edk, ktor\u00fd obsahuje v\u0161etko potrebn\u00e9 na spustenie aplik\u00e1cie: k\u00f3d samotnej aplik\u00e1cie, syst\u00e9mov\u00e9 kni\u017enice a nastavenia. Ak je kontajner spusten\u00fd, nie je ho u\u017e mo\u017en\u00e9 meni\u0165. Ak&nbsp; teda m\u00e1me aplik\u00e1ciu, ktor\u00e1 be\u017e\u00ed v kontajneri a potrebujeme v nej urobi\u0165 zmeny, najsk\u00f4r mus\u00edme spusten\u00fd kontajner vypn\u00fa\u0165 a n\u00e1sledne spusti\u0165 <strong>obraz<\/strong> kontajnera, ktor\u00fd obsahuje zmeny. Viac o kontajneroch aj <a href=\"https:\/\/www.websupport.sk\/support\/kb\/docker-instalacia-a-zakladne-operacie\/\">v \u00favodnej \u010dasti seri\u00e1lu o syst\u00e9me Docker<\/a>.<\/p>\n\n\n\n<p><strong>Orchestr\u00e1cia<\/strong> v syst\u00e9me Kubernetes ozna\u010duje riadenie kontajnerov. Ide o pokro\u010dil\u00fa automatiz\u00e1ciu, v\u010faka ktorej je mo\u017en\u00e9 v pr\u00edpade p\u00e1du kontajnera kontajner re\u0161tartova\u0165, v pr\u00edpade p\u00e1du fyzick\u00e9ho servera spusti\u0165 \u010fal\u0161ie kontajnery na inom serveri a v pr\u00edpade ve\u013ek\u00e9ho za\u0165a\u017eenia siete presun\u00fa\u0165 komunik\u00e1ciu na menej vy\u0165a\u017een\u00fa infra\u0161trukt\u00faru (load balancing). V\u010faka orchestr\u00e1cii kontajnerov teda dok\u00e1\u017eeme automatizova\u0165 rie\u0161enia pre naj\u010dastej\u0161ie kritick\u00e9 scen\u00e1re.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Kubernetes Master (spr\u00e1vca)<\/h3>\n\n\n\n<p>Spr\u00e1vca obsahuje server (kube-apiserver) s rozhran\u00edm pre programovanie aplik\u00e1ci\u00ed (Application Programming Interface, API), pomocou ktor\u00e9ho komunikuje s uzlami. Spr\u00e1vca tie\u017e zah\u0155\u0148a mana\u017eovanie (kube-controller-manager), pl\u00e1novanie (kube-scheduler) a datab\u00e1zu (etcd). Pri komunik\u00e1cii s uzlami im d\u00e1vame vedie\u0165, ak\u00e9 <strong>objekty<\/strong> (Kubernetes Objects) maj\u00fa vytvori\u0165, zmeni\u0165 alebo odstr\u00e1ni\u0165.<\/p>\n\n\n\n<p>Najjednoduch\u0161\u00ed a z\u00e1rove\u0148 najd\u00f4le\u017eitej\u0161\u00ed objekt je tzv. <strong>Pod<\/strong> (skupinka), preto\u017ee obsahuje kontajnery, ktor\u00e9 m\u00e1 Kubernetes orchestrova\u0165. V\u0161etky ostatn\u00e9 objekty iba sl\u00fa\u017eia objektu Pod. Ide o objekty ako volume, service, deployment, ingress, secret, configMap a mnoho \u010fal\u0161\u00edch. Postupne sa v priebehu tohto seri\u00e1lu na niektor\u00e9 objekty pozrieme podrobnej\u0161ie.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Kubernetes Worker Nodes (uzly)<\/h3>\n\n\n\n<p>Uzly (nodes) s\u00fa t\u00ed pracovn\u00edci (workers), ktor\u00ed vykonaj\u00fa v\u0161etko presne tak, ako im zad\u00e1 spr\u00e1vca (master). Na uzloch teda be\u017e\u00ed kontajnerizovan\u00e1 aplik\u00e1cia pod\u013ea pokynov od spr\u00e1vcu. Aby syst\u00e9m spr\u00e1vca-uzly pracoval \u010do najlep\u0161ie, odpor\u00fa\u010da sa spr\u00e1vcu prev\u00e1dzkova\u0165 na samostatnom serveri a ka\u017ed\u00fd uzol rovnako na samostatnom serveri. Uzly pre svoje fungovanie potrebuj\u00fa iba tri slu\u017eby:<\/p>\n\n\n\n<p><strong>Kubelet<\/strong> je po slu\u017ebe kube-apiserver najd\u00f4le\u017eitej\u0161ia, preto\u017ee pr\u00e1ve kubelet na ka\u017edom uzle prij\u00edma pokyny od slu\u017eby kube-apiserver a priamo tak orchestruje kontajneri na ka\u017edom Pode. Kubelet kontroluje iba kontajnery, ktor\u00e9 s\u00e1m spustil. M\u00f4\u017ee o nich z\u00edska\u0165 inform\u00e1cie a zastavi\u0165\/spusti\u0165 ich. Pr\u00e1ve kubelet priamo komunikuje s kontajneriza\u010dn\u00fdm prostred\u00edm (napr. Docker, containerd alebo CRI-O) cez rozhranie pre komunik\u00e1ciu s kontajnermi (Container Runtime Interface, CRI).<\/p>\n\n\n\n<p><strong>Kube-proxy<\/strong> je slu\u017eba, ktor\u00e1 tvor\u00ed komunika\u010dn\u00fd kan\u00e1l medzi uzlami, podmi a kontajnermi. Od spr\u00e1vcu cez kube-apiserver prij\u00edma aktu\u00e1lne inform\u00e1cie o konkr\u00e9tnych slu\u017eb\u00e1ch na uzloch a udr\u017eiava tak sie\u0165 uzlov aktu\u00e1lnu. To v\u0161etko sa deje pomocou n\u00e1stroja <strong>iptables<\/strong>, cez ktor\u00fd kube-proxy nastavuje pravidl\u00e1 a smeruje tak komunik\u00e1ciu na spr\u00e1vny koncov\u00fd bod pod\u013ea potreby (load balancing).<\/p>\n\n\n\n<p><strong>Kontajneriza\u010dn\u00e9 prostredie<\/strong> je tie\u017e slu\u017eba, ktor\u00e1 mus\u00ed be\u017ea\u0165 na ka\u017edom uzle. V\u010faka tejto slu\u017ebe m\u00f4\u017ee slu\u017eba kubelet na po\u017eiadanie slu\u017eby kube-apiserver spusti\u0165 alebo zastavi\u0165 kontajner. Aktu\u00e1lne dok\u00e1\u017ee Kubernetes pracova\u0165 s ktor\u00fdmko\u013evek kontajneriza\u010dn\u00fdm prostred\u00edm, ktor\u00e9 sp\u013a\u0148a \u0161tandardy organiz\u00e1cie <em>Open Container Initiative<\/em> (OCI). Kompatibiln\u00e9 s OCI s\u00fa napr. kontajneriza\u010dn\u00e9 prostredia Docker, rkt, runc alebo runsc.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"783\" height=\"560\" src=\"https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-architektura-783x560.png\" alt=\"\" class=\"wp-image-22017\" srcset=\"https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-architektura-783x560.png 783w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-architektura-300x214.png 300w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-architektura-768x549.png 768w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-architektura-50x36.png 50w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-architektura-60x43.png 60w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-architektura-100x71.png 100w, https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-architektura.png 799w\" sizes=\"auto, (max-width: 783px) 100vw, 783px\" \/><figcaption>Architekt\u00fara syst\u00e9mu Kubernetes<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">In\u0161tal\u00e1cia mal\u00e9ho Kubernetes<\/h2>\n\n\n\n<p>Projekt <a href=\"https:\/\/minikube.sigs.k8s.io\/\">minikube<\/a> vznikol ako zdarma dostupn\u00fd n\u00e1stroj s otvoren\u00fdm zdrojov\u00fdm k\u00f3dom, ktor\u00fd si kladie za cie\u013e \u010do najviac u\u013eah\u010di\u0165 v\u00fdvoj pre Kubernetes. Ide o lok\u00e1lnu in\u0161tal\u00e1ciu klastra, ktor\u00fa je mo\u017en\u00e9 nain\u0161talova\u0165 na Linuxe, MacOS \u010di Windowse. Minim\u00e1lne po\u017eiadavky s\u00fa 2-jadr\u00e1 CPU, 2 GB vo\u013enej RAM, 20 GB vo\u013en\u00e9ho priestoru na disku a povolen\u00e1 hardv\u00e9rov\u00e1 virtualiz\u00e1cia. K tomu s\u00fa e\u0161te potrebn\u00e9 pripojenie do internetu a niektor\u00e9 z kontajneriza\u010dn\u00fdch prostred\u00ed ako Docker, Hyperkit, Hyper-V, KVM, Parallels, Podman, VirtualBox \u010di VMWare.<\/p>\n\n\n\n<p>V tomto seri\u00e1ly s\u00edce budeme Kubernetes predstavova\u0165 na sie\u0165ovej in\u0161tal\u00e1cii (1x master + 2x worker), ale na vysk\u00fa\u0161anie Kubernetes na jednom po\u010d\u00edta\u010di posta\u010d\u00ed aj minikube. Nemus\u00edte tak pou\u017ei\u0165 viacer\u00e9 po\u010d\u00edta\u010de, \u010di VPS, no aj napriek tomu st\u00e1le m\u00f4\u017eete pracova\u0165 s Kubernetes a jeho n\u00e1strojmi ako napr. kubectl.<\/p>\n\n\n\n<p>Uk\u00e1\u017eeme si in\u0161tal\u00e1ciu minikube na Linuxe Ubuntu 20.04 LTS (Focal Fossa). Ako prv\u00e9 nain\u0161talujeme v\u0161etky potrebn\u00e9 bal\u00edky, v\u010faka ktor\u00fdm bude mo\u017en\u00e9 nain\u0161talova\u0165 ostatn\u00e9 n\u00e1stroje:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo apt install curl wget apt-transport-https virtualbox virtualbox-ext-pack -y<\/pre>\n\n\n\n<p>V druhom kroku nain\u0161talujeme kontajneriza\u010dn\u00e9 prostredie Docker:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo apt install docker.io -y<\/pre>\n\n\n\n<p>Po dokon\u010den\u00ed in\u0161tal\u00e1cie Docker spust\u00edme (prv\u00fd riadok) a povol\u00edme automatick\u00e9 sp\u00fa\u0161\u0165anie pri \u0161tarte syst\u00e9mu (druh\u00fd riadok):<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">systemctl start docker<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">systemctl enable docker<\/pre>\n\n\n\n<p>Stiahneme aktu\u00e1lnu verziu minikube (prv\u00fd riadok), skop\u00edrujeme ju do syst\u00e9movej cesty (druh\u00fd riadok) a nastav\u00edme opr\u00e1vnenia (tret\u00ed riadok):<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">wget https:\/\/storage.googleapis.com\/minikube\/releases\/latest\/minikube-linux-amd64<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo cp minikube-linux-amd64 \/usr\/local\/bin\/minikube<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo chmod 755 \/usr\/local\/bin\/minikube<\/pre>\n\n\n\n<p>Na spr\u00e1vu aplik\u00e1ci\u00ed v Kubernetes e\u0161te potrebujeme nain\u0161talova\u0165 niektor\u00e9 n\u00e1stroje z extern\u00e9ho Kubernetes repozit\u00e1ra. Prid\u00e1me teda GPG k\u013e\u00fa\u010d repozit\u00e1ra (prv\u00fd riadok), samotn\u00fd repozit\u00e1r (druh\u00fd riadok), aktualizujeme zoznam aktualizovan\u00fdch bal\u00ed\u010dkov (tret\u00ed riadok) a nakoniec nain\u0161talujeme n\u00e1stroje kubectl a kubeadm (\u0161tvrt\u00fd riadok):<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">curl -s https:\/\/packages.cloud.google.com\/apt\/doc\/apt-key.gpg | apt-key add -<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">echo \"deb http:\/\/apt.kubernetes.io\/ kubernetes-xenial main\" | tee \/etc\/apt\/sources.list.d\/kubernetes.list<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo apt update -y<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo apt install kubectl kubeadm -y<\/pre>\n\n\n\n<p>Ke\u010f\u017ee s\u00fa teraz v\u0161etky po\u017eadovan\u00e9 bal\u00edky nain\u0161talovan\u00e9, m\u00f4\u017eeme spusti\u0165 minikube (prv\u00fd riadok) a skontrolova\u0165 stav klastra cez minikube (druh\u00fd riadok):<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">minikube start<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">minikube status<\/pre>\n\n\n\n<p>N\u00e1sledne u\u017e m\u00f4\u017eeme za\u010da\u0165 pracova\u0165 so samotn\u00fdm Kubernetes. Nech\u00e1me si vyp\u00edsa\u0165 inform\u00e1cie o celom klastri (prv\u00fd riadok) a nastavenia kubectl (druh\u00fd riadok). Inform\u00e1cie o uzloch (tret\u00ed riadok) si rovnakom m\u00f4\u017eeme zobrazi\u0165. M\u00f4\u017eeme \u00eds\u0165 e\u0161te hlb\u0161ie a necha\u0165 si vyp\u00edsa\u0165 zoznam kontajnerov (\u0161tvrt\u00fd riadok).<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">kubectl cluster-info<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">kubectl config view<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">kubectl get nodes<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">kubectl get pods --all-namespaces<\/pre>\n\n\n\n<p>Kompletn\u00fa spr\u00e1vu Kubernetes m\u00f4\u017eeme realizova\u0165 pohodlne aj z grafick\u00e9ho prostredia cez Kubernetes Dashboard (Web UI), ktor\u00e9 povol\u00edme takto:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">minikube dashboard --url<\/pre>\n\n\n\n<p>Vyp\u00ed\u0161e sa URL adresa, na ktorej Web UI zobraz\u00edme vo webovom prehliada\u010di. Odteraz u\u017e teda pracujeme v grafickom prostred\u00ed webov\u00e9ho prehliada\u010da.<\/p>\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 prvom diele seri\u00e1lu o Kubernetes sme si stru\u010dne pop\u00edsali hist\u00f3riu projektu. Predstavili sme si architekt\u00faru a z\u00e1kladn\u00e9 n\u00e1stroje Kubernetes. Nakoniec sme Kubernetes nain\u0161talovali lok\u00e1lne pomocou n\u00e1stroja minikube, aby sme mohli Kubernetes pou\u017e\u00edva\u0165 aj na be\u017ene dostupnom po\u010d\u00edta\u010di.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Zdarma dostupn\u00fd syst\u00e9m s otvoren\u00fdm zdrojov\u00fdm k\u00f3dom Kubernetes (K8s) sl\u00fa\u017ei na organizovanie kontajnerov, \u010do umo\u017e\u0148uje automatiz\u00e1ciu nasadenia, \u0161k\u00e1lovania a spr\u00e1vy aplik\u00e1ci\u00ed be\u017eiacich v kontajneroch. \u010casto sa pou\u017e\u00edva v spolupr\u00e1ci s kontajneriza\u010dn\u00fdm prostred\u00edm Docker, containerd \u010di CRI-O. Nasadzuje sa ako slu\u017eba typu platforma-ako-slu\u017eba (PaaS) alebo infra\u0161trukt\u00fara-ako-slu\u017eba (IaaS). Hist\u00f3ria Kubernetes za\u010dali vyv\u00edja\u0165&#8230;<\/p>\n","protected":false},"author":28,"template":"","format":"standard","meta":{"footnotes":""},"ht-kb-category":[468],"ht-kb-tag":[474,393,396,471,330,237,339,381,198,192],"class_list":["post-22005","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-kubernetes","ht_kb_tag-cloud-native","ht_kb_tag-docker","ht_kb_tag-kontajnery","ht_kb_tag-kubernetes","ht_kb_tag-linux","ht_kb_tag-manazment","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 - 1. Hist\u00f3ria, architekt\u00fara a in\u0161tal\u00e1cia - 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-1-historia-architektura-a-instalacia\/\" \/>\n<meta property=\"og:locale\" content=\"sk_SK\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kubernetes - 1. Hist\u00f3ria, architekt\u00fara a in\u0161tal\u00e1cia - Websupport centrum podpory\" \/>\n<meta property=\"og:description\" content=\"Zdarma dostupn\u00fd syst\u00e9m s otvoren\u00fdm zdrojov\u00fdm k\u00f3dom Kubernetes (K8s) sl\u00fa\u017ei na organizovanie kontajnerov, \u010do umo\u017e\u0148uje automatiz\u00e1ciu nasadenia, \u0161k\u00e1lovania a spr\u00e1vy aplik\u00e1ci\u00ed be\u017eiacich v kontajneroch. \u010casto sa pou\u017e\u00edva v spolupr\u00e1ci s kontajneriza\u010dn\u00fdm prostred\u00edm Docker, containerd \u010di CRI-O. Nasadzuje sa ako slu\u017eba typu platforma-ako-slu\u017eba (PaaS) alebo infra\u0161trukt\u00fara-ako-slu\u017eba (IaaS). Hist\u00f3ria Kubernetes za\u010dali vyv\u00edja\u0165...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/\" \/>\n<meta property=\"og:site_name\" content=\"Websupport centrum podpory\" \/>\n<meta property=\"article:modified_time\" content=\"2022-06-14T12:25:15+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo.png\" \/>\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=\"8 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-1-historia-architektura-a-instalacia\\\/\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-1-historia-architektura-a-instalacia\\\/\",\"name\":\"Kubernetes - 1. Hist\u00f3ria, architekt\u00fara a in\u0161tal\u00e1cia - Websupport centrum podpory\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-1-historia-architektura-a-instalacia\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-1-historia-architektura-a-instalacia\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/app\\\/uploads\\\/sites\\\/2\\\/2022\\\/03\\\/kubernetes-logo.png\",\"datePublished\":\"2022-03-22T14:15:50+00:00\",\"dateModified\":\"2022-06-14T12:25:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-1-historia-architektura-a-instalacia\\\/#breadcrumb\"},\"inLanguage\":\"sk-SK\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-1-historia-architektura-a-instalacia\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"sk-SK\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-1-historia-architektura-a-instalacia\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/app\\\/uploads\\\/sites\\\/2\\\/2022\\\/03\\\/kubernetes-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/app\\\/uploads\\\/sites\\\/2\\\/2022\\\/03\\\/kubernetes-logo.png\",\"width\":640,\"height\":640},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/kb\\\/kubernetes-1-historia-architektura-a-instalacia\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.websupport.sk\\\/podpora\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kubernetes &#8211; 1. Hist\u00f3ria, architekt\u00fara a in\u0161tal\u00e1cia\"}]},{\"@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 - 1. Hist\u00f3ria, architekt\u00fara a in\u0161tal\u00e1cia - 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-1-historia-architektura-a-instalacia\/","og_locale":"sk_SK","og_type":"article","og_title":"Kubernetes - 1. Hist\u00f3ria, architekt\u00fara a in\u0161tal\u00e1cia - Websupport centrum podpory","og_description":"Zdarma dostupn\u00fd syst\u00e9m s otvoren\u00fdm zdrojov\u00fdm k\u00f3dom Kubernetes (K8s) sl\u00fa\u017ei na organizovanie kontajnerov, \u010do umo\u017e\u0148uje automatiz\u00e1ciu nasadenia, \u0161k\u00e1lovania a spr\u00e1vy aplik\u00e1ci\u00ed be\u017eiacich v kontajneroch. \u010casto sa pou\u017e\u00edva v spolupr\u00e1ci s kontajneriza\u010dn\u00fdm prostred\u00edm Docker, containerd \u010di CRI-O. Nasadzuje sa ako slu\u017eba typu platforma-ako-slu\u017eba (PaaS) alebo infra\u0161trukt\u00fara-ako-slu\u017eba (IaaS). Hist\u00f3ria Kubernetes za\u010dali vyv\u00edja\u0165...","og_url":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/","og_site_name":"Websupport centrum podpory","article_modified_time":"2022-06-14T12:25:15+00:00","og_image":[{"url":"https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Predpokladan\u00fd \u010das \u010d\u00edtania":"8 min\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/","url":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/","name":"Kubernetes - 1. Hist\u00f3ria, architekt\u00fara a in\u0161tal\u00e1cia - Websupport centrum podpory","isPartOf":{"@id":"https:\/\/www.websupport.sk\/podpora\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/#primaryimage"},"image":{"@id":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/#primaryimage"},"thumbnailUrl":"https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo.png","datePublished":"2022-03-22T14:15:50+00:00","dateModified":"2022-06-14T12:25:15+00:00","breadcrumb":{"@id":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/#breadcrumb"},"inLanguage":"sk-SK","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/"]}]},{"@type":"ImageObject","inLanguage":"sk-SK","@id":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/#primaryimage","url":"https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo.png","contentUrl":"https:\/\/www.websupport.sk\/podpora\/app\/uploads\/sites\/2\/2022\/03\/kubernetes-logo.png","width":640,"height":640},{"@type":"BreadcrumbList","@id":"https:\/\/www.websupport.sk\/podpora\/kb\/kubernetes-1-historia-architektura-a-instalacia\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.websupport.sk\/podpora\/"},{"@type":"ListItem","position":2,"name":"Kubernetes &#8211; 1. Hist\u00f3ria, architekt\u00fara a in\u0161tal\u00e1cia"}]},{"@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\/22005","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\/28"}],"version-history":[{"count":2,"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb\/22005\/revisions"}],"predecessor-version":[{"id":22915,"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb\/22005\/revisions\/22915"}],"wp:attachment":[{"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/media?parent=22005"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb-category?post=22005"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.websupport.sk\/podpora\/wp-json\/wp\/v2\/ht-kb-tag?post=22005"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}