{"id":1327,"date":"2022-05-06T18:16:46","date_gmt":"2022-05-06T18:16:46","guid":{"rendered":"http:\/\/patriciocerda.com\/?p=1327"},"modified":"2022-05-06T18:16:46","modified_gmt":"2022-05-06T18:16:46","slug":"kubernetes-desplegar-csi-driver-para-synology","status":"publish","type":"post","link":"https:\/\/patriciocerda.com\/?p=1327","title":{"rendered":"Kubernetes &#8211; Desplegar CSI Driver para Synology"},"content":{"rendered":"<p>Hola a todos, y bienvenidos nuevamente a este blog. Es esta oportunidad hablaremos nuevamente de <a title=\"Kasten\" href=\"https:\/\/patriciocerda.com\/?cat=27\" target=\"_blank\" rel=\"noopener\">Kubernetes<\/a> y de CSI Drivers, en este caso para poder integrar Kubernetes con un almacenamiento Synology que permita crear Persistent Volumes en K8s en dicho storage.\u00a0 Esto puede ser especialmente util en entornos Home Lab como el mio, donde es bastante com\u00fan contar con almacenamiento tipo NAS de Synology o QNAP.<\/p>\n<p>Ya en el post anterior describimos que eran los CSI Drivers y cual era su proposito principal, por lo que les recomiendo leer el post <a title=\"Kubernetes \u2013 Desplegar vSphere Container Storage Plug-in (vSphere CSI)\" href=\"https:\/\/patriciocerda.com\/?p=1300\" target=\"_blank\" rel=\"noopener\">Kubernetes \u2013 Desplegar vSphere Container Storage Plug-in (vSphere CSI)<\/a>\u00a0 si quieren saber m\u00e1s-<\/p>\n<p>&nbsp;<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_83 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Contenidos<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/patriciocerda.com\/?p=1327\/#Lista_de_materiales\" >Lista de materiales<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/patriciocerda.com\/?p=1327\/#Instalar_los_pre-requisitos\" >Instalar los pre-requisitos<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/patriciocerda.com\/?p=1327\/#Instalar_el_CSI_Driver_para_Synology\" >Instalar el CSI Driver para Synology<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/patriciocerda.com\/?p=1327\/#Verificar_funcionamiento\" >Verificar funcionamiento<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Lista_de_materiales\"><\/span>Lista de materiales<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Para poder desplegar el <a href=\"https:\/\/github.com\/SynologyOpenSource\/synology-csi\" target=\"_blank\" rel=\"noopener\">Synology CSI Driver<\/a>, tambi\u00e9n llamado vSphere Container Plug-in, debemos contar al menos con lo siguiente:<\/p>\n<ul>\n<li>Un cluster de Kubernetes versi\u00f3n 1.19 o superior<\/li>\n<li>La herramienta de linea de comando kubectl<\/li>\n<li>Synology NAS utilizando la versi\u00f3n DSM 7.0 o superior.<\/li>\n<li>Tanto los Volume Snapshot CRDs como el Snapshot Controller debe ser instalado en el cluster de Kubernetes si se desea utilizar la funcionalidad de snapshots de los PV.<\/li>\n<li>Al menos un Storage Pool y un Volumen deben haber sido creados e inicializados en Synology DSM<\/li>\n<li>Todos los nodos Workers deben ser capaces de conectarse con el storage Synology<\/li>\n<\/ul>\n<h2 id=\"GUID-0C202FC5-F973-4D24-B383-DDA27DA49BFA__GUID-B4748734-63A0-4290-BA88-CD9E103D5294\" class=\"title topictitle2\"><span class=\"ez-toc-section\" id=\"Instalar_los_pre-requisitos\"><\/span>Instalar los pre-requisitos<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Veremos ahora la primera parte del procedimiento,que ser\u00e1 la creaci\u00f3n de los Volume Snapshot CDRs y del Snapshot Controllers.<\/p>\n<ul>\n<li>Lo primero que debemos hacer es descargar los ficheros YAML para crear los Volume Snapshot CDRs<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-1 > .CodeMirror, .fusion-syntax-highlighter-1 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-1 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-1 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-1 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_1\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_1\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_1\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">wget https:\/\/raw.githubusercontent.com\/kubernetes-csi\/external-snapshotter\/v4.0.0\/client\/config\/crd\/snapshot.storage.k8s.io_volumesnapshotclasses.yaml\nwget https:\/\/raw.githubusercontent.com\/kubernetes-csi\/external-snapshotter\/v4.0.0\/client\/config\/crd\/snapshot.storage.k8s.io_volumesnapshotcontents.yaml\nwget https:\/\/raw.githubusercontent.com\/kubernetes-csi\/external-snapshotter\/v4.0.0\/client\/config\/crd\/snapshot.storage.k8s.io_volumesnapshots.yaml<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<ul>\n<li>Luego, sin necesidad de realizar modificaciones en los fiheros YAML podemos aplicarlos utilizando Kubectl para poder crear los CDR requeridos en nuestro cluster Kubernetes<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-2 > .CodeMirror, .fusion-syntax-highlighter-2 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-2 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-2 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-2 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_2\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_2\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_2\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">kubectl apply -f snapshot.storage.k8s.io_volumesnapshotclasses.yaml\nkubectl apply -f snapshot.storage.k8s.io_volumesnapshotcontents.yaml\nkubectl apply -f snapshot.storage.k8s.io_volumesnapshots.yaml<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<ul>\n<li>Luego procedemos a descargar los ficheros YAML requeridos para desplegar el Snapshot Controller<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-3 > .CodeMirror, .fusion-syntax-highlighter-3 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-3 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-3 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-3 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_3\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_3\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_3\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">wget https:\/\/raw.githubusercontent.com\/kubernetes-csi\/external-snapshotter\/v4.0.0\/deploy\/kubernetes\/snapshot-controller\/rbac-snapshot-controller.yaml\nwget https:\/\/raw.githubusercontent.com\/kubernetes-csi\/external-snapshotter\/v4.0.0\/deploy\/kubernetes\/snapshot-controller\/setup-snapshot-controller.yaml<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<ul>\n<li>En este caso, el \u00fanico cambio opcional que necesitan realizar, es definir un namespace en particular para desplegar el Snapshot Controller, de lo contrario se desplegar\u00e1 en el namespace default.\u00a0 Importante recordar que en caso de elegir un namespace especifico, este debe ser utilizado en <strong>TODOS<\/strong> los componentes descritos en <strong>AMBOS<\/strong> ficheros YAML<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-4 > .CodeMirror, .fusion-syntax-highlighter-4 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-4 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-4 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-4 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_4\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_4\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_4\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">apiVersion: v1\nkind: ServiceAccount\nmetadata:\n  name: snapshot-controller\n  namespace: kube-system # TODO: replace with the namespace you want for your controller, e.g. kube-system\n<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-1328 aligncenter\" src=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01-300x126.jpg\" alt=\"\" width=\"300\" height=\"126\" srcset=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01-200x84.jpg 200w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01-300x126.jpg 300w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01-400x168.jpg 400w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01-600x253.jpg 600w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01-768x323.jpg 768w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01-800x337.jpg 800w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01-1024x431.jpg 1024w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01-1200x505.jpg 1200w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology01.jpg 1314w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<ul>\n<li>Ya luego simplemente aplicamos los ficheros YAML utilizando Kubectl para desplegar el Snapshot Controller<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-5 > .CodeMirror, .fusion-syntax-highlighter-5 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-5 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-5 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-5 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_5\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_5\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_5\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">kubectl apply -f rbac-snapshot-controller.yaml\nkubectl apply -f setup-snapshot-controller.yaml<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<p><!--more--><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Instalar_el_CSI_Driver_para_Synology\"><\/span>Instalar el CSI Driver para Synology<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Ya tenemos la primera parte lista, ahora toca ir al procedimiento de instalaci\u00f3n del CSI Driver para Synology<\/p>\n<ul>\n<li>Clonamos el repositorio Git que contiene el CSI Driver de Synology<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-6 > .CodeMirror, .fusion-syntax-highlighter-6 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-6 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-6 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-6 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_6\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_6\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_6\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">git clone https:\/\/github.com\/SynologyOpenSource\/synology-csi.git<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<ul>\n<li>Creamos el fichero client-info.yml a partir del template que viene en el repositorio Git<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-7 > .CodeMirror, .fusion-syntax-highlighter-7 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-7 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-7 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-7 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_7\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_7\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_7\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">cd synology-csi\ncp config\/client-info-template.yml config\/client-info.yml<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<ul>\n<li>Editamos el fichero client-info.yml para configurar la conexi\u00f3n con Synology DSM.\u00a0 Se debe especificar la direcci\u00f3n del DSM, el puerto (5000 para HTTP o 5001 para HTTPS), usuario y password, como lo ven a continuacion.<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-8 > .CodeMirror, .fusion-syntax-highlighter-8 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-8 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-8 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-8 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_8\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_8\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_8\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">---\nclients:\n  - host: 10.10.20.2\n    port: 5001\n    https: true\n    username: k8s\n    password: Veeam123!\n  - host: 10.10.20.3\n    port: 5001\n    https: true\n    username: k8s\n    password: Veeam123!<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<ul>\n<li>Ejecutamos el script de instalaci\u00f3n para el CSI Driver en modo FULL, de manera de desplegar todos los servicios CSI, incluyendo la opcion de Snapshot para los PV<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-9 > .CodeMirror, .fusion-syntax-highlighter-9 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-9 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-9 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-9 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_9\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_9\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_9\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">.\/scripts\/deploy.sh install --all<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<ul>\n<li>Verificar que el estado de todos los Pods del driver CSI estan en estado Running<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-10 > .CodeMirror, .fusion-syntax-highlighter-10 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-10 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-10 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-10 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_10\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_10\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_10\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">kubectl get pods -n synology-csi<\/textarea><\/div>\n<p><a href=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-1330\" src=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02-300x74.jpg\" alt=\"\" width=\"300\" height=\"74\" srcset=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02-200x49.jpg 200w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02-300x74.jpg 300w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02-400x98.jpg 400w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02-600x148.jpg 600w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02-768x189.jpg 768w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02-800x197.jpg 800w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02-1024x252.jpg 1024w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology02.jpg 1090w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<ul>\n<li>El ultimo paso es crear uno o m\u00e1s Storage Class en Kubernetes que nos permita utilizar el CSI Driver que acabamos de desplegar:<\/li>\n<\/ul>\n<style type=\"text\/css\" scopped=\"scopped\">.fusion-syntax-highlighter-11 > .CodeMirror, .fusion-syntax-highlighter-11 > .CodeMirror .CodeMirror-gutters {background-color:var(--awb-color1);}.fusion-syntax-highlighter-11 > .CodeMirror .CodeMirror-gutters { background-color: var(--awb-color2); }.fusion-syntax-highlighter-11 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color8); }<\/style><div class=\"fusion-syntax-highlighter-container fusion-syntax-highlighter-11 fusion-syntax-highlighter-theme-light\" style=\"opacity:0;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-size:14px;border-width:1px;border-style:solid;border-color:var(--awb-color3);\"><div class=\"syntax-highlighter-copy-code\"><span class=\"syntax-highlighter-copy-code-title\" data-id=\"fusion_syntax_highlighter_11\" style=\"font-size:14px;\">Copy to Clipboard<\/span><\/div><label for=\"fusion_syntax_highlighter_11\" class=\"screen-reader-text\">Syntax Highlighter<\/label><textarea class=\"fusion-syntax-highlighter-textarea\" id=\"fusion_syntax_highlighter_11\" data-readOnly=\"nocursor\" data-lineNumbers=\"1\" data-lineWrapping=\"\" data-theme=\"default\" data-mode=\"text\/x-sh\">apiVersion: storage.k8s.io\/v1\nkind: StorageClass\nmetadata:\n  annotations:\n    storageclass.kubernetes.io\/is-default-class: \"true\"\n  name: synostorage\nprovisioner: csi.san.synology.com\nparameters:\n  fsType: 'ext4'\n  dsm: '10.10.20.2'\n  location: '\/volume1'\nreclaimPolicy: Delete\nallowVolumeExpansion: true<\/textarea><\/div>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Verificar_funcionamiento\"><\/span>Verificar funcionamiento<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Para verificar el funcionamiento de el Synology CSI Driver, basta con crear un PVC\u00a0 que utilice el Storage Class creado previamente, y asegurarse que el PV haya sido creado apropiadamente como vemos en las imagenes a continuacion:<\/p>\n<p><a href=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-1331 aligncenter\" src=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-300x39.jpg\" alt=\"\" width=\"300\" height=\"39\" srcset=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-200x26.jpg 200w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-300x39.jpg 300w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-400x52.jpg 400w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-600x78.jpg 600w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-768x100.jpg 768w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-800x104.jpg 800w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-1024x133.jpg 1024w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-1200x156.jpg 1200w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03-1536x199.jpg 1536w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology03.jpg 1879w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-1332 aligncenter\" src=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-300x138.jpg\" alt=\"\" width=\"300\" height=\"138\" srcset=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-200x92.jpg 200w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-300x138.jpg 300w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-400x185.jpg 400w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-600x277.jpg 600w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-768x354.jpg 768w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-800x369.jpg 800w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-1024x472.jpg 1024w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-1200x554.jpg 1200w, https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/Synology04-1536x709.jpg 1536w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>Con ese completamos este procedimiento en Kubernetes, espero que les sea de utilidad y nos vemos en otra ocasi\u00f3n!!!<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hola a todos, y bienvenidos nuevamente a este blog. Es<\/p>\n","protected":false},"author":1,"featured_media":1333,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[27],"tags":[59,32,31,60],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Kubernetes - Desplegar CSI Driver para Synology - vLatam<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/patriciocerda.com\/?p=1327\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kubernetes - Desplegar CSI Driver para Synology - vLatam\" \/>\n<meta property=\"og:description\" content=\"Hola a todos, y bienvenidos nuevamente a este blog. Es\" \/>\n<meta property=\"og:url\" content=\"https:\/\/patriciocerda.com\/?p=1327\" \/>\n<meta property=\"og:site_name\" content=\"vLatam\" \/>\n<meta property=\"article:published_time\" content=\"2022-05-06T18:16:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/InicioVideosK8sCSISynology.png\" \/>\n\t<meta property=\"og:image:width\" content=\"3840\" \/>\n\t<meta property=\"og:image:height\" content=\"2160\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"pcerda\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"pcerda\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/patriciocerda.com\/?p=1327\",\"url\":\"https:\/\/patriciocerda.com\/?p=1327\",\"name\":\"Kubernetes - Desplegar CSI Driver para Synology - vLatam\",\"isPartOf\":{\"@id\":\"https:\/\/patriciocerda.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/patriciocerda.com\/?p=1327#primaryimage\"},\"image\":{\"@id\":\"https:\/\/patriciocerda.com\/?p=1327#primaryimage\"},\"thumbnailUrl\":\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/InicioVideosK8sCSISynology.png\",\"datePublished\":\"2022-05-06T18:16:46+00:00\",\"author\":{\"@id\":\"https:\/\/patriciocerda.com\/#\/schema\/person\/613aa192d7dbcedcd20e08318891aa2a\"},\"breadcrumb\":{\"@id\":\"https:\/\/patriciocerda.com\/?p=1327#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/patriciocerda.com\/?p=1327\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/patriciocerda.com\/?p=1327#primaryimage\",\"url\":\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/InicioVideosK8sCSISynology.png\",\"contentUrl\":\"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/InicioVideosK8sCSISynology.png\",\"width\":3840,\"height\":2160},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/patriciocerda.com\/?p=1327#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/patriciocerda.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kubernetes &#8211; Desplegar CSI Driver para Synology\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/patriciocerda.com\/#website\",\"url\":\"https:\/\/patriciocerda.com\/\",\"name\":\"vLatam\",\"description\":\"El Blog de Patricio Cerda\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/patriciocerda.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/patriciocerda.com\/#\/schema\/person\/613aa192d7dbcedcd20e08318891aa2a\",\"name\":\"pcerda\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/patriciocerda.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/patriciocerda.com\/wp-content\/litespeed\/avatar\/ce92117b9294544adeaad229a8fbac13.jpg?ver=1779195224\",\"contentUrl\":\"https:\/\/patriciocerda.com\/wp-content\/litespeed\/avatar\/ce92117b9294544adeaad229a8fbac13.jpg?ver=1779195224\",\"caption\":\"pcerda\"},\"url\":\"https:\/\/patriciocerda.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Kubernetes - Desplegar CSI Driver para Synology - vLatam","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/patriciocerda.com\/?p=1327","og_locale":"en_US","og_type":"article","og_title":"Kubernetes - Desplegar CSI Driver para Synology - vLatam","og_description":"Hola a todos, y bienvenidos nuevamente a este blog. Es","og_url":"https:\/\/patriciocerda.com\/?p=1327","og_site_name":"vLatam","article_published_time":"2022-05-06T18:16:46+00:00","og_image":[{"width":3840,"height":2160,"url":"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/InicioVideosK8sCSISynology.png","type":"image\/png"}],"author":"pcerda","twitter_card":"summary_large_image","twitter_misc":{"Written by":"pcerda","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/patriciocerda.com\/?p=1327","url":"https:\/\/patriciocerda.com\/?p=1327","name":"Kubernetes - Desplegar CSI Driver para Synology - vLatam","isPartOf":{"@id":"https:\/\/patriciocerda.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/patriciocerda.com\/?p=1327#primaryimage"},"image":{"@id":"https:\/\/patriciocerda.com\/?p=1327#primaryimage"},"thumbnailUrl":"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/InicioVideosK8sCSISynology.png","datePublished":"2022-05-06T18:16:46+00:00","author":{"@id":"https:\/\/patriciocerda.com\/#\/schema\/person\/613aa192d7dbcedcd20e08318891aa2a"},"breadcrumb":{"@id":"https:\/\/patriciocerda.com\/?p=1327#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/patriciocerda.com\/?p=1327"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/patriciocerda.com\/?p=1327#primaryimage","url":"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/InicioVideosK8sCSISynology.png","contentUrl":"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/InicioVideosK8sCSISynology.png","width":3840,"height":2160},{"@type":"BreadcrumbList","@id":"https:\/\/patriciocerda.com\/?p=1327#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/patriciocerda.com\/"},{"@type":"ListItem","position":2,"name":"Kubernetes &#8211; Desplegar CSI Driver para Synology"}]},{"@type":"WebSite","@id":"https:\/\/patriciocerda.com\/#website","url":"https:\/\/patriciocerda.com\/","name":"vLatam","description":"El Blog de Patricio Cerda","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/patriciocerda.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/patriciocerda.com\/#\/schema\/person\/613aa192d7dbcedcd20e08318891aa2a","name":"pcerda","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/patriciocerda.com\/#\/schema\/person\/image\/","url":"https:\/\/patriciocerda.com\/wp-content\/litespeed\/avatar\/ce92117b9294544adeaad229a8fbac13.jpg?ver=1779195224","contentUrl":"https:\/\/patriciocerda.com\/wp-content\/litespeed\/avatar\/ce92117b9294544adeaad229a8fbac13.jpg?ver=1779195224","caption":"pcerda"},"url":"https:\/\/patriciocerda.com\/?author=1"}]}},"jetpack_featured_media_url":"https:\/\/patriciocerda.com\/wp-content\/uploads\/2022\/05\/InicioVideosK8sCSISynology.png","_links":{"self":[{"href":"https:\/\/patriciocerda.com\/index.php?rest_route=\/wp\/v2\/posts\/1327"}],"collection":[{"href":"https:\/\/patriciocerda.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/patriciocerda.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/patriciocerda.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/patriciocerda.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1327"}],"version-history":[{"count":2,"href":"https:\/\/patriciocerda.com\/index.php?rest_route=\/wp\/v2\/posts\/1327\/revisions"}],"predecessor-version":[{"id":1334,"href":"https:\/\/patriciocerda.com\/index.php?rest_route=\/wp\/v2\/posts\/1327\/revisions\/1334"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/patriciocerda.com\/index.php?rest_route=\/wp\/v2\/media\/1333"}],"wp:attachment":[{"href":"https:\/\/patriciocerda.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1327"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/patriciocerda.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1327"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/patriciocerda.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}