Ir al contenido
  1. Blog/

Como Configurar Repositorio NFS para Kasten K10

Autor
Marco Escobar
Data protection, Kubernetes, ciberseguridad e IA. Guías prácticas desde la trinchera: Veeam, Kasten, VMware, Oracle, cloud y lo que sea que esté rompiendo en el homelab esta semana.
Tabla de contenido
Como Configurar Repositorio NFS para Kasten K10 — captura 1

Una de las opciones que muchas empresas utilizan para alojar sus respaldos es NFS, en esta guia, revisaremos como configurar un Perfil de NFS para ser utilizado por Kasten K10, de acuerdo con las buenas prácticas que se indican en la documentacion de Kasten.

Documentación
#

Antes que nada siempre debemos revisar la documentacion de las tecnologias que usaremos para conseguir nuestro objetivo, en este caso utilizaremos Kasten K10 y NFS Subdir External Provisioner, la información oficial la puedes encontrar:

Requerimientos
#

Para la utilización de NFS como perfil en Kasten K10, cómo lo indica la documentacion, necesitaremos cumplir con lo siguiente:

  • Servicio NFS accesible desde todos los nodos donde se encuentre instalado K10
  • Una carpeta compartida via NFS, que sea posible montar en todos los nodos donde se encuentre instalado K10
  • Un PV que defina la carpeta compartida NFS
  • Un PVC con su respectivo StorageClassName para k10

Cumpliendo con los requerimientos anteriores tendremos configurado correctamente nuestro perfil NFS para alojar nuestros respaldos.

Configuracion Carpeta NFS
#

Como cualquier servidor NFS, es necesario crear una carpeta o utilizar una existente para alojar los respaldos, siempre con su respectiva configuración de acceso ya sea por autenticación o permitiendo los accesos por HOST en NFS, por ejemplo en mi QNAP he configurado lo siguiente:

Como Configurar Repositorio NFS para Kasten K10 — captura 2

Luego de tener esto configurado, pasaremos a la instalación y configuración del NFS Subdir External Provisioner

Instalación NFS Subdir External Provisioner
#

Nuevamente, de acuerdo a la documentacion de la solución, lo primero que debemos realizar, es la configuración del repositorio de helm, por tanto debemos ejecutar el siguiente comando:

helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
```bash



Como Configurar Repositorio NFS para Kasten K10 — captura 3
Para luego realizar la configuración con helm y su respectiva información del servidor NFS a utilizar:
Como Configurar Repositorio NFS para Kasten K10
Validación de la instalación con: ```bash kubectl get pods ```bash
Como Configurar Repositorio NFS para Kasten K10 — captura 4
## Configuración StorageClass Para cumplir con los requerimientos de Kasten K10, debemos tener un StorageClass, de hecho, al realizar la instalación y configuración con helm, el StorageClass es creado automáticamente: ```bash kubectl get sc ```yaml
Como Configurar Repositorio NFS para Kasten K10 — captura 5
## Creación de Disco Persistente usando NFS Ahora, ya que tenemos todo, debemos probar la creación de PVC utilizando nuestro nuevo StorageClass, para ello ejecutaremos lo siguiente (modificar tamaño y nombre si es necesario): ```yaml kind: PersistentVolumeClaim apiVersion: v1 metadata: name: prueba-disco-nfs spec: storageClassName: nfs-client accessModes: - ReadWriteMany resources: requests: storage: 100Gi ```bash
Como Configurar Repositorio NFS para Kasten K10 — captura 6
Validar configuración en kubernetes y también en nuestra carpeta compartida NFS:
Como Configurar Repositorio NFS para Kasten K10 — captura 7
Como Configurar Repositorio NFS para Kasten K10 — captura 8
Ahora eliminaremos este disco para preparar un disco necesario para Kasten K10: ```bash kubectl delete pvc prueba-disco-nfs ```bash
Como Configurar Repositorio NFS para Kasten K10 — captura 9
Ahora crearemos el disco necesario para Kasten K10 en su propio namespace, con el siguiente archivo: ```bash kind: PersistentVolumeClaim apiVersion: v1 metadata: name: repo-nfs-respaldos namespace: kasten-io spec: storageClassName: nfs-client accessModes: - ReadWriteMany resources: requests: storage: 100Gi ```bash
Como Configurar Repositorio NFS para Kasten K10 — captura 10
Si listamos los PVC sin namespace, veremos que no existe ninguno: ```bash kubectl get pvc ```bash
Como Configurar Repositorio NFS para Kasten K10 — captura 11
Ahora, si listamos los PVC con el namespace kasten-io veremos nuestro nuevo disco: ```bash kubectl get pvc -n kasten-io
Como Configurar Repositorio NFS para Kasten K10 — captura 12

Configuración perfil NFS Kasten K10
#

Ahora, entraremos a la consola de Kasten K10 en el cluster que configuramos nuestro NFS, ingresando el nombre del PVC:

Como Configurar Repositorio NFS para Kasten K10 — captura 13

Validamos la configuración:

Como Configurar Repositorio NFS para Kasten K10 — captura 14

Ahora probaremos un respaldo hacia este nuevo perfil de NFS para alojar los respaldos.

Prueba Ejecución Respaldo hacia NFS
#

Para esto, solo debemos crear alguna política de respaldo usando nuestro nuevo perfil:

Como Configurar Repositorio NFS para Kasten K10 — captura 15

Luego lo Ejecutamos y esperamos la finalización:

Como Configurar Repositorio NFS para Kasten K10 — captura 16

Validamos el respaldo en nuestro NFS:

Como Configurar Repositorio NFS para Kasten K10 — captura 17

Y por último una prueba de recuperación en otro namespace en este caso, nfspacman:

Como Configurar Repositorio NFS para Kasten K10 — captura 18

En el dashboard de Kasten k10 veremos:

Como Configurar Repositorio NFS para Kasten K10 — captura 19

Y en kubernetes:

Como Configurar Repositorio NFS para Kasten K10 — captura 20

Y por último la aplicación pacman funcionando como se espera:

Como Configurar Repositorio NFS para Kasten K10 — captura 21
Como Configurar Repositorio NFS para Kasten K10 — captura 22

Posts relacionados
#

Relacionados