Elementos de almacenamiento en AEM 6.4

En este artículo trataremos:

Visión general del Almacenamiento en el AEM 6

Uno de los cambios más importantes del AEM 6 son las innovaciones a nivel de repositorio.

Actualmente, hay dos implementaciones de almacenamiento de nodos disponibles en AEM6: Almacenamiento Tar y almacenamiento MongoDB.

Almacenamiento Tar

Ejecución de una instancia de AEM recién instalada con el Almacenamiento Tar

PRECAUCIÓN

El PID para el almacén de nodos del segmento ha cambiado de org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStoreService en versiones anteriores de AEM 6 a org.apache.jackrabbit.oak.segment.SegmentNodeStoreService en AEM 6.3. Asegúrese de realizar los ajustes de configuración necesarios para reflejar este cambio.

De forma predeterminada, AEM 6 utiliza el almacenamiento Tar para almacenar nodos y binarios, utilizando las opciones de configuración predeterminadas. Para configurar manualmente su configuración de almacenamiento, siga el procedimiento siguiente:

  1. Descargue el tarro de inicio rápido AEM 6 y colóquelo en una nueva carpeta.

  2. Desempaquetar AEM ejecutando:

    java -jar cq-quickstart-6.jar -unpack

  3. Cree una carpeta con el nombre crx-quickstart\install en el directorio de instalación.

  4. Cree un archivo denominado org.apache.jackrabbit.oak.segment.SegmentNodeStoreService.cfg en la carpeta recién creada.

  5. Edite el archivo y defina las opciones de configuración. Las siguientes opciones están disponibles para el almacén de nodos de segmento, que es la base de AEM implementación de almacenamiento de etiquetas:

    • repository.home:: Ruta al directorio raíz del repositorio en el cual se almacenan varios datos relacionados con el repositorio. De forma predeterminada, los archivos de segmentos se almacenarían en el directorio crx-quickstart/segmentstore.
    • tarmk.size:: Tamaño máximo de un segmento en MB. El valor predeterminado es 256 MB.
  6. Inicio AEM.

Almacenamiento Mongo

Ejecución de una instancia de AEM recién instalada con el Almacenamiento Mongo

AEM 6 puede configurarse para ejecutarse con el almacenamiento MongoDB siguiendo el procedimiento siguiente:

  1. Descargue el tarro de inicio rápido AEM 6 y colóquelo en una nueva carpeta.

  2. Desempaquetar AEM ejecutando el siguiente comando:

    java -jar cq-quickstart-6.jar -unpack

  3. Asegúrese de que MongoDB está instalado y de que se está ejecutando una instancia de mongod. Para obtener más información, consulte Instalación de MongoDB.

  4. Cree una carpeta con el nombre crx-quickstart\install en el directorio de instalación.

  5. Configure el almacén de nodos creando un archivo de configuración con el nombre de la configuración que desee utilizar en el directorio crx-quickstart\install.

    El almacén de nodos de Documento (que es la base para AEM implementación de almacenamiento de MongoDB) utiliza un archivo llamado org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService.cfg

  6. Edite el archivo y defina las opciones de configuración. Las opciones disponibles son las siguientes:

    • mongouri:: El 🔗 MongoURIrequired para conectarse a la base de datos Mongo. El valor predeterminado es mongodb://localhost:27017
    • db:: Nombre de la base de datos de Mongo. De forma predeterminada, las nuevas instalaciones de AEM 6 utilizan aem-author como nombre de la base de datos.
    • cache:: El tamaño de caché en MB. Esto se distribuye entre varias cachés utilizadas en DocumentNodeStore. El valor predeterminado es 256.
    • changesSize:: Tamaño en MB de colección con límite utilizada en Mongo para almacenar en caché la salida de diferencias. El valor predeterminado es 256.
    • customBlobStore:: Valor booleano que indica que se utilizará un almacén de datos personalizado. El valor predeterminado es false.
  7. Cree un archivo de configuración con el PID del almacén de datos que desee utilizar y edite el archivo para configurar las opciones de configuración. Para obtener más información, consulte Configuración de almacenes de nodos y almacenes de datos.

  8. Inicio el tarro de AEM 6 con un fondo de almacenamiento MongoDB ejecutando:

    java -jar cq-quickstart-6.jar -r crx3,crx3mongo
    

    Donde -r es el modo de ejecución back-end. En este ejemplo, inicio con la compatibilidad con MongoDB.

Desactivación de páginas grandes transparentes

Red Hat Linux utiliza un algoritmo de administración de memoria llamado Transparent Enorme Pages (THP). Mientras AEM realiza lecturas y escrituras específicas, THP está optimizado para operaciones de gran tamaño. Debido a esto, se recomienda desactivar THP tanto en Tar como en el almacenamiento Mongo. Para deshabilitar el algoritmo, siga estos pasos:

  1. Abra el archivo /etc/grub.conf en el editor de texto que desee.

  2. Añada la línea siguiente en el archivo grub.conf:

    transparent_hugepage=never
    
  3. Por último, compruebe si la configuración ha surtido efecto al ejecutar:

    cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
    

    Si THP está deshabilitado, el resultado del comando anterior debería ser:

    always madvise [never]
    
NOTA

Además, también puede consultar los siguientes recursos:

  • Para obtener más información acerca de las páginas transparentes y grandes en Red Hat Linux, consulte este artículo.
  • Para obtener sugerencias de ajuste para Linux, consulte este artículo.

Mantenimiento del repositorio

Cada actualización al repositorio crea una nueva revisión de contenido. Como resultado, con cada actualización crece el tamaño del repositorio. Para evitar el crecimiento incontrolado del repositorio, es necesario limpiar las antiguas revisiones para liberar recursos de disco. Esta funcionalidad de mantenimiento se denomina Limpieza de revisión. El mecanismo de limpieza de revisión recuperará espacio en disco eliminando datos obsoletos del repositorio. Para obtener más información sobre la limpieza de revisión, lea la página de limpieza de revisión.

En esta página