Nota:
- Este tutorial requiere acceso a Oracle Cloud. Para registrarse en una cuenta gratuita, consulte Introducción a la capa gratuita de Oracle Cloud Infrastructure.
- Utiliza valores de ejemplo para las credenciales, el arrendamiento y los compartimentos de Oracle Cloud Infrastructure. Al finalizar el laboratorio, sustituya estos valores por otros específicos de su entorno en la nube.
Despliegue de la caché NFS en Oracle Cloud Infrastructure
Introducción
Cuando varias instancias informáticas basadas en la nube requieren acceso al almacenamiento NFS local, puede desplegar la caché NFS en la nube. Para mejorar el rendimiento de NFS, los datos se almacenan en caché en la nube cuando un cliente NFS los solicita. Los nodos de cliente NFS escriben datos directamente en el servidor de archivos de origen NFS mediante el almacenamiento en caché de escritura.
El rendimiento de NFS es muy sensible a la latencia de red. Incluso una latencia de red relativamente pequeña puede degradar significativamente el rendimiento de NFS tanto para lecturas como para escrituras. Al utilizar el almacenamiento NFS local, el despliegue de la caché NFS en la nube puede dar lugar a importantes ventajas de rendimiento, especialmente en el caso de las cargas de trabajo "con muchas lecturas".
Objetivo
Despliegue la solución de almacenamiento en caché NFS en Oracle Cloud Infrastructure (OCI).
Requisitos
Debe tener una red virtual en la nube (VCN) configurada con una subred privada o pública en la que se instalará la caché de NFS. La subred de OCI debe tener conectividad con el servidor NFS local y el puerto TCP 2049 debe estar abierto en la lista de seguridad de subred. Se recomienda configurar un túnel de VPN u OCI Fast Connect entre el servidor NFS local y el servidor de caché NFS en la nube.
Nota: Este tutorial hace referencia a la versión NFS4. Para versiones anteriores de NFS, puede que necesite abrir puertos de adición en la lista de seguridad de subred.
Arquitectura
La caché NFS se puede desplegar en una serie de arquitecturas diferentes. En este ejemplo, estamos utilizando la siguiente arquitectura.
Para alta disponibilidad (HA), puede instalar un equilibrador de carga de red con 2 o más servidores de caché NFS de backend y configurar el puerto TCP/2049 en el listener del equilibrador de carga de red.
Tarea 1: Instalación y configuración del servidor FS-Cache
-
Para desplegar la caché NFS en OCI, aprovisione una instancia informática de Oracle Linux mediante uno de E4. Unidades DenseIO.Flex.
Nota: Estas unidades de E/S densa tienen un número diferente de discos locales NVMe. El almacenamiento NVMe se utilizará para almacenar en caché datos NFS. Seleccione la unidad según los requisitos de almacenamiento.
-
Seleccione VCN y subred y agregue una clave SSH pública.
-
Abra Opciones avanzadas y agregue el script
cloud-init
: install.shEl script realiza lo siguiente:
- Configura RAID-0 en discos NVMe disponibles.
- Crea un sistema de archivos en el dispositivo RAID-0 y lo monta
- Instala el paquete almacenado en caché e inicia el servicio almacenado en caché
- Activa el servidor NFS
- Configura el firewall SELinux y Linux
Tarea 2: Creación y exportación de recursos compartidos NFS
-
Cree un directorio para el punto de montaje NFS y monte el recurso compartido del servidor NFS en la VM FS-Cache mediante la opción
-fsc
. Por ejemplo:sudo mount <NFS-server-IP>:<NFS-share> <FS-Cache-mount-point> -o fsc where: <NFS-server-IP> is the IP of the origin NFS server <NFS-share> is the path of NFS share directory from the origin NFS server <FS-Cache-mount-point> is the mount point on FS-Cache server
-
Exporte el punto de montaje local editando el archivo
/etc/exports
.sudo echo "<FS-Cache-mount-point> *(rw,wdelay,no_root_squash,no_subtree_check,fsid=10,sec=sys,rw,secure,no_root_squash,no_all_squash)" > /etc/exports
-
Reemplace
<FS-Cache-mount-point>
por la ruta real del punto de montaje. Ejecute el comandoexportfs
.sudo exportfs -a
-
Compruebe que el servicio
cachfilesd
se esté ejecutando.sudo systemctl status cachefilesd
Tarea 3: Montaje del recurso compartido NFS en clientes NFS
Monte los directorios exportados del servidor FS-Cache a los clientes NFS. Por ejemplo, en el cliente NFS, puede ejecutar el siguiente comando.
sudo mount <FS-Cache-IP>:<FS-Cache-mount-point> <local-mount-point>
where: <FS-Cache-server-IP> is the IP of FS-Cache server
<FS-Cache-mount-point> is the path exported from FS-Cache server
<local-mount-point> is the mount point on NFS client
Al leer archivos que aún no están almacenados en caché en el servidor FS-Cache, el tiempo de acceso será mayor. Sin embargo, cuando un archivo se almacena en caché, el tiempo de lectura será comparable al acceso al servidor NFS en la misma LAN. La diferencia será aún más obvia cuando muchos clientes NFS lean el mismo contenido del recurso compartido NFS.
Enlaces relacionados
- Introducción a FS-Cache
- Cómo crear una instancia de Linux
- Creación de una red virtual en la nube
- Cómo crear un equilibrador de carga de red
Agradecimientos
Autor: Michael Prestin (arquitecto principal maestro de nube)
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de Oracle Learning.
Para obtener documentación sobre los productos, visite Oracle Help Center.
Deploy NFS Cache on Oracle Cloud Infrastructure
F86787-01
September 2023
Copyright © 2023, Oracle and/or its affiliates.