{"id":94388,"date":"2020-09-16T07:43:39","date_gmt":"2020-09-16T05:43:39","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes"},"modified":"2020-09-16T07:43:39","modified_gmt":"2020-09-16T05:43:39","slug":"hranenie-dannyh-v-klastere-kubernetes","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes","title":{"rendered":"Archiviazione dei dati in un cluster Kubernetes","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>\u00c8 possibile configurare lo storage dei dati delle applicazioni eseguite in un cluster Kubernetes in vari modi. Alcuni di essi sono obsoleti, mentre altri sono recenti. In questo articolo esploreremo il concetto di tre opzioni di connessione allo storage, inclusa l'ultima: la connessione tramite Container Storage Interface.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Archiviazione dei dati in un cluster Kubernetes\" src=\"\/wp-content\/uploads\/2020\/09\/c045dc02cc4db1a0693730574a02eb4a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"sposob-1-ukazanie-pv-v-manifeste-poda\">Metodo 1. Specifica del PV nel manifesto del pod<\/h2>\n<p><\/p>\n<p>Un tipico manifesto che descrive un pod in un cluster Kubernetes: <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Archiviazione dei dati in un cluster Kubernetes\" src=\"\/wp-content\/uploads\/2020\/09\/1df1b236df758f4a4a18905d31413617.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Le parti del manifesto in evidenza indicano quale volume viene collegato e dove.<\/p>\n<p><\/p>\n<p>Nella sezione <strong>volumeMounts<\/strong> indica i punti di montaggio (mountPath) \u2014 in quale cartella all'interno del contenitore verr\u00e0 montato il volume persistente, cos\u00ec come il nome del volume.<\/p>\n<p><\/p>\n<p>Nella sezione <strong>x<\/strong> elenca tutti i volumi utilizzati nel pod. Indica il nome di ogni volume, cos\u00ec come il tipo (nel nostro caso: awsElasticBlockStore) e i parametri di connessione. I parametri specifici elencati nel manifesto dipendono dal tipo di volume.<\/p>\n<p><\/p>\n<p>Lo stesso volume pu\u00f2 essere montato simultaneamente in pi\u00f9 contenitori del pod. Cos\u00ec, diversi processi dell'applicazione possono accedere agli stessi dati. <\/p>\n<p><\/p>\n<p>Questo metodo di connessione \u00e8 stato ideato all'inizio, quando Kubernetes stava appena emergendo, e oggi \u00e8 obsoleto.<\/p>\n<p><\/p>\n<p>L'utilizzo di questo comporta diversi problemi: <\/p>\n<p><\/p>\n<ol>\n<li>tutti i volumi devono essere creati manualmente, Kubernetes non pu\u00f2 crearne nessuno per noi;<\/li>\n<li>le impostazioni di accesso a ciascun volume sono uniche e devono essere specificate nei manifest di tutti i pod che utilizzano il volume;<\/li>\n<li>per cambiare il sistema di archiviazione (ad esempio, passare da AWS a Google Cloud), \u00e8 necessario modificare le impostazioni e il tipo di volumi collegati in tutti i manifest.<\/li>\n<\/ol>\n<p><\/p>\n<p>Tutto ci\u00f2 \u00e8 molto scomodo, quindi nella pratica questo metodo viene utilizzato solo per connettere alcuni tipi speciali di volumi: configMap, secret, emptyDir, hostPath:<\/p>\n<p><\/p>\n<ul>\n<li>\n<p>configMap e secret sono volumi di servizio, consentono di creare un volume con file dai manifest di Kubernetes nel contenitore.<\/p>\n<p>\n<\/li>\n<li>\n<p>emptyDir \u00e8 un volume temporaneo, creato solo per la durata del pod. \u00c8 comodo da utilizzare per test o per memorizzare dati temporanei. Quando il pod viene eliminato, anche il volume di tipo emptyDir viene eliminato e tutti i dati vengono persi.<\/p>\n<p>\n<\/li>\n<li>\n<p>hostPath \u2014 consente di montare all'interno del contenitore dell'applicazione qualsiasi directory del disco locale del server su cui \u00e8 in esecuzione l'applicazione, incluso \/etc\/kubernetes. Questa \u00e8 una funzionalit\u00e0 non sicura, quindi in genere le politiche di sicurezza vietano l'uso di volumi di questo tipo. Altrimenti, un'applicazione malevola potrebbe collegare all'interno del suo contenitore la directory HTC Kubernetes e rubare tutti i certificati del cluster. In generale, i volumi hostPath sono consentiti solo per le applicazioni di sistema che vengono eseguite nel namespace kube-system.<\/p>\n<p>\n<\/li>\n<\/ul>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/storage\/volumes\/#types-of-volumes\">I sistemi di archiviazione con cui Kubernetes lavora nativamente<\/a><\/noindex> sono descritti nella documentazione.<\/p>\n<p><\/p>\n<h2 id=\"sposob-2-podklyuchenie-k-podam-scpvcpv\">Metodo 2. Collegamento a pod SC\/PVC\/PV<\/h2>\n<p><\/p>\n<p>Un metodo alternativo di collegamento \u00e8 la concezione di Storage class, PersistentVolumeClaim, PersistentVolume.<\/p>\n<p><\/p>\n<p><u>Storage class<\/u> memorizza i parametri di collegamento al sistema di archiviazione.<\/p>\n<p><\/p>\n<p><u>PersistentVolumeClaim<\/u> descrive le esigenze del volume necessario per l'applicazione.<br \/>\n<u>PersistentVolume<\/u> memorizza i parametri di accesso e lo stato del volume.<\/p>\n<p><\/p>\n<p>L'idea principale: nel manifesto del pod si specifica il volume di tipo PersistentVolumeClaim e si indica il nome di questa entit\u00e0 nel parametro claimName.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Archiviazione dei dati in un cluster Kubernetes\" src=\"\/wp-content\/uploads\/2020\/09\/08b0460be887d39801d1acb9ee1bbd2a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nel manifesto PersistentVolumeClaim si descrivono i requisiti per i dati necessari all'applicazione. Questi includono:<\/p>\n<p><\/p>\n<ul>\n<li>dimensione del disco; <\/li>\n<li>modo di accesso: ReadWriteOnce o ReadWriteMany;<\/li>\n<li>riferimento alla Storage class \u2014 in quale sistema di archiviazione vogliamo creare il volume.<\/li>\n<\/ul>\n<p><\/p>\n<p>Nel manifesto della Storage class sono memorizzati il tipo e i parametri di connessione al sistema di archiviazione. Questi sono necessari al kubelet per montare il volume sul nodo. <\/p>\n<p><\/p>\n<p>Nei manifesti PersistentVolume sono specificati la Storage class e i parametri di accesso a un volume specifico (ID del volume, percorso, ecc.).<\/p>\n<p><\/p>\n<p>Creando un PVC, Kubernetes verifica quale volume di dimensioni e proveniente da quale Storage class \u00e8 necessario e cerca un PersistentVolume disponibile.<\/p>\n<p><\/p>\n<p>Se non ci sono PV disponibili, Kubernetes pu\u00f2 avviare un programma speciale \u2014 il Provisioner (il cui nome \u00e8 specificato nella Storage class). Questo programma si connette allo storage, crea un volume delle dimensioni richieste, ottiene l'identificativo e crea nel cluster Kubernetes un manifesto PersistentVolume, collegato al PersistentVolumeClaim.<\/p>\n<p><\/p>\n<p>Tutta questa moltitudine di astrazioni consente di nascondere le informazioni relative al sistema di archiviazione con cui l'applicazione interagisce, portandole dal livello del manifesto delle applicazioni a quello di amministrazione. <\/p>\n<p><\/p>\n<p>Tutti i parametri di connessione al sistema di storage si trovano nella Storage class, di cui sono responsabili gli amministratori del cluster. Tutto ci\u00f2 che \u00e8 necessario fare quando si passa da AWS a Google Cloud \u00e8 modificare il nome della Storage class nel PVC nei manifesti dell'applicazione. I Persistent Volumes per lo storage dei dati verranno creati automaticamente nel cluster tramite il Provisioner.<\/p>\n<p><\/p>\n<h2 id=\"sposob-3-container-storage-interface\">Metodo 3. Container Storage Interface<\/h2>\n<p><\/p>\n<p>Tutto il codice che interagisce con i vari sistemi di storage \u00e8 parte integrante del kernel di Kubernetes. Il rilascio di patch per bug o nuove funzionalit\u00e0 \u00e8 legato a nuovi rilasci, e il codice deve essere modificato per tutte le versioni supportate di Kubernetes. Tutto ci\u00f2 \u00e8 difficile da mantenere e richiede una continua aggiunta di nuove funzioni.<\/p>\n<p><\/p>\n<p>Per risolvere questo problema, gli sviluppatori di Cloud Foundry, Kubernetes, Mesos e Docker hanno creato il Container Storage Interface (CSI) \u2014 un'interfaccia semplice e unificata che descrive l'interazione tra il sistema di gestione dei container e un driver specifico (CSI Driver) progettato per lavorare con un particolare sistema di storage. Tutto il codice di interazione con il sistema di storage \u00e8 stato estratto dal kernel di Kubernetes in un sistema separato.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/blog\/2019\/01\/15\/container-storage-interface-ga\/\">Documentazione sul Container Storage Interface<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Di norma, il CSI Driver \u00e8 composto da due componenti: Node Plugin e Controller Plugin.<\/p>\n<p><\/p>\n<p>Il Node Plugin si avvia su ciascun nodo e si occupa del montaggio dei volumi e delle operazioni su di essi. Il Controller plugin interagisce con lo storage: crea o elimina volumi, assegna permessi di accesso, ecc.<\/p>\n<p><\/p>\n<p>Finch\u00e9 nel kernel di Kubernetes rimarranno driver vecchi, non \u00e8 pi\u00f9 consigliato utilizzarli e si consiglia a tutti di installare il CSI Driver specifico per il sistema con cui si dovr\u00e0 lavorare.<\/p>\n<p><\/p>\n<p>Questa novit\u00e0 potrebbe spaventare chi \u00e8 gi\u00e0 abituato a configurare l'archiviazione dei dati tramite Storage class, ma in realt\u00e0 non c'\u00e8 nulla di cui preoccuparsi. Per i programmatori non cambia nulla: continueranno a lavorare usando il nome Storage class. Per gli amministratori \u00e8 stata aggiunta l'installazione del helm chart e la struttura delle impostazioni \u00e8 cambiata. Se prima le impostazioni venivano inserite direttamente nella Storage class, ora devono prima essere definite nel helm chart e poi nella Storage class. Se ci si fa attenzione, non \u00e8 successo niente di drammatico.<\/p>\n<p><\/p>\n<p>Vediamo, con un esempio, quali vantaggi si possono ottenere passando alla connessione dello storage Ceph tramite CSI driver.<\/p>\n<p><\/p>\n<p>Lavorando con Ceph, il plugin CSI offre pi\u00f9 possibilit\u00e0 per lavorare con lo storage rispetto ai driver integrati.<\/p>\n<p><\/p>\n<ol>\n<li><strong>Creazione dinamica dei dischi.<\/strong> Di solito, i dischi RBD sono utilizzati solo in modalit\u00e0 RWO, ma CSI per Ceph consente di utilizzarli in modalit\u00e0 RWX. Diversi pod su nodi diversi possono montare lo stesso disco RDB sui loro nodi e lavorare con esso in parallelo. A dire il vero, non \u00e8 tutto roseo: questo disco pu\u00f2 essere connesso solo come dispositivo di blocco, il che significa che sar\u00e0 necessario adattare l'applicazione per lavorare con esso in modalit\u00e0 accesso multiplo.<\/li>\n<li><strong>Creazione di snapshot.<\/strong> In un cluster Kubernetes, \u00e8 possibile creare un manifesto che richiede la creazione di uno snapshot. Il plugin CSI lo rilever\u00e0 e far\u00e0 uno snapshot del disco. Sulla base di esso, sar\u00e0 possibile eseguire un backup o creare una copia del PersistentVolume. <\/li>\n<li><strong>Aumento delle dimensioni del disco<\/strong> su storage e PersistentVolume nel cluster Kubernetes.<\/li>\n<li><strong>Quote.<\/strong> I driver CephFS integrati in Kubernetes non supportano le quote, mentre i nuovi plugin CSI con l'ultima versione di Ceph Nautilus possono abilitare le quote per le partizioni CephFS.<\/li>\n<li><strong>Metriche.<\/strong> Il plugin CSI pu\u00f2 fornire a Prometheus molte metriche riguardo a quali volumi sono collegati, quali interazioni si stanno verificando, ecc.<\/li>\n<li><strong>Consapevolezza della topologia.<\/strong> Permette di indicare nei manifesti come \u00e8 geograficamente distribuito il cluster e di evitare di connettersi a pod avviati a Londra con sistemi di storage dati situati ad Amsterdam. <\/li>\n<\/ol>\n<p><\/p>\n<p>Per collegare Ceph al cluster Kubernetes tramite CSI, vedere <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/DteNn-1f-WI\">nella parte pratica della lezione della scuola serale Sl\u00ebrm<\/a><\/noindex>. Si pu\u00f2 anche iscriversi al <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/Ssx7pg\">corso video Ceph<\/a><\/noindex>, che sar\u00e0 avviato il 15 ottobre. <\/p>\n<p><\/p>\n<p><em>Autore dell'articolo: Sergey Bondarev, architetto praticante di Southbridge, Certified Kubernetes Administrator, uno dei sviluppatori di kubespray.<\/em><\/p>\n<p><\/p>\n<p>                        <b class=\"spoiler_title\">Un piccolo Post Scriptum non per pubblicit\u00e0, ma per utilit\u00e0...<\/b><\/p>\n<p>P.S. Sergey Bondarev conduce due intensivi: rinnovato <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/1WIJFg\">Base di Kubernetes<\/a><\/noindex> 28-30 settembre e avanzato <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/Wbqz5g\">Kubernetes Mega<\/a><\/noindex> dal 14 al 16 ottobre.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Archiviazione dei dati in un cluster Kubernetes\" src=\"\/wp-content\/uploads\/2020\/09\/69752ee9f7c9caf887011564139baf16.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/519130\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes, \u043c\u043e\u0436\u043d\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438. \u041e\u0434\u043d\u0438 \u0438\u0437 \u043d\u0438\u0445 \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438, \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0434\u0430\u0432\u043d\u043e. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0442\u0440\u0451\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0421\u0425\u0414, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0441\u0430\u043c\u044b\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u2014 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 Container Storage Interface. \u0421\u043f\u043e\u0441\u043e\u0431 1. \u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 PV \u0432 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u0435 \u043f\u043e\u0434\u0430 \u0422\u0438\u043f\u0438\u0447\u043d\u044b\u0439 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043f\u043e\u0434 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes: \u0426\u0432\u0435\u0442\u043e\u043c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":94389,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-94388","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes, \u043c\u043e\u0436\u043d\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438. \u041e\u0434\u043d\u0438 \u0438\u0437 \u043d\u0438\u0445 \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438, \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0434\u0430\u0432\u043d\u043e. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0442\u0440\u0451\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0421\u0425\u0414, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0441\u0430\u043c\u044b\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u2014 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 Container Storage Interface. \u0421\u043f\u043e\u0441\u043e\u0431 1. \u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 PV \u0432 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u0435 \u043f\u043e\u0434\u0430 \u0422\u0438\u043f\u0438\u0447\u043d\u044b\u0439 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043f\u043e\u0434 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes: \u0426\u0432\u0435\u0442\u043e\u043c\" \/>\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\/hranenie-dannyh-v-klastere-kubernetes\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\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\udd47\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes, \u043c\u043e\u0436\u043d\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438. \u041e\u0434\u043d\u0438 \u0438\u0437 \u043d\u0438\u0445 \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438, \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0434\u0430\u0432\u043d\u043e. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0442\u0440\u0451\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0421\u0425\u0414, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0441\u0430\u043c\u044b\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u2014 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 Container Storage Interface. \u0421\u043f\u043e\u0441\u043e\u0431 1. \u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 PV \u0432 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u0435 \u043f\u043e\u0434\u0430 \u0422\u0438\u043f\u0438\u0447\u043d\u044b\u0439 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043f\u043e\u0434 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes: \u0426\u0432\u0435\u0442\u043e\u043c\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes\" \/>\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-09-16T05:43:39+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-09-16T05:43:39+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\udd47Storage dei dati nel cluster Kubernetes | ProHoster","description":"Configurare lo storage dei dati delle applicazioni lanciate nel cluster Kubernetes pu\u00f2 essere fatto in vari modi. Alcuni di essi sono gi\u00e0 obsoleti, mentre altri sono emersi di recente. In questo articolo esamineremo il concetto di tre opzioni di collegamento SCSI, inclusa l'ultima \u2014 la connessione tramite Container Storage Interface. Metodo 1. Specificare PV nel manifesto del pod Un tipico manifesto che descrive un pod nel cluster Kubernetes: Colore","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes","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\udd47\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes | ProHoster","og:description":"\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes, \u043c\u043e\u0436\u043d\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438. \u041e\u0434\u043d\u0438 \u0438\u0437 \u043d\u0438\u0445 \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438, \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0434\u0430\u0432\u043d\u043e. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0442\u0440\u0451\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0421\u0425\u0414, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0441\u0430\u043c\u044b\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u2014 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 Container Storage Interface. \u0421\u043f\u043e\u0441\u043e\u0431 1. \u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 PV \u0432 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u0435 \u043f\u043e\u0434\u0430 \u0422\u0438\u043f\u0438\u0447\u043d\u044b\u0439 \u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043f\u043e\u0434 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 Kubernetes: \u0426\u0432\u0435\u0442\u043e\u043c","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes","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-09-16T05:43:39+00:00","article:modified_time":"2020-09-16T05:43:39+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"94388","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 11:27:34","updated":"2022-10-02 10:35:39"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/94388","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=94388"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/94388\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/94389"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=94388"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=94388"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=94388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}