{"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\/it\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah","title":{"rendered":"Consigli e trucchi per lavorare con Ceph in progetti ad alta intensit\u00e0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Tips &amp; tricks per lavorare con Ceph in progetti ad alta intensit\u00e0\" src=\"\/wp-content\/uploads\/2020\/04\/1d60f91e55b20a5dc4346bd8087bc11e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nUtilizzando Ceph come archivio di rete in progetti con carichi diversi, possiamo affrontare varie sfide che, a prima vista, non sembrano semplici o banali. Per esempio:<\/p>\n<ul>\n<li> migrazione dei dati da un vecchio Ceph a uno nuovo con un utilizzo parziale dei server precedenti nel nuovo cluster;<\/li>\n<li> risoluzione del problema della distribuzione dello spazio su disco in Ceph.<\/li>\n<\/ul>\n<p>\nAffrontando tali sfide, ci troviamo nella necessit\u00e0 di estrarre correttamente l'OSD senza perdere dati, un aspetto particolarmente rilevante quando si gestiscono grandi volumi di dati. Di questo parleremo nell'articolo.<\/p>\n<p>I metodi descritti di seguito sono rilevanti per tutte le versioni di Ceph. Inoltre, sar\u00e0 considerato il fatto che Ceph pu\u00f2 contenere grandi volumi di dati: per prevenire perdite di dati e altri problemi, alcune azioni saranno 'suddivise' in diverse altre.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Prefazione sugli OSD<\/h3>\n<p>\nPoich\u00e9 due dei tre ricette analizzate sono dedicate agli OSD (<noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/master\/man\/8\/ceph-osd\/\">Object Storage Daemon<\/a><\/noindex>), prima di tuffarci nella parte pratica, facciamo un breve accenno a cosa siano effettivamente in Ceph e perch\u00e9 siano cos\u00ec importanti.<\/p>\n<p>Innanzitutto, si deve dire che l'intero cluster Ceph \u00e8 composto da numerosi OSD. Pi\u00f9 OSD abbiamo, maggiore sar\u00e0 lo spazio di archiviazione disponibile in Ceph. Da qui, \u00e8 facile capire <b>la funzione principale degli OSD<\/b>: essi memorizzano i dati degli oggetti Ceph sui file system di tutti i nodi del cluster e offrono accesso di rete a questi dati (per lettura, scrittura e altre richieste).<\/p>\n<p>A questo stesso livello vengono impostati i parametri di replica tramite la copia degli oggetti tra i diversi OSD. Qui si possono presentare varie problematiche, le cui soluzioni saranno trattate in seguito.<\/p>\n<h2>Caso n. 1. Estrarre in sicurezza un OSD dal cluster Ceph senza perdere dati<\/h2>\n<p>\nLa necessit\u00e0 di estrarre un OSD pu\u00f2 derivare dall'uscita di un server dal cluster, ad esempio, per sostituirlo con un altro server, ed \u00e8 proprio ci\u00f2 che ci \u00e8 accaduto, spingendoci a scrivere questo articolo. Pertanto, l'obiettivo finale delle manovre \u00e8 estrarre tutti gli OSD e i mon su questo server, affinch\u00e9 possa essere spento.<\/p>\n<p>Per comodit\u00e0 e per escludere situazioni in cui potremmo commettere errori nell'indicazione del giusto OSD durante l'esecuzione dei comandi, imposteremo una variabile separata, il cui valore sar\u00e0 il numero dell'OSD da rimuovere. La chiameremo <code>${ID}<\/code> \u2014 qui e in seguito, tale variabile sostituisce il numero dell'OSD con cui stiamo lavorando.<\/p>\n<p>Diamo un'occhiata allo stato prima di iniziare i lavori:<\/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>\nPer avviare la rimozione di un OSD, \u00e8 necessario eseguire un <code>riaggiustamento<\/code> graduale fino a zero. In questo modo riduciamo la quantit\u00e0 di dati nell'OSD bilanciando verso altri OSD. A tal fine, si eseguono i seguenti comandi:<\/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 e cos\u00ec via fino a zero.<\/p>\n<p><b>Il bilanciamento graduale \u00e8 necessario<\/b>, per non perdere dati. Questo \u00e8 particolarmente importante se l'OSD contiene un grande volume di dati. Per assicurarci che dopo l'esecuzione dei comandi <code>riaggiustamento<\/code> tutto sia andato a buon fine, possiamo eseguire <code>ceph -s<\/code> oppure in una finestra separata del terminale eseguire <code>ceph -w<\/code> per osservare le modifiche in tempo reale.<\/p>\n<p>Quando l'OSD \u00e8 \"svuotato\", possiamo procedere con l'operazione standard di rimozione. A tal fine, mettiamo l'OSD desiderato nello stato <code>down<\/code>:<\/p>\n<pre><code class=\"bash\">ceph osd down osd.${ID}<\/code><\/pre>\n<p>\n\"Tiriamo fuori\" l'OSD dal cluster:<\/p>\n<pre><code class=\"bash\">ceph osd out osd.${ID}<\/code><\/pre>\n<p>\nArrestiamo il servizio OSD e smontiamo la sua partizione nel file system:<\/p>\n<pre><code class=\"bash\">systemctl stop ceph-osd@${ID}\numount \/var\/lib\/ceph\/osd\/ceph-${ID}<\/code><\/pre>\n<p>\nRimuoviamo l'OSD dalla <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/nautilus\/rados\/operations\/crush-map\/\">mappa CRUSH<\/a><\/noindex>:<\/p>\n<pre><code class=\"bash\">ceph osd crush remove osd.${ID}<\/code><\/pre>\n<p>\nRimuoviamo l'utente OSD:<\/p>\n<pre><code class=\"bash\">ceph auth del osd.${ID}<\/code><\/pre>\n<p>\nE, infine, rimuoviamo l'OSD stesso:<\/p>\n<pre><code class=\"bash\">ceph osd rm osd.${ID}<\/code><\/pre>\n<p>\n<b>Nota<\/b>: se stai utilizzando una versione di Ceph Luminous o superiore, le azioni descritte sopra per rimuovere l'OSD possono essere riassunte in due comandi:<\/p>\n<pre><code class=\"bash\">ceph osd out osd.${ID}\nceph osd purge osd.${ID}\n<\/code><\/pre>\n<p>\nSe dopo aver eseguito le azioni descritte sopra si esegue il comando <code>ceph osd tree<\/code>, dovrebbe essere visibile che sul server dove sono state eseguite le operazioni non ci sono pi\u00f9 OSD per i quali sono state svolte le operazioni sopra:<\/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>\nNel frattempo, noteremo che lo stato del cluster Ceph passer\u00e0 a <code>HEALTH_WARN<\/code>, e vedremo anche una diminuzione del numero di OSD e dello spazio disco disponibile. <\/p>\n<p>Successivamente verranno descritti i passaggi necessari se si desidera fermare completamente il server e, di conseguenza, rimuoverlo da Ceph. In tal caso, \u00e8 importante ricordare che <b>prima di spegnere il server \u00e8 necessario estrarre tutti gli OSD<\/b> su questo server.<\/p>\n<p>Se su questo server non ci sono pi\u00f9 OSD, dopo la loro rimozione \u00e8 necessario escludere dalla mappa OSD il server <code>hv-2<\/code>, eseguendo il seguente comando:<\/p>\n<pre><code class=\"bash\">ceph osd crush rm hv-2<\/code><\/pre>\n<p>\nRimuoviamo <code>mon<\/code> dal server <code>hv-2<\/code>, eseguendo il comando qui sotto su un altro server (cio\u00e8 in questo caso \u2014 su <code>hv-1<\/code>):<\/p>\n<pre><code class=\"bash\">ceph-deploy mon destroy hv-2<\/code><\/pre>\n<p>\nDopo di ci\u00f2, puoi spegnere il server e procedere con le azioni successive (la sua ridistribuzione, ecc.).<\/p>\n<h2>Caso n. 2. Distribuzione dello spazio su disco in un cluster Ceph gi\u00e0 creato<\/h2>\n<p>\nInizier\u00f2 la seconda storia con un preambolo sui PG (<noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/mimic\/rados\/operations\/placement-groups\/\">Placement Groups<\/a><\/noindex>). Il ruolo principale dei PG in Ceph \u00e8, prima di tutto, quello di aggregare gli oggetti Ceph e di replicarli nei OSD. La formula per calcolare il numero necessario di PG si trova nella <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ceph.com\/docs\/mimic\/rados\/operations\/placement-groups\/#choosing-the-number-of-placement-groups\">sezione corrispondente<\/a><\/noindex> documentazione di Ceph. Qui la questione \u00e8 trattata anche con esempi concreti.<\/p>\n<p>Dunque, uno dei problemi pi\u00f9 comuni nell'uso di Ceph \u00e8 un numero sbilanciato di OSD e PG tra i pool in Ceph.<\/p>\n<p>In primo luogo, potrebbe sorgere una situazione in cui viene indicato un numero eccessivo di PG in un pool di piccole dimensioni, il che in sostanza rappresenta un utilizzo irrazionale dello spazio su disco nel cluster. In secondo luogo, nella pratica si presenta un problema pi\u00f9 grave: l'overflow dei dati in uno dei OSD. Questo comporta il passaggio del cluster prima in uno stato <code>HEALTH_WARN<\/code>, e poi anche <code>HEALTH_ERR<\/code>. Il colpevole \u00e8 che Ceph, nel calcolare il volume di dati disponibile (che puoi conoscere da <code>MAX AVAIL<\/code> nell'output del comando <code>ceph df<\/code> per ogni pool separatamente) si basa sul volume di dati disponibili negli OSD. Se anche solo in uno degli OSD non c'\u00e8 spazio sufficiente, non sar\u00e0 possibile scrivere ulteriori dati finch\u00e9 i dati non saranno distribuiti correttamente tra tutti gli OSD.<\/p>\n<p>Va notato che questi problemi <b>vengono risolti in maggiore misura nella fase di configurazione del cluster Ceph<\/b>. Uno degli strumenti che puoi utilizzare \u00e8 <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>. Con esso, si calcola chiaramente il numero necessario di PG. Tuttavia, puoi ricorrervi anche in situazioni in cui il cluster Ceph <i>ha gi\u00e0<\/i> \u00e8 configurato in modo errato. Qui \u00e8 importante chiarire che nel corso dei lavori di correzione, probabilmente dovrai ridurre il numero di PG, e questa possibilit\u00e0 non \u00e8 accessibile nelle vecchie versioni di Ceph (\u00e8 stata introdotta solo a partire dalla versione <noindex><a rel=\"nofollow\" href=\"https:\/\/ceph.com\/rados\/new-in-nautilus-pg-merging-and-autotuning\/\">Nautilus<\/a><\/noindex>).<\/p>\n<p>Immaginiamo dunque la seguente situazione: il cluster ha uno stato <code>HEALTH_WARN<\/code> a causa del fatto che in uno degli OSD sta finendo lo spazio. Questo sar\u00e0 indicato da un errore <code>HEALTH_WARN: 1 near full osd<\/code>. Di seguito \u00e8 presentato un algoritmo per uscire da tale situazione.<\/p>\n<p>In primo luogo, \u00e8 necessario distribuire i dati esistenti tra gli altri OSD. Un'operazione simile \u00e8 stata gi\u00e0 eseguita nel primo caso, quando abbiamo \"disidratato\" un nodo \u2014 con l'unica differenza che ora sar\u00e0 necessario ridurre leggermente <code>riaggiustamento<\/code>. Ad esempio, fino a 0.95:<\/p>\n<pre><code class=\"bash\">ceph osd reweight osd.${ID} 0.95<\/code><\/pre>\n<p>\nIn questo modo si libera spazio su disco negli OSD e si risolve l'errore in ceph health. Tuttavia, come gi\u00e0 detto, questo problema si verifica principalmente a causa di una configurazione errata di Ceph nelle fasi iniziali: \u00e8 molto importante fare la riconfigurazione affinch\u00e9 non si manifesti in futuro.<\/p>\n<p>Nel nostro caso specifico, tutto dipendeva da:<\/p>\n<ul>\n<li> un valore troppo alto <code>replication_count<\/code> in uno dei pool,<\/li>\n<li> un numero di PG troppo alto in un pool e troppo basso in un altro. <\/li>\n<\/ul>\n<p>\nUtilizziamo il calcolatore gi\u00e0 menzionato. Esso mostra chiaramente cosa \u00e8 necessario inserire e, in linea di principio, non c'\u00e8 nulla di complicato. Impostando i parametri necessari, otteniamo le seguenti raccomandazioni:<\/p>\n<p><i><b>Nota<\/b>: se stai configurando un cluster Ceph da zero, un'altra funzionalit\u00e0 utile del calcolatore sar\u00e0 la generazione di comandi che creeranno pool da zero con i parametri specificati nella tabella.<\/i><\/p>\n<p>L'ultimo colonna aiuta a orientarsi \u2014 <i>Suggested PG Count<\/i>. Nel nostro caso, utile \u00e8 anche il secondo, dove \u00e8 indicato il parametro di replica, poich\u00e9 abbiamo deciso di modificare anche il fattore di replica.<\/p>\n<p>Quindi, per prima cosa, sar\u00e0 necessario modificare i parametri di replica: \u00e8 consigliabile farlo prima di tutto, poich\u00e9 riducendo il fattore libereremo spazio su disco. Durante l'esecuzione del comando, si pu\u00f2 notare che il valore dello spazio disponibile aumenter\u00e0:<\/p>\n<pre><code class=\"bash\">ceph osd pool $pool_name set $replication_size<\/code><\/pre>\n<p>\nE dopo il suo completamento, modificare i valori dei parametri <code>pg_num<\/code> e <code>pgp_num<\/code> nel seguente modo:<\/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>Importante<\/b>: dobbiamo modificare sequentially il numero di PG in ogni pool e non cambiare i valori in altri pool finch\u00e9 non scompaiono gli avvisi <i>\"Degraded data redundancy\"<\/i> e <i>\"n-number of pgs degraded\"<\/i>.<\/p>\n<p>Verificare che tutto sia andato a buon fine pu\u00f2 essere fatto anche dai risultati dei comandi <code>ceph health detail<\/code> e <code>ceph -s<\/code>.<\/p>\n<h2>Caso n.\u00b03. Migrazione di una macchina virtuale da LVM a Ceph RBD<\/h2>\n<p>\nNella situazione in cui nel progetto vengono utilizzate macchine virtuali installate su server bare-metal a noleggio, spesso si pone la questione di uno storage altamente disponibile. \u00c8 inoltre molto desiderabile che ci sia abbastanza spazio in questo storage... Un'altra situazione comune: c'\u00e8 una macchina virtuale con storage locale sul server e \u00e8 necessario espandere il disco, ma non c'\u00e8 spazio disponibile, poich\u00e9 non \u00e8 rimasto spazio libero sul server.<\/p>\n<p>Il problema pu\u00f2 essere risolto in vari modi \u2014 ad esempio, migrando su un altro server (se ne esiste uno) o aggiungendo nuovi dischi al server. Ma non sempre \u00e8 possibile farlo, quindi la migrazione da LVM a Ceph pu\u00f2 essere una ottima soluzione a questo problema. Scegliendo questa opzione, semplifichiamo anche il processo di migrazione tra i server, poich\u00e9 non sar\u00e0 necessario spostare lo storage locale da un hypervisor all'altro. L'unico inconveniente \u00e8 che dovr\u00e0 essere fermata la VM per il tempo necessario ai lavori.<\/p>\n<p>Come ricetta riportata di seguito \u00e8 presa <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\">un articolo di questo blog<\/a><\/noindex>, le cui istruzioni sono state testate in azione. A proposito, <b>l\u00ec viene descritto anche un modo di migrazione senza difficolt\u00e0<\/b>, ma nel nostro caso non ci \u00e8 stato necessario, quindi non l'abbiamo verificato. Se questo \u00e8 critico per il tuo progetto, saremo lieti di conoscere i risultati nei commenti.<\/p>\n<p>Iniziamo con la parte pratica. Nell'esempio utilizziamo virsh e, di conseguenza, libvirt. Prima di tutto, assicurati che il pool di Ceph, a cui verranno migrati i dati, sia connesso a libvirt:<\/p>\n<pre><code class=\"bash\">virsh pool-dumpxml $ceph_pool<\/code><\/pre>\n<p>\nNella descrizione del pool dovrebbero esserci i dati di connessione a Ceph con i dati per l'autenticazione. <\/p>\n<p>La fase successiva consiste nel convertire l'immagine LVM in Ceph RBD. Il tempo di esecuzione dipende principalmente dalla dimensione dell'immagine:<\/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>\nDopo la conversione rimarr\u00e0 l'immagine LVM, che sar\u00e0 utile nel caso in cui la migrazione della VM in RBD non vada a buon fine e sia necessario ripristinare le modifiche. Inoltre \u2014 per avere la possibilit\u00e0 di ripristinare rapidamente le modifiche \u2014 faremo un backup del file di configurazione della macchina 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 e modificheremo l'originale (<code>vm_name.xml<\/code>). Troveremo il blocco con la descrizione del disco (che inizia con la riga <code>&lt;disk type='file' device='disk'&gt;<\/code> e termina con <code>&lt;\/disk&gt;<\/code>) e lo porteremo nella seguente forma:<\/p>\n<pre><code class=\"xml\"><address \/><\/code><\/pre>\n<p>\nAnalizziamo alcuni dettagli:<\/p>\n<ol>\n<li> Nel protocollo <code>source<\/code> si indica l'indirizzo dello storage in Ceph RBD (questo \u00e8 l'indirizzo con il nome del ceph-pool e dell'immagine RBD definita nella prima fase).<\/li>\n<li> Nella sezione <code>secret<\/code> si indica il tipo <code>ceph<\/code>, cos\u00ec come l'UUID del segreto per la connessione. Il suo uuid pu\u00f2 essere ottenuto con il comando <code>virsh secret-list<\/code>.<\/li>\n<li> Nella sezione <code>host<\/code> si indicano gli indirizzi dei monitor Ceph.<\/li>\n<\/ol>\n<p>\nDopo aver modificato il file di configurazione e completato la conversione da LVM a RBD, \u00e8 possibile applicare il file di configurazione modificato e avviare la macchina virtuale:<\/p>\n<pre><code class=\"bash\">virsh define $vm_name.xml\nvirsh start $vm_name<\/code><\/pre>\n<p>\n\u00c8 il momento di controllare che la macchina virtuale sia avviata correttamente: \u00e8 possibile verificarlo, ad esempio, collegandosi via SSH o tramite <code>virsh<\/code>. <\/p>\n<p>Se la macchina virtuale funziona correttamente e non hai riscontrato altri problemi, puoi rimuovere l'immagine LVM, che non \u00e8 pi\u00f9 utilizzata:<\/p>\n<pre><code class=\"bash\">lvremove main\/$vm_image_name<\/code><\/pre>\n<p><\/p>\n<h2>Conclusione<\/h2>\n<p>\nAbbiamo affrontato tutti i casi descritti nella pratica \u2014 speriamo che queste istruzioni possano aiutare anche altri amministratori a risolvere problemi simili. Se hai osservazioni o altre esperienze simili con l'utilizzo di Ceph \u2014 ci farebbe piacere vederle nei commenti!<\/p>\n<h2>P.S.<\/h2>\n<p>\nLeggi anche nel nostro blog:<\/p>\n<ul>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/477680\/\">Le nostre mani non sono per la noia: recupero del cluster Rook in K8s<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/451818\/\">Rook o non Rook \u2014 questo \u00e8 il problema<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/348044\/\">Rook \u00e8 uno storage \"self-service\" per Kubernetes<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/329666\/\">Creiamo uno storage permanente con provisioning in Kubernetes basato su Ceph<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Fonte: <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.1.1 - 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\/it\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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\/it\/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\udd47Tips &amp; tricks per lavorare con Ceph in progetti ad alta intensit\u00e0 | ProHoster","description":"Utilizzando Ceph come storage di rete in.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/tips-tricks-v-rabote-s-ceph-v-nagruzhennyh-proektah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","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\/it\/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\/it\/wp-json\/wp\/v2\/posts\/77266","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=77266"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/77266\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/77267"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=77266"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=77266"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=77266"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}