{"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\/es\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes","title":{"rendered":"Almacenamiento de datos en un cl\u00faster de Kubernetes","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La configuraci\u00f3n del almacenamiento de datos de aplicaciones que se ejecutan en un cl\u00faster de Kubernetes se puede realizar de varias maneras. Algunas de ellas ya est\u00e1n obsoletas, otras han surgido recientemente. En este art\u00edculo, examinaremos el concepto de tres opciones de conexi\u00f3n de almacenamiento, incluida la m\u00e1s reciente: la conexi\u00f3n a trav\u00e9s de Container Storage Interface.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Almacenamiento de datos en un cl\u00faster de 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\">M\u00e9todo 1. Especificar PV en el manifiesto del pod<\/h2>\n<p><\/p>\n<p>Un manifiesto t\u00edpico que describe un pod en un cl\u00faster de Kubernetes: <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Almacenamiento de datos en un cl\u00faster de Kubernetes\" src=\"\/wp-content\/uploads\/2020\/09\/1df1b236df758f4a4a18905d31413617.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Las partes del manifiesto que indican qu\u00e9 volumen se conecta y d\u00f3nde est\u00e1n resaltadas en color.<\/p>\n<p><\/p>\n<p>En la secci\u00f3n <strong>volumeMounts<\/strong> indican los puntos de montaje (mountPath) \u2014 en qu\u00e9 directorio dentro del contenedor se montar\u00e1 el volumen persistente, as\u00ed como el nombre del volumen.<\/p>\n<p><\/p>\n<p>En la secci\u00f3n <strong>x<\/strong> enumeran todos los vol\u00famenes que se utilizan en el pod. Indican el nombre de cada volumen, as\u00ed como su tipo (en nuestro caso: awsElasticBlockStore) y los par\u00e1metros de conexi\u00f3n. Los par\u00e1metros exactos que se enumeran en el manifiesto dependen del tipo de volumen.<\/p>\n<p><\/p>\n<p>El mismo volumen puede montarse simult\u00e1neamente en varios contenedores del pod. De este modo, diferentes procesos de la aplicaci\u00f3n pueden tener acceso a los mismos datos. <\/p>\n<p><\/p>\n<p>Este m\u00e9todo de conexi\u00f3n se ide\u00f3 al principio, cuando Kubernetes apenas comenzaba, y hoy en d\u00eda est\u00e1 obsoleto.<\/p>\n<p><\/p>\n<p>Su uso plantea varios problemas: <\/p>\n<p><\/p>\n<ol>\n<li>todos los vol\u00famenes deben ser creados manualmente, Kubernetes no podr\u00e1 crear nada por nosotros;<\/li>\n<li>los par\u00e1metros de acceso a cada uno de los vol\u00famenes son \u00fanicos y deben especificarse en los manifiestos de todos los pods que utilizan el volumen;<\/li>\n<li>si se desea cambiar el sistema de almacenamiento (por ejemplo, trasladarse de AWS a Google Cloud), se deben cambiar las configuraciones y el tipo de vol\u00famenes conectados en todos los manifiestos.<\/li>\n<\/ol>\n<p><\/p>\n<p>Todo esto es muy inc\u00f3modo, por lo que en la pr\u00e1ctica este m\u00e9todo solo se utiliza para conectar algunos tipos especiales de vol\u00famenes: configMap, secret, emptyDir, hostPath:<\/p>\n<p><\/p>\n<ul>\n<li>\n<p>configMap y secret \u2014 son vol\u00famenes de servicio que permiten crear en el contenedor un volumen con archivos de los manifiestos de Kubernetes.<\/p>\n<p>\n<\/li>\n<li>\n<p>emptyDir \u2014 es un volumen temporal que se crea solo durante la vida \u00fatil del pod. Es conveniente usarlo para pruebas o almacenamiento de datos temporales. Cuando se elimina el pod, el volumen de tipo emptyDir tambi\u00e9n se elimina y todos los datos desaparecen.<\/p>\n<p>\n<\/li>\n<li>\n<p>hostPath permite montar cualquier directorio del disco local del servidor que ejecuta la aplicaci\u00f3n dentro del contenedor de la aplicaci\u00f3n, incluyendo \/etc\/kubernetes. Esta es una capacidad insegura, por lo que las pol\u00edticas de seguridad suelen prohibir el uso de vol\u00famenes de este tipo. De lo contrario, un atacante podr\u00eda montar el directorio HTC Kubernetes dentro de su contenedor y robar todos los certificados del cl\u00faster. En general, se permite el uso de vol\u00famenes hostPath solo para aplicaciones del sistema que se ejecutan en el 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\">Los sistemas de almacenamiento con los que Kubernetes trabaja de forma predeterminada<\/a><\/noindex> se indican en la documentaci\u00f3n.<\/p>\n<p><\/p>\n<h2 id=\"sposob-2-podklyuchenie-k-podam-scpvcpv\">M\u00e9todo 2. Conexi\u00f3n a pods SC\/PVC\/PV<\/h2>\n<p><\/p>\n<p>Un m\u00e9todo alternativo de conexi\u00f3n es la concepci\u00f3n de Storage class, PersistentVolumeClaim, PersistentVolume.<\/p>\n<p><\/p>\n<p><u>Storage class<\/u> almacena los par\u00e1metros de conexi\u00f3n al sistema de almacenamiento.<\/p>\n<p><\/p>\n<p><u>PersistentVolumeClaim<\/u> describe los requisitos del volumen que la aplicaci\u00f3n necesita.<br \/>\n<u>PersistentVolume<\/u> almacena los par\u00e1metros de acceso y el estado del volumen.<\/p>\n<p><\/p>\n<p>La idea es la siguiente: en el manifiesto del pod se indica un volumen del tipo PersistentVolumeClaim y se especifica el nombre de esta entidad en el par\u00e1metro claimName.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Almacenamiento de datos en un cl\u00faster de Kubernetes\" src=\"\/wp-content\/uploads\/2020\/09\/08b0460be887d39801d1acb9ee1bbd2a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En el manifiesto de PersistentVolumeClaim se describen los requisitos para el volumen de datos que la aplicaci\u00f3n necesita. Incluyendo:<\/p>\n<p><\/p>\n<ul>\n<li>tama\u00f1o del disco; <\/li>\n<li>modo de acceso: ReadWriteOnce o ReadWriteMany;<\/li>\n<li>referencia a Storage class \u2014 en qu\u00e9 sistema de almacenamiento queremos crear el volumen.<\/li>\n<\/ul>\n<p><\/p>\n<p>En el manifiesto de Storage class se almacenan el tipo y los par\u00e1metros de conexi\u00f3n al sistema de almacenamiento. Son necesarios para que el kubelet monte el volumen en su nodo. <\/p>\n<p><\/p>\n<p>En los manifiestos de PersistentVolume se especifica Storage class y los par\u00e1metros de acceso a un volumen espec\u00edfico (ID del volumen, ruta, etc.).<\/p>\n<p><\/p>\n<p>Al crear PVC, Kubernetes verifica qu\u00e9 volumen de qu\u00e9 tama\u00f1o y de qu\u00e9 Storage class se necesita, y selecciona un PersistentVolume libre.<\/p>\n<p><\/p>\n<p>Si no hay PV disponibles, Kubernetes puede iniciar un programa especial: Provisioner (su nombre se indica en Storage class). Este programa se conecta al sistema de almacenamiento, crea un volumen del tama\u00f1o requerido, obtiene el identificador y crea un manifiesto de PersistentVolume en el cl\u00faster de Kubernetes que se vincula con el PersistentVolumeClaim.<\/p>\n<p><\/p>\n<p>Todo este conjunto de abstracciones permite eliminar la informaci\u00f3n sobre qu\u00e9 sistema de almacenamiento utiliza la aplicaci\u00f3n, del nivel del manifiesto de aplicaciones al nivel de administraci\u00f3n. <\/p>\n<p><\/p>\n<p>Todos los par\u00e1metros de conexi\u00f3n al sistema de almacenamiento se encuentran en la clase de almacenamiento, de la cual son responsables los administradores del cl\u00faster. Todo lo que se necesita hacer al cambiar de AWS a Google Cloud es modificar el nombre de la clase de almacenamiento en el PVC dentro de los manifiestos de la aplicaci\u00f3n. El volumen persistente para el almacenamiento de datos ser\u00e1 creado autom\u00e1ticamente en el cl\u00faster mediante el programa Provisioner.<\/p>\n<p><\/p>\n<h2 id=\"sposob-3-container-storage-interface\">M\u00e9todo 3. Interfaz de Almacenamiento de Contenedores<\/h2>\n<p><\/p>\n<p>Todo el c\u00f3digo que interact\u00faa con los diferentes sistemas de almacenamiento es parte del n\u00facleo de Kubernetes. La publicaci\u00f3n de correcciones de errores o nuevas funcionalidades est\u00e1 ligada a nuevos lanzamientos, lo que obliga a modificar el c\u00f3digo para todas las versiones de Kubernetes que se soportan. Todo esto es dif\u00edcil de mantener y de a\u00f1adir nuevas funcionalidades.<\/p>\n<p><\/p>\n<p>Para abordar el problema, los desarrolladores de Cloud Foundry, Kubernetes, Mesos y Docker crearon la Interfaz de Almacenamiento de Contenedores (CSI), una interfaz unificada y sencilla que describe la interacci\u00f3n entre el sistema de gesti\u00f3n de contenedores y un controlador espec\u00edfico (Controlador CSI) que trabaja con un sistema de almacenamiento particular. Todo el c\u00f3digo que interact\u00faa con el sistema de almacenamiento se ha sacado del n\u00facleo de Kubernetes a un sistema separado.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/blog\/2019\/01\/15\/container-storage-interface-ga\/\">Documentaci\u00f3n sobre la Interfaz de Almacenamiento de Contenedores<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Por lo general, el Controlador CSI consta de dos componentes: el Plugin de Nodo y el Plugin de Controlador.<\/p>\n<p><\/p>\n<p>El Plugin de Nodo se ejecuta en cada nodo y es responsable de montar vol\u00famenes y realizar operaciones sobre ellos. El Plugin de Controlador interact\u00faa con el sistema de almacenamiento: crea o elimina vol\u00famenes, asigna permisos de acceso, etc.<\/p>\n<p><\/p>\n<p>Mientras en el n\u00facleo de Kubernetes permanezcan los controladores antiguos, no se recomienda su uso, y se aconseja a todos instalar el Controlador CSI espec\u00edfico para el sistema con el que se trabajar\u00e1.<\/p>\n<p><\/p>\n<p>La novedad puede asustar a aquellos que ya est\u00e1n acostumbrados a configurar el almacenamiento a trav\u00e9s de la clase de almacenamiento, pero en realidad no ha sucedido nada grave. Para los programadores, nada cambia realmente: seguir\u00e1n trabajando solo con el nombre de la clase de almacenamiento. Para los administradores, se ha a\u00f1adido la instalaci\u00f3n del gr\u00e1fico de helm y se ha modificado la estructura de configuraci\u00f3n. Si antes las configuraciones se introduc\u00edan directamente en la clase de almacenamiento, ahora primero deben definirse en el gr\u00e1fico de helm y luego en la clase de almacenamiento. Si se analiza, no ha pasado nada grave.<\/p>\n<p><\/p>\n<p>Veamos, con un ejemplo, qu\u00e9 ventajas se pueden obtener al cambiar a la conexi\u00f3n al sistema de almacenamiento Ceph mediante el controlador CSI.<\/p>\n<p><\/p>\n<p>Al trabajar con Ceph, el plugin CSI ofrece m\u00e1s posibilidades para interactuar con el sistema de almacenamiento que los controladores integrados.<\/p>\n<p><\/p>\n<ol>\n<li><strong>Creaci\u00f3n din\u00e1mica de discos.<\/strong> Normalmente, los discos RBD se utilizan s\u00f3lo en modo RWO, pero CSI para Ceph permite utilizarlos en modo RWX. Varios pods en diferentes nodos pueden montar el mismo disco RDB en sus nodos y trabajar con ellos de manera paralela. Para ser justos, no todo es tan brillante: este disco s\u00f3lo se puede conectar como un dispositivo de bloque, lo que significa que ser\u00e1 necesario adaptar la aplicaci\u00f3n para trabajar con \u00e9l en modo de acceso m\u00faltiple.<\/li>\n<li><strong>Creaci\u00f3n de instant\u00e1neas.<\/strong> En el cl\u00faster de Kubernetes, se puede crear un manifiesto que solicite la creaci\u00f3n de una instant\u00e1nea. El complemento CSI lo ver\u00e1 y crear\u00e1 una instant\u00e1nea del disco. Con base en ella, se podr\u00e1 hacer una copia de seguridad o una copia del PersistentVolume. <\/li>\n<li><strong>Aumento del tama\u00f1o del disco<\/strong> en el almacenamiento y en el PersistentVolume del cl\u00faster de Kubernetes.<\/li>\n<li><strong>Cuotas.<\/strong> Los controladores CephFS integrados en Kubernetes no admiten cuotas, y los nuevos complementos CSI con el nuevo Ceph Nautilus pueden habilitar cuotas en las particiones de CephFS.<\/li>\n<li><strong>M\u00e9tricas.<\/strong> El complemento CSI puede proporcionar a Prometheus muchas m\u00e9tricas sobre qu\u00e9 vol\u00famenes est\u00e1n conectados, qu\u00e9 interacciones est\u00e1n ocurriendo, etc.<\/li>\n<li><strong>Consciente de la topolog\u00eda.<\/strong> Permite especificar en los manifiestos c\u00f3mo est\u00e1 distribuido geogr\u00e1ficamente el cl\u00faster y evitar la conexi\u00f3n a pods que se est\u00e1n ejecutando en Londres de un sistema de almacenamiento de datos ubicado en \u00c1msterdam. <\/li>\n<\/ol>\n<p><\/p>\n<p>C\u00f3mo conectar Ceph al cl\u00faster de Kubernetes a trav\u00e9s de CSI, v\u00e9ase <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/DteNn-1f-WI\">en la parte pr\u00e1ctica de la clase de la escuela nocturna Slyurm<\/a><\/noindex>. Tambi\u00e9n se puede suscribir a <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/Ssx7pg\">el curso en video de Ceph<\/a><\/noindex>, que comenzar\u00e1 el 15 de octubre. <\/p>\n<p><\/p>\n<p><em>Autor del art\u00edculo: Sergey Bondarev, arquitecto practicante de Southbridge, Administrador Certificado de Kubernetes, uno de los desarrolladores de kubespray.<\/em><\/p>\n<p><\/p>\n<p>                        <b class=\"spoiler_title\">Un poco de Post Scriptum que no es publicidad, sino por razones de utilidad\u2026<\/b><\/p>\n<p>P.D. Sergey Bondarev lleva a cabo dos intensivos: el actualizado <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/1WIJFg\">8\u201310 de febrero de 2021. Y<\/a><\/noindex> del 28 al 30 de septiembre y uno avanzado <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/Wbqz5g\">Kubernetes Mega<\/a><\/noindex> del 14 al 16 de octubre.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Almacenamiento de datos en un cl\u00faster de Kubernetes\" src=\"\/wp-content\/uploads\/2020\/09\/69752ee9f7c9caf887011564139baf16.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Fuente: <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 5.0.2 - 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.\" \/>\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\/es\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/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\udd47Almacenamiento de datos en cl\u00faster de Kubernetes | ProHoster","description":"Configurar el almacenamiento de datos de las aplicaciones que se ejecutan en el cl\u00faster de Kubernetes se puede hacer de varias maneras. Algunas de ellas ya est\u00e1n obsoletas, mientras que otras han surgido recientemente.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/hranenie-dannyh-v-klastere-kubernetes","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","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.","og:url":"https:\/\/prohoster.info\/es\/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","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/94388","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=94388"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/94388\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/94389"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=94388"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=94388"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=94388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}