{"id":77266,"date":"2020-04-09T13:42:08","date_gmt":"2020-04-09T11:42:08","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah"},"modified":"2020-04-09T13:42:08","modified_gmt":"2020-04-09T11:42:08","slug":"tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah","title":{"rendered":"Savjeti i trikovi za rad s Ceph-om u optere\u0107enim projektima","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Savjeti i trikovi u radu s Ceph-om u optere\u0107enim projektima\" src=\"\/wp-content\/uploads\/2020\/04\/1d60f91e55b20a5dc4346bd8087bc11e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKori\u0161tenjem Ceph-a kao mre\u017enog spremi\u0161ta u projektima razli\u010ditih razina optere\u0107enja, mo\u017eemo se susresti s raznim zadacima koji se na prvi pogled ne \u010dine jednostavnima ili trivijalnima. Na primjer:<\/p>\n<ul>\n<li> migracija podataka iz starog Ceph-a u novi uz djelomi\u010dno kori\u0161tenje prethodnih servera u novom klasteru;<\/li>\n<li> rje\u0161avanje problema raspodjele diskovnog prostora u Ceph-u.<\/li>\n<\/ul>\n<p>\nBave\u0107i se takvim zadacima, suo\u010davamo se s potrebom ispravnog uklanjanja OSD-a bez gubitka podataka, \u0161to je posebno va\u017eno pri velikim koli\u010dinama podataka. O tome \u0107e biti rije\u010d u \u010dlanku.<\/p>\n<p>Opisane metode relevantne su za sve verzije Ceph-a. Osim toga, bit \u0107e uzeta u obzir \u010dinjenica da Ceph mo\u017ee skladi\u0161titi velike koli\u010dine podataka: kako bismo sprije\u010dili gubitak podataka i druge probleme, neke radnje \u0107e biti \"podijeljene\" na nekoliko manjih.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Predgovor o OSD-u<\/h3>\n<p>\nBudu\u0107i da su dva od tri razmatrana recepta posve\u0107ena OSD-u (<noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/master\/man\/8\/ceph-osd\/\">Object Storage Daemon<\/a><\/noindex>), prije nego \u0161to zaronimo u prakti\u010dni dio - ukratko o tome \u0161to je to u Ceph-u i za\u0161to je toliko va\u017ean.<\/p>\n<p>Prvo treba re\u0107i da se cijeli Ceph klaster sastoji od mnogih OSD-ova. \u0160to ih je vi\u0161e, to je ve\u0107i slobodni prostor za podatke u Ceph-u. Odatle je lako razumjeti <b>glavnu funkciju OSD-a<\/b>: on pohranjuje podatke objekata Ceph-a na datote\u010dnim sustavima svih \u010dvorova klastera i omogu\u0107ava mre\u017eni pristup tim podacima (za \u010ditanje, pisanje i druge zahtjeve).<\/p>\n<p>Na ovoj razini tako\u0111er se postavljaju parametri replikacije kopiranjem objekata me\u0111u razli\u010ditim OSD-ovima. Ovdje se mo\u017eemo susresti s razli\u010ditim problemima, \u010dije \u0107emo rje\u0161enje razmatrati u nastavku.<\/p>\n<h2>Slu\u010daj br. 1. Sigurno uklanjanje OSD-a iz Ceph klastera bez gubitka podataka<\/h2>\n<p>\nPotrebna je uklanjanje OSD-a mo\u017ee biti uzrokovana isklju\u010denjem servera iz klastera \u2014 na primjer, radi zamjene s drugim serverom \u2014 \u0161to se i dogodilo kod nas, \u0161to je poslu\u017eilo kao povod za pisanje ovog \u010dlanka. Tako da je kona\u010dni cilj manipulacija \u2014 ukloniti sve OSD-ove i mon'ove na ovom serveru kako bismo mogli zaustaviti njegov rad.<\/p>\n<p>Radi prakti\u010dnosti i kako bismo izbjegli situaciju u kojoj bismo tijekom izvo\u0111enja naredbi pogrije\u0161ili u ozna\u010davanju potrebnog OSD-a, postavit \u0107emo zasebnu varijablu, \u010dija \u0107e vrijednost biti broj uklanjanog OSD-a. Nazvat \u0107emo je <code>${ID}<\/code> \u2014 ovdje i nadalje takva varijabla zamjenjuje broj OSD-a s kojim radimo.<\/p>\n<p>Pogledajmo stanje prije po\u010detka radova:<\/p>\n<pre><code class=\"bash\">root@hv-1 ~ # ceph osd tree\nID CLASS WEIGHT  TYPE NAME      STATUS REWEIGHT PRI-AFF\n-1       0.46857 root default\n-3       0.15619      host hv-1\n-5       0.15619      host hv-2\n 1   ssd 0.15619      osd.1     up     1.00000  1.00000\n-7       0.15619      host hv-3\n 2   ssd 0.15619      osd.2     up     1.00000  1.00000<\/code><\/pre>\n<p>\nKako bi se iniciralo brisanje OSD-a, potrebno je postupno izvr\u0161iti <code>reweight<\/code> na njoj do nule. Tako smanjujemo koli\u010dinu podataka u OSD-u balansiranjem na druge OSD-ove. Za to se izvr\u0161avaju sljede\u0107e komande:<\/p>\n<pre><code class=\"bash\">ceph osd reweight osd.${ID} 0.98\nceph osd reweight osd.${ID} 0.88\nceph osd reweight osd.${ID} 0.78<\/code><\/pre>\n<p>\n\u2026 i tako dalje do nule.<\/p>\n<p><b>Postupno balansiranje je potrebno<\/b>, kako bismo izbjegli gubitak podataka. To je posebno va\u017eno ako OSD sadr\u017ei veliku koli\u010dinu podataka. Kako bismo se uvjerili da su svi koraci uspje\u0161no izvr\u0161eni, mo\u017eemo izvesti <code>reweight<\/code> ceph -s <code>ili pokrenuti u zasebnom prozoru terminala<\/code> ceph -w <code>kako bismo pratili promjene u stvarnom vremenu.<\/code> Kada je OSD \"ispra\u017enjen\", mo\u017eemo pristupiti standardnoj operaciji za njegovo uklanjanje. Za to \u0107emo prevesti potrebni OSD u stanje<\/p>\n<p>down <code>ceph osd down osd.${ID}<\/code>:<\/p>\n<pre><code class=\"bash\">\"Izvla\u010dimo\" OSD iz klastera:<\/code><\/pre>\n<p>\nceph osd out osd.${ID}<\/p>\n<pre><code class=\"bash\">Zaustavljamo OSD uslugu i odjavljujemo njegovu particiju u FS-u:<\/code><\/pre>\n<p>\nsystemctl stop ceph-osd@${ID}\numount \/var\/lib\/ceph\/osd\/ceph-${ID}<\/p>\n<pre><code class=\"bash\">Uklanjamo OSD iz<\/code><\/pre>\n<p>\nCRUSH map <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/nautilus\/rados\/operations\/crush-map\/\">ceph osd crush remove osd.${ID}<\/a><\/noindex>:<\/p>\n<pre><code class=\"bash\">Uklanjamo korisnika OSD-a:<\/code><\/pre>\n<p>\nceph auth del osd.${ID}<\/p>\n<pre><code class=\"bash\">I, kona\u010dno, uklanjamo sam OSD:<\/code><\/pre>\n<p>\nceph osd rm osd.${ID}<\/p>\n<pre><code class=\"bash\">: ako koristite verziju Ceph Luminous ili noviju, tada se prethodno opisane radnje za uklanjanje OSD-a mogu svesti na dvije komande:<\/code><\/pre>\n<p>\n<b>Napomena<\/b>ceph osd out osd.${ID}\nceph osd purge osd.${ID}<\/p>\n<pre><code class=\"bash\">Ako nakon izvr\u0161enja gore navedenih akcija izvedete komandu\n<\/code><\/pre>\n<p>\nceph osd tree <code>, trebali bismo vidjeti da na serveru na kojem su izvedeni radovi vi\u0161e nema OSD-a nad kojima su obavljene gornje operacije:<\/code>root@hv-1 ~ # ceph osd tree\nID CLASS WEIGHT  TYPE NAME     STATUS REWEIGHT PRI-AFF\n-1       0.46857      root default\n-3       0.15619      host hv-1\n-5       0.15619      host hv-2\n-7       0.15619      host hv-3\n 2   ssd 0.15619      osd.2    up     1.00000  1.00000<\/p>\n<pre><code class=\"bash\">Usput, primijetit \u0107emo da \u0107e stanje Ceph klastera pre\u0107i u<\/code><\/pre>\n<p>\nHEALTH_WARN <code>, a tako\u0111er \u0107emo vidjeti smanjenje broja OSD-a i dostupnog prostora na disku.<\/code>Dalje \u0107e biti opisani koraci koji \u0107e biti potrebni ako \u017eelite potpuno zaustaviti server i, sukladno tome, ukloniti ga iz Ceph-a. U tom slu\u010daju va\u017eno je zapamtiti da <\/p>\n<p>prije isklju\u010divanja servera morate izvaditi sve OSD-ove <b>na ovom serveru.<\/b> Ako na ovom serveru vi\u0161e nema OSD-a, nakon njihovog uklanjanja potrebno je isklju\u010diti iz mape OSD server<\/p>\n<p>hv-2 <code>hv-2<\/code>, izvr\u0161avanjem sljede\u0107e naredbe:<\/p>\n<pre><code class=\"bash\">ceph osd crush rm hv-2<\/code><\/pre>\n<p>\nBri\u0161emo <code>mon<\/code> s poslu\u017eitelja <code>hv-2<\/code>, pokretanjem dolje navedene naredbe na drugom poslu\u017eitelju (tj. u ovom slu\u010daju \u2014 na <code>hv-1<\/code>):<\/p>\n<pre><code class=\"bash\">ceph-deploy mon destroy hv-2<\/code><\/pre>\n<p>\nNakon toga se mo\u017ee zaustaviti poslu\u017eitelj i pristupiti sljede\u0107im radnjama (njegovom ponovnom postavljanju itd.).<\/p>\n<h2>Slu\u010daj br. 2. Raspodjela diskovnog prostora u ve\u0107 stvorenom Ceph klasteru<\/h2>\n<p>\nDrugoj pri\u010di \u0107u po\u010deti s uvodom o PG (<noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/mimic\/rados\/operations\/placement-groups\/\">Placement Groups<\/a><\/noindex>). Osnovna uloga PG u Ceph-u prvenstveno je agregacija Ceph objekata i daljnja replikacija u OSD. Formula koja se mo\u017ee koristiti za izra\u010dunavanje potrebnog broja PG-a nalazi se u <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/mimic\/rados\/operations\/placement-groups\/#choosing-the-number-of-placement-groups\">odgovaraju\u0107em odjeljku<\/a><\/noindex> dokumentacije Ceph. Tamo se isto pitanje razra\u0111uje i na konkretnim primjerima.<\/p>\n<p>Dakle, jedna od uobi\u010dajenih problema tijekom kori\u0161tenja Ceph-a jeste neizbalansiran broj OSD-a i PG-a izme\u0111u bazena u Ceph-u.<\/p>\n<p>Prvo, zbog toga mo\u017ee do\u0107i do situacije u kojoj se navodi prevelik broj PG-a u malom bazenu, \u0161to u su\u0161tini predstavlja neracionalnu upotrebu diskovnog prostora u klasteru. Drugo, u praksi se pojavljuje ozbiljniji problem: preoptere\u0107enje podataka u jednom od OSD-a. To dovodi do toga da klaster prvo prelazi u stanje <code>, a tako\u0111er \u0107emo vidjeti smanjenje broja OSD-a i dostupnog prostora na disku.<\/code>, a potom i <code>HEALTH_ERR<\/code>. Sve je to posljedica \u0161to Ceph prilikom izra\u010dunavanja dostupnog volumena podataka (mo\u017ee se saznati putem <code>MAX AVAIL<\/code> u izlazu naredbe <code>ceph df<\/code> za svaki bazen posebno) oslanja na volume dostupnih podataka u OSD-u. Ako u barem jednom OSD-u ne bude dovoljno prostora, podaci se vi\u0161e ne\u0107e mo\u0107i zapisivati dok se ne raspodijele ispravno izme\u0111u svih OSD-a.<\/p>\n<p>Va\u017eno je napomenuti da se ovi problemi <b>u ve\u0107oj mjeri rje\u0161avaju u fazi konfiguracije Ceph klastera<\/b>. Jedan od alata koji se mo\u017ee koristiti je <noindex><a rel=\"nofollow\" href=\"http:\/\/blog.easter-eggs.org\/index.php\/post\/2013\/09\/27\/%5BLibvirt%5D-Migrating-from-on-disk-raw-images-to-RBD-storage\">Ceph PGCalc<\/a><\/noindex>. Pomo\u0107u njega se vizualno izra\u010dunava potreban broj PG-a. Me\u0111utim, njemu se mo\u017ee pribje\u0107i i u situaciji kada je Ceph klaster <i>ve\u0107<\/i> neispravno konfiguriran. Ovde treba napomenuti da \u0107e vam prilikom rada na ispravci najvjerojatnije biti potrebno smanjiti broj PG-a, a ta mogu\u0107nost nije dostupna u starijim verzijama Ceph-a (pojavio se tek s verzijom <noindex><a rel=\"nofollow\" href=\"https:\/\/ceph.com\/rados\/new-in-nautilus-pg-merging-and-autotuning\/\">Nautilus<\/a><\/noindex>).<\/p>\n<p>Dakle, zamislite sljede\u0107u situaciju: status klastera je <code>, a tako\u0111er \u0107emo vidjeti smanjenje broja OSD-a i dostupnog prostora na disku.<\/code> jer u jednom od OSD-a ponestaje prostora. O tome \u0107e svjedo\u010diti gre\u0161ka <code>HEALTH_WARN: 1 gotovo puni osd<\/code>. Ispod je prikazan algoritam za izlazak iz takve situacije.<\/p>\n<p>Prvo je potrebno rasporediti postoje\u0107e podatke izme\u0111u preostalih OSD-a. Takvu operaciju smo ve\u0107 radili u prvom slu\u010daju, kada smo \"isu\u0161ivali\" \u010dvor \u2014 s tom razlikom \u0161to \u0107e sada biti potrebno neznatno smanjiti <code>reweight<\/code>. Na primjer, do 0.95:<\/p>\n<pre><code class=\"bash\">ceph osd reweight osd.${ID} 0.95<\/code><\/pre>\n<p>\nTako se osloba\u0111a diskovni prostor u OSD-u i popravlja gre\u0161ka u ceph health. Me\u0111utim, kao \u0161to je ve\u0107 spomenuto, ovaj problem se ve\u0107inom javlja zbog nepravilne konfiguracije Ceph-a u ranim fazama: vrlo je va\u017eno izvr\u0161iti rekonstrukciju kako se ne bi ponovno pojavila.<\/p>\n<p>U na\u0161em konkretnom slu\u010daju sve se svodilo na:<\/p>\n<ul>\n<li> prevelika vrijednost <code>replication_count<\/code> u jednom od pulova,<\/li>\n<li> prekombinirana koli\u010dina PG-a u jednom pulu i premala u drugom. <\/li>\n<\/ul>\n<p>\nIskoristit \u0107emo ve\u0107 spomenuti kalkulator. U njemu je jasno prikazano \u0161to treba unijeti i, u na\u010delu, nema ni\u0161ta komplicirano. Postavljaju\u0107i potrebne parametre, dobivamo sljede\u0107e preporuke:<\/p>\n<p><i><b>Napomena<\/b>: ako postavljate Ceph klaster od nule, dodatna korisna funkcija kalkulatora bit \u0107e generiranje komandi koje \u0107e stvoriti pule od nule s parametrima navedenim u tablici.<\/i><\/p>\n<p>Orijentaciju poma\u017ee posljednji stupac \u2014 <i>Suggested PG Count<\/i>. U na\u0161em slu\u010daju koristan je i drugi stupac, gdje je naveden parametar replikacije, budu\u0107i da smo odlu\u010dili promijeniti i umno\u017eitelj replikacije.<\/p>\n<p>Dakle, prvo je potrebno promijeniti parametre replikacije \u2014 to treba u\u010diniti prvo, jer smanjivanjem umno\u017eitelja osloba\u0111amo diskovni prostor. Tijekom izvr\u0161avanja komande mo\u017ee se primijetiti da se vrijednost dostupnog diskovnog prostora pove\u0107ava:<\/p>\n<pre><code class=\"bash\">ceph osd pool $pool_name set $replication_size<\/code><\/pre>\n<p>\nA nakon \u0161to zavr\u0161i \u2014 mijenjamo vrijednosti parametara <code>pg_num<\/code> i <code>pgp_num<\/code> na sljede\u0107i na\u010din:<\/p>\n<pre><code class=\"bash\">ceph osd pool set $pool_name pg_num $pg_number\nceph osd pool set $pool_name pgp_num $pg_number<\/code><\/pre>\n<p>\n<b>Va\u017eno<\/b>: trebamo redom u svakom pulu promijeniti broj PG-a i ne mijenjati vrijednosti u drugim pulovima dok upozorenja ne nestanu <i>\u201eDegraded data redundancy\u201d<\/i> i <i>\u201en-broj pgs degraded\u201d<\/i>.<\/p>\n<p>Provjeriti da li je sve pro\u0161lo uspje\u0161no tako\u0111er se mo\u017ee putem izlaza komandi <code>ceph health detail<\/code> i <code>ili pokrenuti u zasebnom prozoru terminala<\/code>.<\/p>\n<h2>Slu\u010daj br. 3. Migracija virtualne ma\u0161ine s LVM-a u Ceph RBD<\/h2>\n<p>\nU situaciji kada se u projektu koriste virtualne ma\u0161ine postavljene na iznajmljene bare-metal servere, \u010desto se postavlja pitanje o pouzdanom skladi\u0161tenju. Tako\u0111er, po\u017eeljno je da prostor u tom skladi\u0161tu bude dovoljna... Druga uobi\u010dajena situacija: postoji virtualna ma\u0161ina s lokalnim skladi\u0161tem na serveru i potrebno je pro\u0161iriti disk, ali nema gdje, jer na serveru vi\u0161e nema slobodnog prostora na disku.<\/p>\n<p>Problem se mo\u017ee rije\u0161iti na razli\u010dite na\u010dine - na primjer, migracijom na drugi server (ako takav postoji) ili dodavanjem novih diskova na server. No ne uspeva uvijek to u\u010diniti, zbog \u010dega migracija iz LVM-a u Ceph mo\u017ee biti odli\u010dna solucija ovog problema. Odabirom ove opcije tako\u0111er pojednostavljujemo budu\u0107i proces migracije izme\u0111u servera, jer ne treba premje\u0161tati lokalno skladi\u0161te s jednog hipervizora na drugi. Jedini problem je \u0161to \u0107emo morati zaustaviti VM tijekom rada.<\/p>\n<p>Kao referentna receptura uzeta je <noindex><a rel=\"nofollow\" href=\"http:\/\/blog.easter-eggs.org\/index.php\/post\/2013\/09\/27\/%5BLibvirt%5D-Migrating-from-on-disk-raw-images-to-RBD-storage\">\u010dlanak s ovog bloga<\/a><\/noindex>, \u010dije su upute testirane u praksi. Ina\u010de, <b>tamo je opisan i na\u010din besprijekorne migracije<\/b>, me\u0111utim, u na\u0161em slu\u010daju to jednostavno nije bilo potrebno, pa ga nismo provjeravali. Ako je to klju\u010dno za va\u0161 projekt - bit \u0107emo zahvalni ako nas obavijestite o rezultatima u komentarima.<\/p>\n<p>Pristupimo prakti\u010dnom dijelu. U primjeru koristimo virsh i, shodno tome, libvirt. Prvo se pobrinite da je Ceph pool, u koji \u0107e se migrirati podaci, povezan s libvirt-om:<\/p>\n<pre><code class=\"bash\">virsh pool-dumpxml $ceph_pool<\/code><\/pre>\n<p>\nU opisu poola trebali bi biti podaci o povezivanju s Ceph-om i podaci za autorizaciju. <\/p>\n<p>Sljede\u0107i korak je konverzija LVM slike u Ceph RBD. Vrijeme izvo\u0111enja ovisi prvenstveno o veli\u010dini slike:<\/p>\n<pre><code class=\"bash\">qemu-img convert -p -O rbd \/dev\/main\/$vm_image_name rbd:$ceph_pool\/$vm_image_name<\/code><\/pre>\n<p>\nNakon konverzije ostaje LVM slika, koja \u0107e biti korisna u slu\u010daju da migracija VM-a u RBD ne uspije i morat \u0107emo vra\u0107ati promjene. Tako\u0111er, kako bismo mogli brzo vratiti promjene, napravit \u0107emo backup konfiguracijske datoteke virtualne ma\u0161ine:<\/p>\n<pre><code class=\"bash\">virsh dumpxml $vm_name &gt; $vm_name.xml\ncp $vm_name.xml $vm_name_backup.xml<\/code><\/pre>\n<p>\n... i urediti original (<code>vm_name.xml<\/code>). Na\u0107i \u0107emo blok s opisom diska (koji po\u010dinje s linijom <code>&lt;disk type='file' device='disk'&gt;<\/code> i zavr\u0161ava s <code>&lt;\/disk&gt;<\/code>) i dovesti ga u sljede\u0107i oblik:<\/p>\n<pre><code class=\"xml\"><address \/><\/code><\/pre>\n<p>\nRazmotrit \u0107emo neke detalje:<\/p>\n<ol>\n<li> U protokolu <code>source<\/code> navodi se adresa do skladi\u0161ta u Ceph RBD (to je adresa s naznakom naziva Ceph bazena i RBD slike, koja je definirana u prvom koraku).<\/li>\n<li> U bloku <code>secret<\/code> navodi se tip <code>ceph<\/code>, kao i UUID tajne za povezivanje s njom. Njegov uuid se mo\u017ee saznati pomo\u0107u naredbe <code>virsh secret-list<\/code>.<\/li>\n<li> U bloku <code>host<\/code> navode se adrese do Ceph monitora.<\/li>\n<\/ol>\n<p>\nNakon ure\u0111ivanja konfiguracijske datoteke i zavr\u0161etka konverzije LVM u RBD mo\u017ee se primijeniti izmijenjena konfiguracijska datoteka i pokrenuti virtualna ma\u0161ina:<\/p>\n<pre><code class=\"bash\">virsh define $vm_name.xml\nvirsh start $vm_name<\/code><\/pre>\n<p>\nVrijeme je da provjerimo je li virtualna ma\u0161ina ispravno pokrenuta: to se mo\u017ee provjeriti, na primjer, povezivanjem putem SSH ili putem <code>virsh<\/code>. <\/p>\n<p>Ako virtualna ma\u0161ina ispravno radi i ne primijetite druge probleme, mo\u017eete ukloniti LVM sliku koja vi\u0161e nije u upotrebi:<\/p>\n<pre><code class=\"bash\">lvremove main\/$vm_image_name<\/code><\/pre>\n<p><\/p>\n<h2>Zaklju\u010dak<\/h2>\n<p>\nU svim navedenim slu\u010dajevima susreli smo se s praksom - nadamo se da \u0107e upute pomo\u0107i i drugim administratorima da rije\u0161e sli\u010dne probleme. Ako imate prijedloge ili druga sli\u010dna iskustva s provo\u0111enjem Ceph-a, rado bismo ih vidjeli u komentarima!<\/p>\n<h2>P.S.<\/h2>\n<p>\nPro\u010ditajte i na na\u0161em blogu:<\/p>\n<ul>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/477680\/\">Na\u0161e ruke nisu za dosadu: obnova Rook klastera u K8s<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/451818\/\">Rook ili ne Rook - to je pitanje<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/348044\/\">Rook - \u201esamoosigurano\u201c skladi\u0161te podataka za Kubernetes<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/329666\/\">Stvaramo trajno skladi\u0161te s provisioningom u Kubernetesu na bazi Ceph-a<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/495870\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Ceph \u043a\u0430\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u043e \u043d\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u0442\u044c\u0441\u044f \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0437\u0430\u0434\u0430\u0447\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0437\u0433\u043b\u044f\u0434\u0430 \u043d\u0435 \u043a\u0430\u0436\u0443\u0442\u0441\u044f \u043f\u0440\u043e\u0441\u0442\u044b\u043c\u0438 \u0438\u043b\u0438 \u0442\u0440\u0438\u0432\u0438\u0430\u043b\u044c\u043d\u044b\u043c\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0441\u0442\u0430\u0440\u043e\u0433\u043e Ceph \u0432 \u043d\u043e\u0432\u044b\u0439 \u0441 \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u044b\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435; \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0432 Ceph. \u0420\u0430\u0437\u0431\u0438\u0440\u0430\u044f\u0441\u044c \u0441 \u0442\u0430\u043a\u0438\u043c\u0438 \u0437\u0430\u0434\u0430\u0447\u0430\u043c\u0438, \u043c\u044b \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u043c\u0441\u044f \u0441 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":77267,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-77266","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Ceph \u043a\u0430\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0432.\" \/>\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\/hr\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"hr_HR\" \/>\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\udd47Tips &amp; tricks \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 Ceph \u0432 \u043d\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Ceph \u043a\u0430\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah\" \/>\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=\"2020-04-09T11:42:08+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-09T11:42:08+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\udd47Savjeti i trikovi u radu s Ceph-om u optere\u0107enim projektima | ProHoster","description":"Koriste\u0107i Ceph kao mre\u017eno skladi\u0161te u.","canonical_url":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hr_HR","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\udd47Tips &amp; tricks \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 Ceph \u0432 \u043d\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 | ProHoster","og:description":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Ceph \u043a\u0430\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0432.","og:url":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah","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":"2020-04-09T11:42:08+00:00","article:modified_time":"2020-04-09T11:42:08+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"77266","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 17:20:51","updated":"2022-10-02 10:23:09","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/77266","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/comments?post=77266"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/77266\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media\/77267"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media?parent=77266"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/categories?post=77266"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/tags?post=77266"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}