{"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\/sq\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah","title":{"rendered":"K\u00ebshilla &amp; triksa n\u00eb pun\u00ebn me Ceph n\u00eb projekte me ngarkes\u00eb t\u00eb lart\u00eb","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"K\u00ebshilla &amp; truk\u00eb n\u00eb pun\u00ebn me Ceph n\u00eb projekte t\u00eb ngarkuara\" src=\"\/wp-content\/uploads\/2020\/04\/1d60f91e55b20a5dc4346bd8087bc11e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDuke p\u00ebrdorim Ceph si ruajtje n\u00eb rrjet p\u00ebr projekte me ngarkesa t\u00eb ndryshme, mund t\u00eb p\u00ebrballemi me detyra q\u00eb n\u00eb pamje t\u00eb par\u00eb nuk duken t\u00eb thjeshta ose banale. P\u00ebr shembull:<\/p>\n<ul>\n<li> migrimi i t\u00eb dh\u00ebnave nga Ceph i vjet\u00ebr n\u00eb t\u00eb riun me p\u00ebrdorimin pjesor t\u00eb server\u00ebve t\u00eb m\u00ebparsh\u00ebm n\u00eb klasterin e ri;<\/li>\n<li> zgjidhja e problemit t\u00eb shp\u00ebrndarjes s\u00eb hap\u00ebsir\u00ebs diskore n\u00eb Ceph.<\/li>\n<\/ul>\n<p>\nDuke iu qasur k\u00ebtyre detyrave, hasim nevoj\u00ebn p\u00ebr t\u00eb nxjerr\u00eb OSD-n\u00eb n\u00eb m\u00ebnyr\u00eb korrekte pa humbje t\u00eb dh\u00ebnash, e cila \u00ebsht\u00eb ve\u00e7an\u00ebrisht e r\u00ebnd\u00ebsishme kur kemi volum t\u00eb madh t\u00eb t\u00eb dh\u00ebnave. Kjo do t\u00eb trajtohet n\u00eb artikull.<\/p>\n<p>Metodat e p\u00ebrshkruara m\u00eb posht\u00eb jan\u00eb t\u00eb aplikueshme p\u00ebr t\u00eb gjith\u00eb versionet e Ceph. P\u00ebr m\u00eb tep\u00ebr, do t\u00eb merret parasysh fakti q\u00eb Ceph mund t\u00eb mbaj\u00eb nj\u00eb sasi t\u00eb madhe t\u00eb dh\u00ebnash: p\u00ebr t\u00eb parandaluar humbjet e t\u00eb dh\u00ebnave dhe probleme t\u00eb tjera, disa veprime do t\u00eb \"ndar\u00eb\" n\u00eb disa t\u00eb tjera.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Parath\u00ebnie p\u00ebr OSD<\/h3>\n<p>\nP\u00ebr shkak se dy nga tre recetat q\u00eb po shqyrtojm\u00eb i kushtohen OSD (<noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/master\/man\/8\/ceph-osd\/\">Object Storage Daemon<\/a><\/noindex>), para se t\u00eb futemi n\u00eb pjes\u00ebn praktike \u2014 shkurtimisht p\u00ebr at\u00eb se \u00e7far\u00eb \u00ebsht\u00eb n\u00eb fakt n\u00eb Ceph dhe pse \u00ebsht\u00eb kaq i r\u00ebnd\u00ebsish\u00ebm.<\/p>\n<p>S\u00eb pari, duhet t\u00eb themi se e gjith\u00eb klasteri Ceph p\u00ebrb\u00ebhet nga shum\u00eb OSD. Sa m\u00eb shum\u00eb t\u00eb jen\u00eb, aq m\u00eb shum\u00eb hap\u00ebsir\u00eb t\u00eb lir\u00eb t\u00eb dh\u00ebnash ka n\u00eb Ceph. K\u00ebtu leht\u00eb mund t\u00eb kuptohet <b>funksioni kryesor i OSD<\/b>: ai ruan t\u00eb dh\u00ebnat e objekteve Ceph n\u00eb sistemet e skedar\u00ebve t\u00eb t\u00eb gjitha nyjeve t\u00eb klasterit dhe ofron akses n\u00eb rrjet p\u00ebr to (p\u00ebr lexim, shkruan dhe k\u00ebrkesa t\u00eb tjera).<\/p>\n<p>N\u00eb k\u00ebt\u00eb nivel vendosen parametrat e replikimit p\u00ebrmes kopjimit t\u00eb objekteve midis OSD-ve t\u00eb ndryshme. K\u00ebtu mund t\u00eb hasim disa probleme, zgjidhja e t\u00eb cilave do t\u00eb diskutohet m\u00eb posht\u00eb.<\/p>\n<h2>Rasti \u21161. Nxjerrja e sigurt e OSD-s\u00eb nga klasteri Ceph pa humbje t\u00eb dh\u00ebnash<\/h2>\n<p>\nNevoja p\u00ebr t\u00eb nxjerr\u00eb OSD-n\u00eb mund t\u00eb shkaktohet nga nxjerrja e serverit nga klasteri \u2014 p\u00ebr shembull, p\u00ebr ta z\u00ebvend\u00ebsuar me nj\u00eb server tjet\u00ebr, \u2014 dhe kjo ndodhi me ne, q\u00eb sh\u00ebrbeu si shkak p\u00ebr t\u00eb shkruar artikullin. K\u00ebshtu, q\u00ebllimi p\u00ebrfundimtar i manipulimeve \u00ebsht\u00eb t\u00eb nxjerrim t\u00eb gjitha OSD-t\u00eb dhe mon'\u00ebt n\u00eb k\u00ebt\u00eb server, n\u00eb m\u00ebnyr\u00eb q\u00eb t\u00eb mund t\u00eb ndalohet.<\/p>\n<p>P\u00ebr leht\u00ebsi dhe p\u00ebr t\u00eb shmangur situat\u00ebn, ku gjat\u00eb ekzekutimit t\u00eb komandave mund t\u00eb gabojm\u00eb me caktimin e OSD-s\u00eb s\u00eb duhur, do t\u00eb caktuam nj\u00eb variabl\u00eb t\u00eb ve\u00e7ant\u00eb, vlera e t\u00eb cil\u00ebs do t\u00eb jet\u00eb numri i OSD-s\u00eb q\u00eb po heqim. Ta quajm\u00eb <code>${ID}<\/code> \u2014 k\u00ebtu dhe m\u00eb posht\u00eb, kjo variabl\u00eb z\u00ebvend\u00ebson numrin e OSD-s\u00eb me t\u00eb cilin po punojm\u00eb.<\/p>\n<p>Le t\u00eb shohim gjendjen para fillimit t\u00eb pun\u00ebve:<\/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>\nP\u00ebr t\u00eb iniciuar fshirjen e OSD-s\u00eb, do t\u00eb nevojitet t\u00eb kryhet ngadal\u00eb <code>ri<\/code> n\u00eb t\u00eb deri n\u00eb zero. K\u00ebshtu ne zvog\u00eblojm\u00eb sasin\u00eb e t\u00eb dh\u00ebnave n\u00eb OSD duke balancuar n\u00eb OSD t\u00eb tjera. P\u00ebr k\u00ebt\u00eb, kryhen komandat e m\u00ebposhtme:<\/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 dhe k\u00ebshtu me radh\u00eb deri n\u00eb zero.<\/p>\n<p><b>Balancimi gradual \u00ebsht\u00eb i nevojsh\u00ebm<\/b>, p\u00ebr t\u00eb mos humbur t\u00eb dh\u00ebna. Kjo \u00ebsht\u00eb ve\u00e7an\u00ebrisht e r\u00ebnd\u00ebsishme n\u00ebse ka nj\u00eb volum t\u00eb madh t\u00eb dh\u00ebnash n\u00eb OSD. P\u00ebr t\u00eb siguruar q\u00eb pas ekzekutimit t\u00eb komandave <code>ri<\/code> gjith\u00e7ka ka shkuar mir\u00eb, mund t\u00eb ekzekutoni <code>ceph -s<\/code> ose n\u00eb nj\u00eb dritare t\u00eb ve\u00e7ant\u00eb terminali t\u00eb nisni <code>ceph -w<\/code> p\u00ebr t\u00eb v\u00ebzhguar ndryshimet n\u00eb koh\u00eb reale.<\/p>\n<p>Kur OSD-ja \"t\u00eb jet\u00eb zbrazur\", mund t\u00eb vazhdoni me operacionin standard t\u00eb fshirjes s\u00eb saj. P\u00ebr k\u00ebt\u00eb, do ta \u00e7ojm\u00eb OSD-n\u00eb e nevojshme n\u00eb gjendjen <code>down<\/code>:<\/p>\n<pre><code class=\"bash\">ceph osd down osd.${ID}<\/code><\/pre>\n<p>\n\"T\u00eb heqim\" OSD-n\u00eb nga klasteri:<\/p>\n<pre><code class=\"bash\">ceph osd out osd.${ID}<\/code><\/pre>\n<p>\nDo ta ndalojm\u00eb sh\u00ebrbimin OSD dhe do ta \u00e7montojm\u00eb pjes\u00ebn e saj n\u00eb FS:<\/p>\n<pre><code class=\"bash\">systemctl stop ceph-osd@${ID}\numount \/var\/lib\/ceph\/osd\/ceph-${ID}<\/code><\/pre>\n<p>\nDo ta heqim OSD-n\u00eb nga <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/nautilus\/rados\/operations\/crush-map\/\">hart\u00ebn CRUSH<\/a><\/noindex>:<\/p>\n<pre><code class=\"bash\">ceph osd crush remove osd.${ID}<\/code><\/pre>\n<p>\nDo t\u00eb heqim p\u00ebrdoruesin OSD:<\/p>\n<pre><code class=\"bash\">ceph auth del osd.${ID}<\/code><\/pre>\n<p>\nDhe, p\u00ebrfundimisht, do ta heqim OSD-n\u00eb vet\u00eb:<\/p>\n<pre><code class=\"bash\">ceph osd rm osd.${ID}<\/code><\/pre>\n<p>\n<b>Sh\u00ebnim<\/b>: n\u00ebse po p\u00ebrdorni versionin Ceph Luminous ose m\u00eb t\u00eb lart\u00eb, at\u00ebher\u00eb veprimet e p\u00ebrshkruara m\u00eb sip\u00ebr p\u00ebr fshirjen e OSD-s\u00eb mund t\u00eb reduktohen n\u00eb dy komanda:<\/p>\n<pre><code class=\"bash\">ceph osd out osd.${ID}\nceph osd purge osd.${ID}\n<\/code><\/pre>\n<p>\nN\u00ebse pas p\u00ebrfundimit t\u00eb veprimeve t\u00eb p\u00ebrshkruara m\u00eb sip\u00ebr ekzekutoni komand\u00ebn <code>ceph osd tree<\/code>, duhet t\u00eb shihet se n\u00eb serverin ku jan\u00eb kryer pun\u00ebt, nuk ka m\u00eb OSD p\u00ebr t\u00eb cilat jan\u00eb kryer operacionet e m\u00ebsip\u00ebrme:<\/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-7       0.15619      host hv-3\n 2   ssd 0.15619      osd.2    up     1.00000  1.00000<\/code><\/pre>\n<p>\nP\u00ebrve\u00e7 k\u00ebsaj, do t\u00eb v\u00ebrejm\u00eb se gjendja e klasterit Ceph do t\u00eb kaloj\u00eb n\u00eb <code>HEALTH_WARN<\/code>, si edhe do t\u00eb shohim nj\u00eb ulje t\u00eb numrit t\u00eb OSD-ve dhe volumit t\u00eb hapur t\u00eb hap\u00ebsir\u00ebs disk. <\/p>\n<p>M\u00eb posht\u00eb do t\u00eb p\u00ebrshkruhen veprimet q\u00eb do t\u00eb nevojiten n\u00ebse d\u00ebshironi t\u00eb ndaloni plot\u00ebsisht serverin dhe, p\u00ebr rrjedhoj\u00eb, ta hiqni at\u00eb nga Ceph. N\u00eb k\u00ebt\u00eb rast, \u00ebsht\u00eb e r\u00ebnd\u00ebsishme t\u00eb mbani mend se <b>para se t\u00eb \u00e7aktivizoni serverin duhet t\u00eb hiqni t\u00eb gjitha OSD-t\u00eb<\/b> n\u00eb k\u00ebt\u00eb server.<\/p>\n<p>N\u00ebse nuk ka mbetur asnj\u00eb OSD n\u00eb k\u00ebt\u00eb server, pas heqjes s\u00eb tyre, duhet t\u00eb p\u00ebrjashtoni nga harta OSD serverin <code>hv-2<\/code>, duke ekzekutuar komand\u00ebn e m\u00ebposhtme:<\/p>\n<pre><code class=\"bash\">ceph osd crush rm hv-2<\/code><\/pre>\n<p>\nFshijm\u00eb <code>mon<\/code> nga serveri <code>hv-2<\/code>, duke komand\u00ebn m\u00eb posht\u00eb n\u00eb nj\u00eb server tjet\u00ebr (dmth. n\u00eb k\u00ebt\u00eb rast - n\u00eb <code>hv-1<\/code>):<\/p>\n<pre><code class=\"bash\">ceph-deploy mon shkat\u00ebrro hv-2<\/code><\/pre>\n<p>\nPas k\u00ebsaj, mund t\u00eb ndalni serverin dhe t\u00eb kaloni n\u00eb veprime t\u00eb tjera (si rikthim t\u00eb tij etj.).<\/p>\n<h2>Rasti \u21162. Shp\u00ebrndarja e hap\u00ebsir\u00ebs n\u00eb disk n\u00eb nj\u00eb Ceph-klaster t\u00eb krijuar tashm\u00eb<\/h2>\n<p>\nHistorin\u00eb e dyt\u00eb do ta filloj me nj\u00eb parath\u00ebnie mbi PG (<noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/mimic\/rados\/operations\/placement-groups\/\">Grupet e Vendosjes<\/a><\/noindex>). Roli kryesor i PG n\u00eb Ceph \u00ebsht\u00eb kryesisht aggregimi i objekteve Ceph dhe replicimi i m\u00ebtejsh\u00ebm n\u00eb OSD. Formula q\u00eb mund t\u00eb p\u00ebrdoret p\u00ebr t\u00eb llogaritur numrin e nevojsh\u00ebm t\u00eb PG ndodhet n\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/mimic\/rados\/operations\/placement-groups\/#choosing-the-number-of-placement-groups\">seksionin p\u00ebrkat\u00ebs<\/a><\/noindex> dokumentacionin Ceph. Aty diskutohen gjithashtu k\u00ebto \u00e7\u00ebshtje p\u00ebrmes shembujve t\u00eb konkretizuar.<\/p>\n<p>Pra, nj\u00eb nga problemet m\u00eb t\u00eb zakonshme gjat\u00eb p\u00ebrdorimit t\u00eb Ceph \u00ebsht\u00eb numri i pap\u00ebrputhsh\u00ebm i OSD dhe PG nd\u00ebrmjet grupeve n\u00eb Ceph.<\/p>\n<p>S\u00eb pari, p\u00ebr k\u00ebt\u00eb mund t\u00eb ndodhi nj\u00eb situat\u00eb ku tregohet nj\u00eb num\u00ebr i tep\u00ebrt PG n\u00eb nj\u00eb grup t\u00eb vog\u00ebl n\u00eb volum, q\u00eb n\u00eb thelb \u00ebsht\u00eb p\u00ebrdorim i paarsyesh\u00ebm i hap\u00ebsir\u00ebs n\u00eb disk n\u00eb klaster. S\u00eb dyti, n\u00eb praktik\u00eb ndodh nj\u00eb problem m\u00eb serioz: mbingarkesa e t\u00eb dh\u00ebnave n\u00eb nj\u00eb OSD. Kjo \u00e7on n\u00eb kalimin e klasterit fillimisht n\u00eb nj\u00eb gjendje <code>HEALTH_WARN<\/code>, pastaj n\u00eb <code>HEALTH_ERR<\/code>. E gjith\u00eb kjo ndodh p\u00ebr shkak se Ceph, kur llogarit volumet e disponuesh\u00ebm t\u00eb t\u00eb dh\u00ebnave (mund ta zbuloni at\u00eb me <code>MAX AVAIL<\/code> n\u00eb daljen e komand\u00ebs <code>ceph df<\/code> p\u00ebr secilin grup ve\u00e7mas) mb\u00ebshtetet n\u00eb volumet e t\u00eb dh\u00ebnave t\u00eb disponueshme n\u00eb OSD. N\u00ebse edhe n\u00eb nj\u00eb OSD ka vend t\u00eb pamjaftuesh\u00ebm, at\u00ebher\u00eb nuk do t\u00eb mund t\u00eb shkruani m\u00eb t\u00eb dh\u00ebna derisa ato t\u00eb shp\u00ebrndahen si\u00e7 duhet nd\u00ebrmjet t\u00eb gjith\u00eb OSD.<\/p>\n<p>Duhet theksuar se k\u00ebto probleme <b>zgjidhen kryesisht n\u00eb faz\u00ebn e konfigurimit t\u00eb Ceph-klasterit<\/b>. Nj\u00eb nga mjetet q\u00eb mund t\u00eb p\u00ebrdorni \u00ebsht\u00eb <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>. Me t\u00eb, llogaritet qart\u00eb numri i nevojsh\u00ebm i PG. Megjithat\u00eb, mund t\u00eb p\u00ebrdoret gjithashtu n\u00eb situat\u00ebn kur klasteri Ceph <i>tashm\u00eb<\/i> nuk \u00ebsht\u00eb konfiguruar si\u00e7 duhet. K\u00ebtu duhet t\u00eb sqarohet se gjat\u00eb pun\u00ebs p\u00ebr rregullimin, ju, m\u00eb shum\u00eb se me siguri, do t\u00eb keni nevoj\u00eb t\u00eb ulni numrin e PG, dhe kjo mund\u00ebsi nuk \u00ebsht\u00eb e disponueshme n\u00eb versionet e vjetra t\u00eb Ceph (ajo u prezantua vet\u00ebm me versionin <noindex><a rel=\"nofollow\" href=\"https:\/\/ceph.com\/rados\/new-in-nautilus-pg-merging-and-autotuning\/\">Nautilus<\/a><\/noindex>).<\/p>\n<p>Tani, imagjinoni skenarin e m\u00ebposht\u00ebm: klasteri ka status <code>HEALTH_WARN<\/code> p\u00ebr shkak se n\u00eb nj\u00eb nga OSD p\u00ebrfundon hap\u00ebsira. Kjo do t\u00eb shfaqet si nj\u00eb gabim <code>HEALTH_WARN: 1 near full osd<\/code>. M\u00eb posht\u00eb \u00ebsht\u00eb paraqitur algoritmi p\u00ebr t\u00eb dal\u00eb nga nj\u00eb situat\u00eb e till\u00eb.<\/p>\n<p>S\u00eb pari, \u00ebsht\u00eb e nevojshme t\u00eb shp\u00ebrndahen t\u00eb dh\u00ebnat ekzistuese midis OSD-ve t\u00eb tjera. Nj\u00eb operacion t\u00eb till\u00eb kemi kryer tashm\u00eb n\u00eb rastin e par\u00eb, kur \"thithnim\" nyj\u00ebn \u2014 me ndryshimin se tani do t\u00eb duhet t\u00eb zvog\u00eblojm\u00eb paksa <code>ri<\/code>. P\u00ebr shembull, deri n\u00eb 0.95:<\/p>\n<pre><code class=\"bash\">ceph osd reweight osd.${ID} 0.95<\/code><\/pre>\n<p>\nK\u00ebshtu, lirohet hap\u00ebsira e disqeve n\u00eb OSD dhe rregullohet problemi n\u00eb ceph health. Megjithat\u00eb, si\u00e7 u tha m\u00eb par\u00eb, ky problem kryesisht ndodh p\u00ebr shkak t\u00eb konfigurimit t\u00eb gabuar t\u00eb Ceph n\u00eb fazat fillestare: \u00ebsht\u00eb shum\u00eb e r\u00ebnd\u00ebsishme t\u00eb b\u00ebhet rikonfigurimi, n\u00eb m\u00ebnyr\u00eb q\u00eb ai t\u00eb mos shfaqet n\u00eb t\u00eb ardhmen.<\/p>\n<p>N\u00eb rastin ton\u00eb konkret, gjith\u00e7ka zavend\u00ebsohet n\u00eb:<\/p>\n<ul>\n<li> nj\u00eb vler\u00eb shum\u00eb t\u00eb lart\u00eb <code>replication_count<\/code> n\u00eb nj\u00eb nga pool-et,<\/li>\n<li> nj\u00eb num\u00ebr shum\u00eb t\u00eb lart\u00eb PG n\u00eb nj\u00eb pool dhe shum\u00eb t\u00eb ul\u00ebt \u2014 n\u00eb tjetrin. <\/li>\n<\/ul>\n<p>\nDo t\u00eb p\u00ebrdorim kalkulatorin e p\u00ebrmendur m\u00eb par\u00eb. Atij i \u00ebsht\u00eb treguar qart\u00eb se \u00e7far\u00eb duhet t\u00eb futet dhe, n\u00eb p\u00ebrgjith\u00ebsi, nuk ka asgj\u00eb t\u00eb komplikuar. Duke caktuar parametrat e nevojsh\u00ebm, marrim rekomandimet e m\u00ebposhtme:<\/p>\n<p><i><b>Sh\u00ebnim<\/b>: n\u00ebse po konfiguroni nj\u00eb klaster Ceph nga fillimi, nj\u00eb funksion tjet\u00ebr i dobish\u00ebm i kalkulatorit do t\u00eb jet\u00eb gjenerimi i komandave q\u00eb do t\u00eb krijojn\u00eb pool me parametra t\u00eb caktuar n\u00eb tabel\u00eb.<\/i><\/p>\n<p>Ndihmon t\u00eb orientohesh kolona e fundit \u2014 <i>Suggested PG Count<\/i>. N\u00eb rastin ton\u00eb, e dobishme \u00ebsht\u00eb edhe e dyta, ku tregohet parimi i replikimit, sepse vendos\u00ebm t\u00eb ndryshojm\u00eb dhe faktor\u00ebt e replikimit.<\/p>\n<p>Pra, fillimisht do t\u00eb nevojitet t\u00eb ndryshohen parametrat e replikimit \u2014 kjo duhet t\u00eb b\u00ebhet m\u00eb par\u00eb, sepse, duke zvog\u00ebluar faktor\u00ebt, do t\u00eb lirohet hap\u00ebsira diskore. Gjat\u00eb ekzekutimit t\u00eb komand\u00ebs mund t\u00eb v\u00ebreni se vlera e hap\u00ebsir\u00ebs diskore t\u00eb disponueshme do t\u00eb rritet:<\/p>\n<pre><code class=\"bash\">ceph osd pool $pool_name set $replication_size<\/code><\/pre>\n<p>\nDhe pas p\u00ebrfundimit t\u00eb saj \u2014 ndryshojm\u00eb vlerat e parametrave <code>pg_num<\/code> dhe <code>pgp_num<\/code> n\u00eb m\u00ebnyr\u00eb t\u00eb till\u00eb:<\/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>\u00cbht\u00eb e r\u00ebnd\u00ebsishme<\/b>: ne duhet t\u00eb ndryshojm\u00eb radhazi numrin e PG n\u00eb \u00e7do pool dhe t\u00eb mos ndryshojm\u00eb vlerat n\u00eb pool-et e tjera, derisa t\u00eb zhduken paralajm\u00ebrimet <i>\"Degraded data redundancy\"<\/i> dhe <i>\"n-number of pgs degraded\"<\/i>.<\/p>\n<p>T\u00eb kontrolloni n\u00ebse gjith\u00e7ka ka shkuar me sukses, mund t\u00eb b\u00ebni gjithashtu p\u00ebrmes rezultateve t\u00eb komandave <code>ceph health detail<\/code> dhe <code>ceph -s<\/code>.<\/p>\n<h2>Rasti Nr. 3. Migrimi i nj\u00eb maine virtuale me LVM n\u00eb Ceph RBD<\/h2>\n<p>\nN\u00eb situat\u00ebn kur projekti p\u00ebrdor makina virtuale t\u00eb instaluara n\u00eb servera bare-metal t\u00eb marr\u00eb me qira, shpesh lind pyetja p\u00ebr ruajtjen e q\u00ebndrueshme. Po ashtu, \u00ebsht\u00eb shum\u00eb e d\u00ebshirueshme q\u00eb hap\u00ebsira n\u00eb k\u00ebt\u00eb ruajtje t\u00eb jet\u00eb e mjaftueshme... Nj\u00eb situat\u00eb tjet\u00ebr e zakonshme: ka nj\u00eb makin\u00eb virtuale me ruajtje lokale n\u00eb server dhe \u00ebsht\u00eb e nevojshme t\u00eb zgjerohet disku, por nuk ka ku, pasi nuk ka mbetur hap\u00ebsir\u00eb e lir\u00eb n\u00eb server.<\/p>\n<p>Problemi mund t\u00eb zgjidhet n\u00eb m\u00ebnyra t\u00eb ndryshme \u2014 p\u00ebr shembull, duke migruar n\u00eb nj\u00eb server tjet\u00ebr (n\u00ebse ka nj\u00eb t\u00eb till\u00eb) ose duke shtuar disqe t\u00eb reja n\u00eb server. Por nuk \u00ebsht\u00eb gjithmon\u00eb e mundur ta b\u00ebsh k\u00ebt\u00eb, ndaj migrimi nga LVM n\u00eb Ceph mund t\u00eb jet\u00eb nj\u00eb zgjidhje e shk\u00eblqyer p\u00ebr k\u00ebt\u00eb problem. Duke zgjedhur k\u00ebt\u00eb variant, ne gjithashtu e thjeshtojm\u00eb procesin e m\u00ebtejsh\u00ebm t\u00eb migrimit midis serverave, pasi nuk do t\u00eb jet\u00eb e nevojshme t\u00eb l\u00ebvizim ruajtjen lokale nga nj\u00eb hipervizor n\u00eb nj\u00eb tjet\u00ebr. E vetmja penges\u00eb \u2014 do t\u00eb duhet t\u00eb ndalojm\u00eb VM-n\u00eb p\u00ebr koh\u00ebn e kryerjes s\u00eb punimeve.<\/p>\n<p>Si\u00e7 po aludohet m\u00eb posht\u00eb <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\">artikulli nga ky blog<\/a><\/noindex>, udh\u00ebzimi i t\u00eb cilit \u00ebsht\u00eb provuar n\u00eb veprim. P\u00ebr ta th\u00ebn\u00eb ndryshe, <b>atje p\u00ebrmendet gjithashtu edhe nj\u00eb m\u00ebnyr\u00eb e migrimit t\u00eb thjesht\u00eb<\/b>, ndon\u00ebse n\u00eb rastin ton\u00eb ai thjesht nuk ishte i nevojsh\u00ebm, prandaj nuk e kemi kontrolluar. N\u00ebse kjo \u00ebsht\u00eb thelb\u00ebsore p\u00ebr projektin tuaj \u2014 do t\u00eb ishim t\u00eb lumtur t\u00eb m\u00ebsojm\u00eb p\u00ebr rezultatet n\u00eb komentet.<\/p>\n<p>T\u00eb kalojm\u00eb n\u00eb pjes\u00ebn praktike. N\u00eb shembullin ton\u00eb ne p\u00ebrdorim virsh dhe, p\u00ebr pasoj\u00eb, libvirt. N\u00eb fillim sigurohuni q\u00eb puli Ceph, n\u00eb t\u00eb cilin do t\u00eb migrohen t\u00eb dh\u00ebnat, \u00ebsht\u00eb lidhur me libvirt:<\/p>\n<pre><code class=\"bash\">virsh pool-dumpxml $ceph_pool<\/code><\/pre>\n<p>\nN\u00eb p\u00ebrshkrimin e pulit duhet t\u00eb jen\u00eb t\u00eb dh\u00ebnat e lidhjes me Ceph me t\u00eb dh\u00ebna p\u00ebr autorizim. <\/p>\n<p>Hapi tjet\u00ebr p\u00ebrfshin konvertimin e imazhit LVM n\u00eb Ceph RBD. Koha e realizimit varet kryesisht nga madh\u00ebsia e imazhit:<\/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>\nPas konvertimit do t\u00eb mbetet imazhi LVM, i cili do t\u00eb jet\u00eb i dobish\u00ebm n\u00eb rast se migrimi i VM-s\u00eb n\u00eb RBD nuk do t\u00eb jet\u00eb i suksessh\u00ebm dhe do t\u00eb duhet t\u00eb kthehemi prapa. Po ashtu \u2014 p\u00ebr mund\u00ebsin\u00eb e shpejt\u00eb t\u00eb rikthimit t\u00eb ndryshimeve \u2014 do t\u00eb b\u00ebjm\u00eb nj\u00eb kopje rezerv\u00eb t\u00eb skedarit t\u00eb konfigurimit t\u00eb makin\u00ebs virtuale:<\/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\u2026 dhe do t\u00eb redaktojm\u00eb origjinalin (<code>vm_name.xml<\/code>). Do t\u00eb gjejm\u00eb bllokun me p\u00ebrshkrimin e diskut (fillon me rreshtin <code>&lt;disk type='file' device='disk'&gt;<\/code> dhe p\u00ebrfundon n\u00eb <code>&lt;\/disk&gt;<\/code>) dhe do ta \u00e7ojm\u00eb at\u00eb n\u00eb form\u00ebn e m\u00ebposhtme:<\/p>\n<pre><code class=\"xml\"><address \/><\/code><\/pre>\n<p>\nShikojm\u00eb disa detaje:<\/p>\n<ol>\n<li> N\u00eb protokoll <code>source<\/code> tregohet adresa e magazinimit n\u00eb Ceph RBD (kjo \u00ebsht\u00eb adresa q\u00eb p\u00ebrmban emrin e Ceph pool dhe RBD imazhin, i cili u p\u00ebrcaktua n\u00eb faz\u00ebn e par\u00eb).<\/li>\n<li> N\u00eb bllokun <code>sekret<\/code> caktohet tipi <code>ceph<\/code>, si dhe UUID i sekretit p\u00ebr lidhje me t\u00eb. UUID i tij mund t\u00eb merret duke p\u00ebrdorur komand\u00ebn <code>virsh secret-list<\/code>.<\/li>\n<li> N\u00eb bllokun <code>host<\/code> ku tregohet adresat e monitor\u00ebve Ceph.<\/li>\n<\/ol>\n<p>\nPas redaktimit t\u00eb skedarit t\u00eb konfigurimit dhe p\u00ebrfundimit t\u00eb konvertimit t\u00eb LVM n\u00eb RBD, mund t\u00eb aplikoni skedarin e ri t\u00eb konfigurimit dhe t\u00eb nisni makin\u00ebn virtuale:<\/p>\n<pre><code class=\"bash\">virsh define $vm_name.xml\nvirsh start $vm_name<\/code><\/pre>\n<p>\nKa ardhur koha t\u00eb kontrolloni n\u00ebse makina virtuale \u00ebsht\u00eb nisur si\u00e7 duhet: mund ta kontrolloni, p\u00ebr shembull, duke u lidhur me t\u00eb p\u00ebrmes SSH ose p\u00ebrmes <code>virsh<\/code>. <\/p>\n<p>N\u00ebse makina virtuale funksionon si\u00e7 duhet dhe nuk keni zbuluar probleme t\u00eb tjera, at\u00ebher\u00eb mund ta hiqni imazhin LVM, i cili nuk p\u00ebrdoret m\u00eb:<\/p>\n<pre><code class=\"bash\">lvremove main\/$vm_image_name<\/code><\/pre>\n<p><\/p>\n<h2>P\u00ebrfundim<\/h2>\n<p>\nT\u00eb gjitha rastet e p\u00ebrshkruara i kemi hasur n\u00eb praktik\u00eb \u2014 shpresojm\u00eb q\u00eb k\u00ebto udh\u00ebzime do t'i ndihmojn\u00eb edhe administratoret e tjer\u00eb t\u00eb zgjidhin probleme t\u00eb ngjashme. N\u00ebse keni v\u00ebrejtje ose histori t\u00eb tjera t\u00eb ngjashme nga p\u00ebrvoja e p\u00ebrdorimit t\u00eb Ceph \u2014 do t\u00eb na p\u00eblqente t'i shihnim ato n\u00eb komentet!<\/p>\n<h2>P.S.<\/h2>\n<p>\nLexoni gjithashtu n\u00eb blogun ton\u00eb:<\/p>\n<ul>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/477680\/\">Duhet t\u00eb merrni me mend: rikuperimi i klasterit Rook n\u00eb K8s<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/451818\/\">Rook apo jo Rook \u2014 kjo \u00ebsht\u00eb \u00e7\u00ebshtja<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/348044\/\">Rook \u00ebsht\u00eb nj\u00eb ruajtje t\u00eb dh\u00ebnash \"vet\u00eb-sh\u00ebrbimi\" p\u00ebr Kubernetes<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/329666\/\">Krijojm\u00eb nj\u00eb ruajtje t\u00eb p\u00ebrhershme me provisioning n\u00eb Kubernetes duke p\u00ebrdorur Ceph<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Burimi: <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.2 - 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\/sq\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\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\/sq\/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\udd47K\u00ebshilla &amp; truk\u00eb n\u00eb pun\u00ebn me Ceph n\u00eb projekte t\u00eb ngarkuara | ProHoster","description":"Duke p\u00ebrdorur Ceph si nj\u00eb magazin\u00eb rrjeti n\u00eb.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\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\/sq\/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\/sq\/wp-json\/wp\/v2\/posts\/77266","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=77266"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/77266\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/77267"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=77266"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=77266"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=77266"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}