Natrag na blog

Kako kreirati Kubernetes klaster pomoću Kubeadma na Ubuntu 18.04

Kako kreirati Kubernetes klaster pomoću Kubeadma na Ubuntu 18.04

Ovaj vodič će vas voditi kroz postavljanje Kubernetes klastera ispočetka koristeći Ansible i Kubeadm te daljnju implementaciju kontejnerizirane Nginx aplikacije pomoću njega.

Uvod

Kubernetes (također poznat kao k8s ili “kube”) je platforma otvorenog koda za orkestraciju kontejnera koja automatizira mnoge ručne procese uključene u implementaciju, upravljanje i skaliranje kontejneriziranih aplikacija. Kubernetes ima brzorastuću zajednicu otvorenog koda koja aktivno doprinosi projektu. Pogledajte našu objavu na blogu koja će vas upoznati sa svime što trebate znati o osnovama Kubernetes platforme.

Kubeadm je alat koji konfigurira nekoliko integriranih elemenata, dijelova i komponenti kao što su API poslužitelj, Controller Manager i Kube DNS. Također pomaže u automatizaciji instalacije. Međutim, on ne kreira korisnike niti upravlja instalacijom ovisnosti na razini operacijskog sustava i njihovom konfiguracijom te ne može pripremiti vašu infrastrukturu.

Ansible je alat otvorenog koda za pripremu softvera i implementaciju aplikacija. Saltstack je softver otvorenog koda za automatizaciju informacijske tehnologije vođenu događajima. To su dva alata koji stvaranje dodatnih klastera ili ponovno stvaranje postojećih klastera čine manje podložnim pogreškama i mogu se koristiti za ove preliminarne zadatke.

Ciljevi:

Vaš će klaster uključivati sljedeće fizičke resurse:

1. Jedan master čvor:

Master čvor je čvor koji kontrolira i upravlja skupom radnih čvorova (vrijeme izvršavanja radnih opterećenja) i predstavlja klaster u Kubernetesu. Također sadrži plan resursa čvora kako bi odredio ispravnu akciju za pokrenuti događaj. Pokreće etcd, distribuiranu bazu podataka ključ-vrijednost otvorenog koda koja se koristi za pohranu i upravljanje podacima klastera među komponentama koje raspoređuju radna opterećenja na radne čvorove.

Na primjer, planer bi odredio koji će radni čvor ugostiti novo zakazani POD.

2. Dva radna čvora:

Radni čvorovi su čvorovi koji nastavljaju sa svojim dodijeljenim radom čak i ako master čvor prestane raditi nakon što je raspoređivanje završeno. Radni čvorovi su poslužitelji na kojima će se izvoditi vaša radna opterećenja (tj. kontejnerizirane aplikacije i usluge). Također možete povećati kapacitet klastera dodavanjem radnih čvorova.

Nakon što završite ovaj vodič, imat ćete potpuno funkcionalan klaster spreman za pokretanje radnih opterećenja (tj. kontejneriziranih aplikacija i usluga) pod pretpostavkom da poslužitelji u klasteru imaju dovoljno CPU i RAM resursa za rad vaših aplikacija. Nakon što uspješno postavite klaster, možete pokrenuti gotovo bilo koju tradicionalnu UNIX aplikaciju. Ona se može kontejnerizirati na vašem klasteru, uključujući web aplikacije, baze podataka, demone i alate naredbenog retka.

Sam klaster će trošiti oko 300-500MB memorije i 10% CPU-a na svakom čvoru.

Preduvjeti:

  1. Morate imati SSH par ključeva na svom lokalnom Linux računalu i znati kako koristiti SSH ključeve. Međutim, ako prije niste koristili SSH ključeve, možete pogledati ovaj vodič koji će vam pomoći da postavite SSH ključeve na svom lokalnom računalu.
  2. Tri poslužitelja s operacijskim sustavom Ubuntu 18.04 s najmanje 4GB RAM-a i 4 vCPU-a svaki. Trebali biste se moći spojiti putem SSH-a na svaki poslužitelj kao root korisnik sa svojim SSH parom ključeva. Slijedite ovaj vodič za instalaciju vašeg Ubuntu poslužitelja.
  3. Ansible instaliran na vašem lokalnom računalu.
  4. Također morate biti upoznati s Ansible playbookovima.
  5. Također ćete morati znati kako pokrenuti kontejner iz Docker slike. Pogledajte “Korak 5 — Rad s Docker slikama u Ubuntuu” u Kako instalirati i koristiti Docker na Ubuntu 18.04 ako vam je potrebno ponavljanje.

Korak 1 — Postavljanje direktorija radnog prostora i Ansible inventarne datoteke

Prvo morate postaviti Ansible na svom lokalnom računalu. To će vam pomoći u izvršavanju naredbi na vašem udaljenom poslužitelju. Također olakšava ručni napor implementacije automatizacijom. Za to ćete morati stvoriti direktorij na svom lokalnom računalu koji će služiti kao vaše privremeno digitalno područje za pohranu (radni prostor).

Nakon što stvorite direktorij, stvorit ćete hosts datoteka za pohranu svih informacija o IP adresama i grupi svakog poslužitelja. Pomoći će vam da u nju pohranite informacije o inventaru. Kao što je ranije navedeno, postojat će tri poslužitelja, jedan master i dva radnika. Master poslužitelj bit će master s IP adresom prikazanom kao master_ip. Druga dva poslužitelja bit će radnici i imat će IP adrese worker_1_ip i worker_2_ip.

Morate stvoriti direktorij pod nazivom ~/kube-cluster u početnom direktoriju vašeg lokalnog računala i ući u taj direktorij pomoću naredbe cd:

Direktorij ~/kube-cluster sada će služiti kao privremeno digitalno područje za pohranu (radni prostor) unutar kojeg ćete pokretati sve lokalne naredbe za stvaranje Kubernetes klastera pomoću kubeadm-a. Direktorij će sadržavati sve vaše Ansible priručnike i koristit će se u ostatku ovog vodiča.

Stvaranje datoteke Hosts

Stvorite datoteku pod nazivom ~/kube-cluster/hosts pomoću nano ili vašeg omiljenog uređivača teksta:

Sada ćete morati dodati sljedeći tekst, koji će specificirati informacije o logičkoj strukturi vašeg klastera:

Kao što je spomenuto, ta će vam datoteka inventara pomoći da pohranite sve informacije o IP adresama vaših poslužitelja i grupama kojima pojedini poslužitelj pripada. ~/kube-cluster/hosts bit će vaša datoteka inventara, a (masters i workers) bit će dvije Ansible grupe koje ste joj dodali, specificirajući logičku strukturu vašeg klastera.

Grupa Master je grupa koja specificira da bi Ansible trebao pokretati udaljene naredbe kao root korisnik. Također navodi IP adresu master čvora (master_ip) koja se može izlistati unosom poslužitelja pod nazivom “master”. Slično tome, grupa Workers ima dva unosa za radne poslužitelje (worker_1_ip i worker_2_ip) koji također specificiraju ansible_user kao root.

Zadnji redak datoteke govori Ansibleu da koristi interpretatore Python 3 na udaljenim poslužiteljima za svoje upravljačke operacije. Na kraju, trebate spremiti i zatvoriti datoteku nakon što dodate tekst. Nakon postavljanja direktorija radnog prostora i Ansible datoteke inventara, prijeđimo na sljedeći korak instaliranja ovisnosti na razini operacijskog sustava i stvaranja konfiguracijskih postavki.

Korak 2 — Stvaranje ne-root korisnika na svim udaljenim poslužiteljima

U ovom koraku naučit ćete kako stvoriti ne-root korisnika sa sudo privilegijama na svim poslužiteljima kako biste se mogli ručno prijaviti na njih putem SSH-a kao nepovlašteni korisnik.

To može biti korisno za često izvođene operacije radi očuvanja klastera. Štoviše, ovaj korak pomoći će vam da zadatak izvršite točnije i s manje pogrešaka, smanjujući šanse za nenamjerno mijenjanje ili brisanje važnih datoteka. Ako želite promijeniti postavke datoteka u vlasništvu roota ili vidjeti informacije o sustavu pomoću naredbi kao što su top/htop i pregledati popis pokrenutih spremnika, sljedeći korak pomoći će vam u izvršavanju svih zadataka.

Stvaranje priručnika (Playbooka)

Stvorite datoteku pod nazivom ~/kube-cluster/initial.yml u radnom prostoru:

Zatim trebate dodati sljedeću igru (play). Igra u Ansibleu je zbirka koraka koje treba izvršiti, a koji ciljaju određene poslužitelje i grupe. U priručniku može biti jedna ili više igara.

Sljedeća igra stvorit će ne-root sudo korisnika:

U nastavku je pregled onoga što naš playbook radi:

  1. Ovaj playbook će kreirati ne-root korisnika ubuntu.
  2. Budući da trebate pokretati sudo naredbe bez unosa lozinke, ovaj play će konfigurirati sudoers datoteku kako bi se omogućilo korisniku ubuntu da to učini.
  3. Glavna svrha gornjeg zadatka bila je omogućiti vam SSH pristup svakom poslužitelju kao ubuntu korisnik. Ovaj playbook dodaje javni ključ vašeg lokalnog računala (obično ~/.ssh/id_rsa.pub) u popis autoriziranih ključeva udaljenog ubuntu korisnika.

Sada, nakon dodavanja teksta, trebate spremiti i zatvoriti datoteku.

Pokretanje playbooka

Nakon toga moramo izvršiti naš playbook koji će kreirati ne-root korisnika ubuntu jednostavnim pokretanjem na lokalnim računalima:

Izvršavanje ove naredbe će potrajati neko vrijeme, nakon čega ćete vidjeti sljedeći izlaz:

creating non root user create a kubernetes cluster

Nakon što je ovaj korak dovršen, možete prijeći na instalaciju ovisnosti specifičnih za Kubernetes u sljedećem koraku.

Korak 3 — Instalacija ovisnosti za Kubernetes

U ovom koraku naučit ćete kako instalirati pakete na razini operacijskog sustava koje zahtijeva Kubernetes pomoću Ubuntuovog upravitelja paketima.

Ovi paketi su:

  1. Docker: Docker je platforma i alat za izgradnju, distribuciju i pokretanje Docker spremnika. Docker možete jednostavno postaviti prateći naš vodič o kako instalirati & upravljati Dockerom na Ubuntuu u javnom oblaku. Međutim, podrška za druga okruženja izvršavanja kao što je rkt je u aktivnom razvoju u Kubernetesu.
  2. Kubeadm: kubeadm je CLI alat koji izvodi radnje potrebne za pokretanje minimalno održivog klastera. To će vam pomoći da instalirate i izgradite različite komponente klastera na standardan način.
  3. kubelet: kubelet je primarni “agent čvora” koji se izvodi na svakom čvoru i upravlja operacijama na razini čvora.
  4. kubectl: kubectl je također CLI alat koji komunicira s vašim klasterom i izdaje naredbe putem njegovog API poslužitelja.
Kreiranje playbooka

Kreirajte datoteku pod nazivom ~/kube-cluster/kube-dependencies.yml u radnom prostoru:

Sada trebate dodati sljedeće playeve u datoteku kako biste instalirali ove pakete na svoje poslužitelje:

Prvi play u playbooku radi sljedeće:

  1. Ovaj play pomoći će vam da instalirate pakete na razini operacijskog sustava, Docker – runtime za kontejnere.
  2. Instalira apt-transport-https, što vam omogućuje dodavanje vanjskih HTTPS izvora na vaš popis APT izvora.
  3. Dodaje apt-ključ Kubernetesovog APT repozitorija za provjeru ključeva.
  4. Dodaje Kubernetesov APT repozitorij na popis APT izvora vaših udaljenih poslužitelja.
  5. Instalira kubelet i kubeadm.

Drugi play izvodi važan i samostalan zadatak koji uključuje instalaciju kubectl na vašem master čvoru. Sada, nakon dodavanja teksta, trebate spremiti i zatvoriti datoteku.

Pokretanje playbooka

Nakon toga moramo izvršiti naš playbook jednostavnim pokretanjem na lokalnim računalima:

Izvršavanje ove naredbe potrajat će neko vrijeme, nakon čega ćete vidjeti sljedeći izlaz:

installing k8s dependencies create a kubernetes cluster

Nakon izvršavanja, Docker, kubeadm i kubelet bit će instalirani na svim udaljenim poslužiteljima. Kubectl nije obavezna komponenta i potreban je samo za izvršavanje naredbi klastera. Instaliranje samo na master čvoru ima smisla u ovom kontekstu jer ćete pokretati kubectl naredbe samo s mastera. Imajte na umu, međutim, da kubectl naredbe se mogu pokretati s bilo kojeg od radnih čvorova ili s bilo kojeg stroja na kojem se mogu instalirati i konfigurirati da pokazuju na klaster.

Sve ovisnosti sustava sada su instalirane. Postavimo glavni čvor i inicijalizirajmo klaster.

Korak 4 — Postavljanje glavnog čvora

U ovom koraku naučit ćete nekoliko koncepata kao što su Podovi i Dodaci za mrežu podova budući da će vaš klaster uključivati oboje nakon što postavite svoj glavni čvor.

Podovi su najmanji, najosnovniji objekti koje je moguće implementirati u Kubernetesu. Podovi sadrže jedan ili više spremnika, kao što su Docker spremnici. Kada Pod pokreće više spremnika, spremnicima se upravlja kao jedinstvenom cjelinom i oni dijele resurse Pod’a.

Svaki pod ima svoju IP adresu, a pod na jednom čvoru trebao bi moći pristupiti podu na drugom čvoru koristeći IP adresu tog pod’a. Međutim, komunikacija između podova je složenija. Potrebna joj je zasebna komponenta koja može transparentno usmjeravati promet s poda na jednom čvoru do poda na drugom. Dodaci za mrežu podova koriste se za ovu funkcionalnost. Dostupni su mnogi dodaci za mrežu podova, ali mi ćemo koristiti Flannel jer je to stabilna i učinkovita opcija.

Stvaranje Playbooka

Stvorite Ansible playbook pod nazivom master.yml na svom lokalnom računalu:

Nadalje, trebate dodati sljedeći play u datoteku kako biste inicijalizirali klaster i instalirali Flannel:

Evo raščlambe ovog play-a:

  1. Prvi zadatak u ovom play-u postavit će klaster pokretanjem kubeadm init. Za specificiranje privatne podmreže koja će biti dodijeljena IP adresama podova, prosljeđujemo argument --pod-network-cidr=10.244.0.0/16. Flannel prema zadanim postavkama koristi gore navedenu podmrežu. Ovo koristimo kako bismo rekli kubeadm da koristi istu podmrežu.
  2. Drugi zadatak koristi se za stvaranje .kube direktorija na /home/ubuntuKonfiguracijske informacije kao što su datoteke administratorskih ključeva, koje su potrebne za povezivanje s klasterom i API adresa klastera, bit će pohranjene u ovom direktoriju.
  3. Treći zadatak koristi se za kopiranje /etc/kubernetes/admin.conf datoteke koja je generirana iz kubeadm init u početni direktorij vašeg ne-root korisnika. To će vam omogućiti korištenje kubectl za pristup novostvorenom klasteru.
  4. Zadnji zadatak pokreće kubectl apply za instalaciju Flannel. kubectl apply -f descriptor.[yml|json] je sintaksa kojom se govori kubectl da stvori objekte opisane u descriptor.[yml|json] datoteci. Datoteka kube-flannel.yml sadrži opise objekata potrebnih za postavljanje Flannel u klasteru.

Sada, nakon dodavanja teksta, trebate spremiti i zatvoriti datoteku.

Pokretanje Playbooka

Nakon toga trebate izvršiti naš playbook jednostavnim pokretanjem na lokalnim računalima:

Izvršavanje ove naredbe potrajat će neko vrijeme, nakon čega ćete vidjeti sljedeći izlaz:

setting up master node create a kubernetes cluster

Sada se povežite putem SSH-a pomoću sljedeće naredbe kako biste provjerili status master čvora:

Nakon što uđete u master čvor, izvršite:

Sada ćete vidjeti sljedeći izlaz:

get nodes

Nakon što dobijete gornji izlaz, možete proglasiti da je master čvor izvršio sve zadatke postavljanja i da može početi prihvaćati radne čvorove i izvršavati zadatke čim uđe u stanje Ready. Sada možete dodati radnike sa svog lokalnog računala.

Korak 5 — Postavljanje radnih čvorova

Nakon postavljanja master čvora, sada možemo prijeći na sljedeći korak postavljanja radnih čvorova. Dodavanje radnih čvorova u klaster može se jednostavno izvršiti pokretanjem jedne naredbe na svakom radnom poslužitelju. Važne informacije kao što su IP adresa, port masterovog API poslužitelja i sigurnosni token uključeni su u ovu naredbu. Ipak, imajte na umu da se svi čvorovi neće moći pridružiti klasteru, već samo oni čvorovi koji proslijede sigurnosni token.

Stvaranje playbooka

Ova naredba pomoći će vam da se vratite u svoj radni prostor i stvorite playbook pod nazivom workers.yml:

Dodajte sljedeći tekst u datoteku kako biste dodali radnike u klaster:

Evo što playbook radi. U gornjem kodu nalaze se dva playa:

  1. Prvi play koristi se za dohvaćanje naredbe za pridruživanje koju je potrebno pokrenuti na radnim čvorovima. Format naredbe bit će: kubeadm join --token sha256:<hash><token><master-ip>:<master-port> --discovery-token-ca-cert-hash sha256:<hash>;. Zadatak mora dohvatiti ispravne vrijednosti tokena i hasha. Nakon što dobije ispravan unos, zadatak ga postavlja kao činjenicu (fact) kako bi drugi play mogao pristupiti tim informacijama.
  2. Drugi play napisan je samo za obavljanje jednog zadatka – kako bi se dva radna čvora pridružila klasteru jednostavnim pokretanjem naredbe za pridruživanje na svim radnim čvorovima.

Nakon dodavanja teksta, trebate spremiti i zatvoriti datoteku.

Pokretanje playbooka

Nakon toga moramo izvršiti naš playbook pokretanjem sljedeće naredbe na radnim strojevima:

Izvršavanje ove naredbe potrajat će neko vrijeme, nakon čega ćete vidjeti sljedeći izlaz:

setting up worker nodes

Sada je vaš Kubernetes klaster u potpunosti postavljen i funkcionalan, a radni čvorovi spremni su za pokretanje radnih opterećenja. Prije nego što prijeđemo na sljedeći korak, provjerimo radi li klaster kako je planirano.

Korak 6 — Provjera klastera

Moguće je da klaster ne uspije tijekom postavljanja. To može biti zbog mrežne pogreške između glavnog i radnog čvora ili problema s čvorom. Stoga moramo provjeriti klaster prije zakazivanja aplikacija i osigurati da ne dođe do kvara. Za to ćete morati provjeriti trenutno stanje klastera s glavnog čvora kako biste se uvjerili da su čvorovi spremni. Možete ponovno uspostaviti vezu sljedećom naredbom ako čvorovi nisu spremni ili ako se veza prekine:

Koristite sljedeće naredbe za dohvaćanje statusa klastera:

Izvršavanje ove naredbe potrajat će neko vrijeme, nakon čega ćete vidjeti sljedeći izlaz:

get nodes

 

 

 

 

Trebate provjeriti jesu li svi čvorovi koji su dio klastera u stanju spremnosti. Ako nekoliko čvorova ima Not Ready kao STATUS, to pokazuje da radni čvorovi još nisu završili svoje postavljanje. Međutim, prije ponovnog pokretanja kubectl get nodes i provjere ažuriranog izlaza trebali biste pričekati još pet do deset minuta. Ako neki od čvorova i dalje prikazuju Not Ready kao svoj status, trebali biste otići i provjeriti prethodne korake te ponovno pokrenuti naredbe. Samo ako čvorovi imaju vrijednost Ready za STATUS, oni su dio klastera i spremni za pokretanje radnih opterećenja. Nakon uspješnog izvršavanja 6. koraka, vaš je klaster sada verificiran. Sada zakazimo primjer Nginx aplikacije na klasteru.

Korak 7 — Pokretanje aplikacije na klasteru

Stvaranje deploymenta

Nakon uspješnog stvaranja klastera, možete implementirati bilo koju kontejneriziranu aplikaciju na svoj klaster. Možete koristiti sljedeće naredbe u nastavku za druge kontejnerizirane aplikacije ako se nalazite unutar glavnog čvora. Zatim izvršite sljedeću naredbu za stvaranje deploymenta pod nazivom nginx :

Trebate promijeniti naziv Docker slike i sve relevantne zastavice (kao što su portovi i volumeni). Kako bi stvari ostale poznate, možete implementirati Nginx pomoću deploymenta i servisa kako biste vidjeli kako se aplikacije mogu implementirati na klaster.

Jedan Kubernetes deployment je resursni objekt u Kubernetesu koji pruža deklarativna ažuriranja za aplikacije. Deployment vam omogućuje da opišete životni ciklus aplikacije, kao što su slika spremnika (container image), replike i strategija ažuriranja. Deployment osigurava da željeni broj podova radi i da su dostupni u svakom trenutku. Ako se pod sruši tijekom životnog vijeka klastera, ponovno ga pokreće. Proces ažuriranja također se u potpunosti bilježi i verzira s opcijama za pauziranje, nastavak i vraćanje na prethodne verzije. Gore navedena naredba za stvaranje deploymenta pod nazivom Nginx pomoći će vam da implementirate pod s jednim spremnikom iz Nginx Docker slike iz Docker registra.

Postavljanje Node Porta

Zatim moramo stvoriti NodePort. NodePort je otvoreni port na svakom čvoru vašeg klastera. Kubernetes transparentno usmjerava dolazni promet na NodePort prema vašoj usluzi, čak i ako vaša aplikacija radi na drugom čvoru. Za to možemo koristiti ovu naredbu za stvaranje NodePort resursa pod nazivom Nginx koji će javno izložiti aplikaciju:

Usluga (service) je još jedan Kubernetes objekt odgovoran za izlaganje sučelja tim podovima, što omogućuje mrežni pristup unutar klastera ili između vanjskih procesa i usluge. Može se definirati kao apstrakcija na vrhu poda koja pruža jedinstvenu IP adresu i DNS naziv putem kojih se može pristupiti podovima. Uz uslugu je vrlo jednostavno upravljati konfiguracijom raspodjele opterećenja (load balancing).

Pokrenite sljedeću naredbu:

Ovo će ispisati tekst sličan sljedećem:

get services

Nakon dobivanja ispisa, Kubernetes će automatski dodijeliti nasumični port koji je veći od 30000 , istovremeno osiguravajući da dodijeljeni port već nije zauzet drugom uslugom. Treći redak gornjeg ispisa pomoći će vam da saznate port na kojem Nginx radi.

Da biste provjerili radi li, posjetite http://worker_1_ip:nginx_port ili http://worker_2_ip:nginx_port putem preglednika na vašem lokalnom računalu. Vidjet ćete Nginxovu prepoznatljivu stranicu dobrodošlice.

Uklanjanje deploymenta

Ako želite ukloniti aplikaciju Nginx, najprije morate izbrisati nginx uslugu s master čvora:

Kako biste provjerili je li aplikacija konačno izbrisana, trebate pokrenuti ovu naredbu:

Dobit ćete sljedeći ispis:

check services

Nakon toga trebate izbrisati deployment pomoću sljedeće naredbe:

Možete koristiti ovu naredbu kako biste provjerili je li deployment konačno izbrisan:

get deployments

Zaključak:

Ovaj vodič pomoći će vam da ispravno postavite klaster na Ubuntu 18.04 koristeći Kubeadm i Ansible. Sada kada je vaš klaster postavljen, možete jednostavno početi implementirati vlastite aplikacije i usluge.

Evo popisa poveznica s dodatnim detaljima koji će vas voditi kroz proces:

  1. Dockerizacija aplikacija – Ova poveznica sadrži primjere koji vas vode kroz učitavanje aplikacija pomoću Dockera. Kao što su dockerizacija PostgreSQL-a, CouchDB usluge itd.
  2. Pregled podova – Ova poveznica prikazuje detalje o tome kako koristiti pod, funkcioniranje podova i kako su podovi povezani s drugim Kubernetes objektima. Podovi su važan dio Kubernetesa, pa će vam njihovo razumijevanje pomoći da uspijete u svom zadatku.
  3. Pregled deploymenta – Pomoći će vam da naučite o deploymentima. Deployment pruža deklarativna ažuriranja za podove (Pods) i ReplicaSetove. Naučit ćete kako ažurirati, prebaciti i vratiti deployment na prethodnu verziju.
  4. Pregled usluga - Ova poveznica će vas voditi kroz usluge (services) koje su još jedan često korišteni objekt u Kubernetes klasterima. Usluga u Kubernetesu je apstrakcija koja definira logički skup podova i pravilo prema kojem im možete pristupiti. Razumijevanje vrsta usluga i opcija koje nude ključno je za pokretanje aplikacija bez stanja (stateless) i s očuvanjem stanja (stateful).

Nadalje, pogledajte naše ostale vodiče usmjerene na Docker i Kubernetes koje možete pronaći na našem blogu:

Također postoje mnogi drugi važni koncepti kao što su Volumeni, Ingressi, i Tajne koje možete koristiti prilikom postavljanja produkcijskih aplikacija.

Sretno računanje!

author

Manpreet Singh

Autor · CloudSigma

Preslav Dobrev je kreativni dizajner u CloudSigma, usredotočen na dosljedan poslovni identitet korištenjem tradicionalnih i inovativnih marketinških kanala. Vješt je u spajanju umjetničke vizije sa strateškim marketingom kako bi stvorio dojmljive brendirane priče.

Komentari

Još nema komentara. Budite prvi.