Skip to main content
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Configurar el servicio de integración de búsqueda

Puede habilitar la integración de búsqueda para un depósito creando un XML de integración de búsqueda y utilizando el Administrador de inquilinos para aplicar el XML al depósito.

Antes de empezar
  • Un administrador de StorageGRID habilitó los servicios de plataforma para su cuenta de inquilino.

  • Ya ha creado un bucket S3 cuyo contenido desea indexar.

  • El punto final que desea utilizar como destino para el servicio de integración de búsqueda ya existe y tiene su URN.

  • Perteneces a un grupo de usuarios que tiene la"Administrar todos los depósitos o permisos de acceso raíz" . Estos permisos anulan las configuraciones de permisos en las políticas de grupo o de depósito cuando se configura el depósito mediante el Administrador de inquilinos.

Acerca de esta tarea

Después de configurar el servicio de integración de búsqueda para un depósito de origen, la creación de un objeto o la actualización de los metadatos o las etiquetas de un objeto activa el envío de metadatos del objeto al punto final de destino.

Si habilita el servicio de integración de búsqueda para un depósito que ya contiene objetos, las notificaciones de metadatos no se envían automáticamente para los objetos existentes. Actualice estos objetos existentes para garantizar que sus metadatos se agreguen al índice de búsqueda de destino.

Pasos
  1. Habilitar la integración de búsqueda para un depósito:

    • Utilice un editor de texto para crear el XML de notificación de metadatos necesario para habilitar la integración de búsqueda.

    • Al configurar el XML, utilice la URN de un punto final de integración de búsqueda como destino.

      Los objetos se pueden filtrar según el prefijo del nombre del objeto. Por ejemplo, podría enviar metadatos para objetos con el prefijo images a un destino y metadatos para objetos con el prefijo videos a otro. Las configuraciones que tienen prefijos superpuestos no son válidas y se rechazan cuando se envían. Por ejemplo, una configuración que incluye una regla para objetos con el prefijo test y una segunda regla para los objetos con el prefijo test2 No está permitido.

      Según sea necesario, consulte laEjemplos para la configuración de metadatos XML .

      <MetadataNotificationConfiguration>
       <Rule>
          <Status>Enabled</Status>
          <Prefix></Prefix>
          <Destination>
             <Urn>/Urn>
             </Destination>
       </Rule>
      </MetadataNotificationConfiguration>

      Elementos en el XML de configuración de notificación de metadatos:

    Nombre Descripción Requerido

    Configuración de notificación de metadatos

    Etiqueta contenedora para reglas utilizadas para especificar los objetos y el destino de las notificaciones de metadatos.

    Contiene uno o más elementos de regla.

    Regla

    Etiqueta contenedora para una regla que identifica los objetos cuyos metadatos deben agregarse a un índice específico.

    Se rechazan las reglas con prefijos superpuestos.

    Incluido en el elemento MetadataNotificationConfiguration.

    IDENTIFICACIÓN

    Identificador único de la regla.

    Incluido en el elemento Regla.

    No

    Estado

    El estado puede ser 'Habilitado' o 'Deshabilitado'. No se realiza ninguna acción para las reglas que están deshabilitadas.

    Incluido en el elemento Regla.

    Prefijo

    Los objetos que coinciden con el prefijo se ven afectados por la regla y sus metadatos se envían al destino especificado.

    Para que coincida con todos los objetos, especifique un prefijo vacío.

    Incluido en el elemento Regla.

    Destino

    Etiqueta de contenedor para el destino de una regla.

    Incluido en el elemento Regla.

    Urna

    URN del destino donde se envían los metadatos del objeto. Debe ser la URN de un punto final de StorageGRID con las siguientes propiedades:

    • `es`Debe ser el tercer elemento.

    • La URN debe terminar con el índice y tipo donde se almacenan los metadatos, en el formato domain-name/myindex/mytype .

    Los puntos finales se configuran mediante el Administrador de inquilinos o la API de administración de inquilinos. Toman la siguiente forma:

    • arn:aws:es:region:account-ID:domain/mydomain/myindex/mytype

    • urn:mysite:es:::mydomain/myindex/mytype

    El punto final debe configurarse antes de enviar el XML de configuración; de lo contrario, la configuración fallará con un error 404.

    URN está incluido en el elemento Destino.

  2. En el Administrador de inquilinos, seleccione ALMACENAMIENTO (S3) > Cubos.

  3. Seleccione el nombre del depósito de origen.

    Aparece la página de detalles del depósito.

  4. Seleccione Servicios de plataforma > Integración de búsqueda

  5. Seleccione la casilla de verificación Habilitar integración de búsqueda.

  6. Pegue la configuración de notificación de metadatos en el cuadro de texto y seleccione Guardar cambios.

    Nota Los servicios de plataforma deben ser habilitados para cada cuenta de inquilino por un administrador de StorageGRID mediante Grid Manager o la API de administración. Comuníquese con su administrador de StorageGRID si se produce un error al guardar el XML de configuración.
  7. Verifique que el servicio de integración de búsqueda esté configurado correctamente:

    1. Agregue un objeto al depósito de origen que cumpla con los requisitos para activar una notificación de metadatos según lo especificado en el XML de configuración.

      En el ejemplo mostrado anteriormente, todos los objetos agregados al depósito activan una notificación de metadatos.

    2. Confirme que se agregó un documento JSON que contiene los metadatos y las etiquetas del objeto al índice de búsqueda especificado en el punto final.

Después de terminar

Según sea necesario, puede deshabilitar la integración de búsqueda para un depósito utilizando cualquiera de los siguientes métodos:

  • Seleccione ALMACENAMIENTO (S3) > Cubos y desmarque la casilla Habilitar integración de búsqueda.

  • Si está utilizando la API S3 directamente, utilice una solicitud de notificación de metadatos de DELETE Bucket. Consulte las instrucciones para implementar aplicaciones cliente S3.

Ejemplo: Configuración de notificación de metadatos que se aplica a todos los objetos

En este ejemplo, los metadatos de todos los objetos se envían al mismo destino.

<MetadataNotificationConfiguration>
    <Rule>
        <ID>Rule-1</ID>
        <Status>Enabled</Status>
        <Prefix></Prefix>
        <Destination>
           <Urn>urn:myes:es:::sgws-notifications/test1/all</Urn>
        </Destination>
    </Rule>
</MetadataNotificationConfiguration>

Ejemplo: Configuración de notificación de metadatos con dos reglas

En este ejemplo, metadatos de objeto para objetos que coinciden con el prefijo /images se envía a un destino, mientras que los metadatos del objeto para los objetos que coinciden con el prefijo /videos se envía a un segundo destino.

<MetadataNotificationConfiguration>
    <Rule>
        <ID>Images-rule</ID>
        <Status>Enabled</Status>
        <Prefix>/images</Prefix>
        <Destination>
           <Urn>arn:aws:es:us-east-1:3333333:domain/es-domain/graphics/imagetype</Urn>
        </Destination>
    </Rule>
    <Rule>
        <ID>Videos-rule</ID>
        <Status>Enabled</Status>
        <Prefix>/videos</Prefix>
        <Destination>
           <Urn>arn:aws:es:us-west-1:22222222:domain/es-domain/graphics/videotype</Urn>
        </Destination>
    </Rule>
</MetadataNotificationConfiguration>

Formato de notificación de metadatos

Cuando habilita el servicio de integración de búsqueda para un depósito, se genera un documento JSON y se envía al punto final de destino cada vez que se agregan, actualizan o eliminan metadatos o etiquetas de objeto.

Este ejemplo muestra un ejemplo del JSON que podría generarse cuando un objeto con la clave SGWS/Tagging.txt se crea en un depósito llamado test . El test El bucket no tiene versión, por lo que versionId La etiqueta está vacía.

{
  "bucket": "test",
  "key": "SGWS/Tagging.txt",
  "versionId": "",
  "accountId": "86928401983529626822",
  "size": 38,
  "md5": "3d6c7634a85436eee06d43415012855",
  "region":"us-east-1",
  "metadata": {
    "age": "25"
  },
  "tags": {
    "color": "yellow"
  }
}

Campos incluidos en el documento JSON

El nombre del documento incluye el nombre del depósito, el nombre del objeto y el ID de la versión, si está presente.

Información de depósito y objeto

bucket: Nombre del bucket

key: Nombre de la clave del objeto

versionID:Versión del objeto, para objetos en depósitos versionados

region: Región del cubo, por ejemplo us-east-1

Metadatos del sistema

size:Tamaño del objeto (en bytes) tal como lo ve un cliente HTTP

md5: Hash de objeto

Metadatos del usuario

metadata:Todos los metadatos del usuario para el objeto, como pares clave-valor

key:value

Etiquetas

tags:Todas las etiquetas de objeto definidas para el objeto, como pares clave-valor

key:value

Cómo ver resultados en Elasticsearch

Para las etiquetas y los metadatos del usuario, StorageGRID pasa fechas y números a Elasticsearch como cadenas o como notificaciones de eventos S3. Para configurar Elasticsearch para que interprete estas cadenas como fechas o números, siga las instrucciones de Elasticsearch para el mapeo de campos dinámicos y para el mapeo de formatos de fecha. Habilite las asignaciones de campos dinámicos en el índice antes de configurar el servicio de integración de búsqueda. Una vez indexado un documento, no es posible editar los tipos de campos del documento en el índice.