Puntos de extensión de verificación de índice

La infraestructura de verificación de índice de búsqueda proporciona puntos de extensión para que pueda supervisar de forma más precisa el estado del índice.

Habilitar puntos de ampliación

Durante la verificación, el manejador de réplica desencadena la operación de comprobación de núcleos en la configuración gestionada. En el servidor maestro, el punto de entrada para llamar a las operaciones es el manejador de solicitudes de operación de núcleo o su propio manejador de solicitudes personalizadas definido. La lógica de operaciones de comprobación se desencadena automáticamente y se ejecuta cada vez que la réplica de índice descarga por completo archivos de índice nuevos y conmuta de nuevo al nuevo índice. Como resultado, las operaciones tras éxito o tras error se desencadenan automáticamente en los servidores subordinados y repetidores.

En la configuración gestionada, puede utilizar la infraestructura de verificación de índice de búsqueda habilitando healthCheckOps y estableciendo el distintivo checkOps en el archivo solrconfig.xml.

<lst name="healthCheckOps">
       <str name="enable">${healthCheckOps.enable:false}</str>
       <str name="forceHealthCheckEveryPollInterval">${healthCheckOps.forceHealthCheckEveryPollInterval:true}</str>
       <str name="checkOps">${healthCheckOps.checkOps:com.ibm.commerce.foundation.solr.operation.SolrDoQueryCheckOperation}</str>
	<str name="uponSuccessOps">${healthCheckOps.uponSuccessOps:}</str>
	<str name="uponFailureOps">${healthCheckOps.uponFailureOps:}</str> 
</lst>	
healthCheckOps.checkOpsproporciona acceso a clases que puede utilizar para personalizar el proceso de verificación. En el ejemplo anterior, la clase a la que se llama es SolrDoQueryCheckOperation. Las clases le permiten realizar una copia de seguridad, replicar y consultar los índices.

Realizar copia de seguridad del índice

Para proteger el índice de los clientes, es mejor realizar una copia de seguridad del índice mediante una réplica una vez que la réplica se realiza correctamente; de lo contrario, restaure la última copia de seguridad del índice. Puede utilizar dos clases para este fin.
SolrDoIndexBackupOperation
Crea una copia de seguridad de índice, de forma predeterminada, en el directorio /data/backups del núcleo.
Una vez realizada la copia de seguridad, una carpeta llamada snapshot.timestamp se creará en la carpeta /data/backups.
También puede invocar SolrDoIndexBackupOperation a través de core name/operation?command=backup. Utilizando esta sintaxis, la clase acepta dos parámetros opcionales adicionales.
location
La carpeta diferente a /data/backups to hold backups para contener copias de seguridad, puede ser una ruta relativa (sin la barra diagonal /), que crea una profundidad arbitraria de la ruta que empieza similar a la carpeta /data. De lo contrario, la ruta absoluta especifica la ubicación de extracción para las copias de seguridad, si no hay problema de permiso de archivo.
numberToKeep
el número de copias que se van a guardar en la ubicación. Por ejemplo: <core name>/operation?command=backup&location=test/1&numberToKeep=2 De esta forma, la copia de seguridad se almacene /test/1/snapshot.<timestamp> y, como máximo, habrá dos copias disponibles.
SolrDoBackupRestoreOperation
Restaura una copia de seguridad de índice del directorio /data/backups del núcleo a menos que se especifique una ubicación. Una vez que se ha realizado la restauración, se creará una carpeta denominada snapshot.backup timestamp.restored.restore timestamp en /data folder. /data/index.properties se actualizará (o se creará si no existe) para la carpeta restaurada.
Esta clase también se puede invocar a través de core name/operation?command=restore, y también puede tomar dos parámetros opcionales.
location
Carpeta distinta a /data/backups en la que buscar copias de seguridad. Si hay varias copias de las copias de seguridad, la última se seleccionará de forma predeterminada.
backupName
Una copia específica indicada por snapshot.timestamp para restaurar el índice. Este parámetro prevalece sobre el comportamiento predeterminado de seleccionar el índice más reciente. Por ejemplo:
core name/operation?command=restore&location=test/1&backupName=snapshot.timestamp
Puede hacer que estas dos operaciones se lleven a cabo automáticamente, en base al éxito o al fracaso de la replicación, especificando las siguientes propiedades.
  • healthCheckOps.uponSuccessOps=com.ibm.commerce.foundation.solr.operation.SolrDoIndexBackupOperation
  • healthCheckOps.uponFailureOps=com.ibm.commerce.foundation.solr.operation.SolrDoBackupRestoreOperation
Para obtener más información, consulte Ampliar el archivo solrconfig.xml.

Operaciones auxiliares

SolrDoFetchIndexOperation
Realiza una réplica desde un repetidor o el maestro de búsqueda. De forma predeterminada, volverá a intentar la operación 5 veces, cada intento con un rango de 15 segundos. La clase se puede invocar a través de core name/operation?command=fetchIndex, y puede tomar dos parámetros opcionales.
retryFetchIndexAttemptsLimit
Número máximo de recuperaciones permitidas.
retryFetchIndexDelay
rango entre reintentos.
SolrDoStatusCheckOperation
Verifica la conectividad entre el maestro y el repetidor, o el repetidor y el subordinado. Notificará la anomalía si el nodo maestro no está disponible. Verificará si los índices en el nodo maestro y subordinado están sincronizados.
SolrDoQueryCheckOperation
Realiza una consulta de *:* en el índice activo actual e informa sobre el número de documentos en el índice.