Déployer un plug-in indexeur pour Norconex HTTP Collector

Ce guide est destiné aux administrateurs du plug-in indexeur pour Norconex HTTP Collector de Google Cloud Search, c'est-à-dire à toute personne responsable du téléchargement, du déploiement, de la configuration et de la maintenance du plug-in indexeur. Ce guide part du principe que vous connaissez les systèmes d'exploitation Linux, les principes de base de l'exploration du Web, le langage XML et Norconex HTTP Collector.

Ce guide contient des instructions permettant de réaliser les principales tâches liées au déploiement du plug-in indexeur:

  • Télécharger le logiciel du plug-in indexeur
  • Configurer Google Cloud Search
  • Configurer Norconex HTTP Collector et l'exploration du Web
  • Démarrer l'exploration du Web et importer du contenu

Ce guide ne contient pas d'informations sur les tâches que l'administrateur Google Workspace doit effectuer pour mapper Google Cloud Search sur le plug-in indexeur pour Norconex HTTP Collector. Pour en savoir plus sur ces tâches, consultez la page Gérer des sources de données tierces.

Présentation du plug-in indexeur pour Norconex HTTP Collector de Cloud Search

Par défaut, Cloud Search peut explorer, indexer et diffuser le contenu des produits Google Workspace tels que Google Docs et Gmail. Vous pouvez étendre les fonctionnalités de Google Cloud Search pour permettre la diffusion de contenu Web auprès de vos utilisateurs en déployant le plug-in indexeur pour Norconex HTTP Collector, un robot d'exploration d'entreprise Open Source.

Fichiers de propriétés de configuration

Pour permettre au plug-in indexeur d'effectuer des explorations Web et d'importer du contenu dans l'API d'indexation, vous, en tant qu'administrateur du plug-in d'indexation, devez fournir des informations spécifiques lors des étapes de configuration décrites dans ce document à la section Procédure de déploiement.

Pour utiliser le plug-in indexeur, vous devez définir les propriétés dans deux fichiers de configuration:

  • {gcs-crawl-config.xml} : contient les paramètres de Norconex HTTP Collector.
  • sdk-configuration.properties : contient les paramètres de Google Cloud Search.

Les propriétés de chaque fichier permettent au plug-in indexeur de Google Cloud Search et à Norconex HTTP Collector de communiquer entre eux.

Exploration du Web et importation de contenu

Une fois que vous avez renseigné les fichiers de configuration, vous disposez des paramètres nécessaires pour démarrer l'exploration du Web. Norconex HTTP Collector explore le Web, détecte le contenu des documents correspondant à sa configuration et importe les versions binaires (ou texte) originales de ce contenu dans l'API d'indexation de Cloud Search, où le contenu est indexé et diffusé auprès de vos utilisateurs.

Système d'exploitation compatible

Le plug-in indexeur pour Norconex HTTP Collector de Google Cloud Search doit être installé sous Linux.

Version compatible de Norconex HTTP Collector

Le plug-in indexeur pour Norconex HTTP Collector de Google Cloud Search est compatible avec la version 2.8.0.

Compatibilité avec les LCA

Le plug-in indexeur permet de contrôler l'accès aux documents du domaine Google Workspace à l'aide de listes de contrôle d'accès (LCA).

Si les LCA par défaut sont activées dans la configuration du plug-in Google Cloud Search (defaultAcl.mode défini sur une valeur autre que none et configuré avec defaultAcl.*), le plug-in indexeur tente d'abord de créer et d'appliquer une LCA par défaut.

Si les LCA par défaut ne sont pas activées, le plug-in accorde une autorisation de lecture à l'ensemble du domaine Google Workspace.

Pour obtenir une description détaillée des paramètres de configuration des LCA, consultez l'article Paramètres de connecteur fournis par Google.

Prérequis

Avant de déployer le plug-in indexeur, assurez-vous de disposer des composants requis suivants:

  • Java JRE 1.8 installé sur l'ordinateur qui exécute le plug-in indexeur
  • Informations Google Workspace requises pour établir des relations entre Cloud Search et Norconex HTTP Collector:

    L'administrateur Google Workspace du domaine est généralement en mesure de vous fournir ces identifiants.

Procédure de déploiement

Pour déployer le plug-in indexeur, procédez comme suit:

  1. Installer Norconex HTTP Collector et le logiciel du plug-in indexeur
  2. Configurer Google Cloud Search
  3. Configurer Norconex HTTP Collector
  4. Configurer l'exploration du Web
  5. Démarrer l'exploration du Web et importer du contenu

Étape 1: Installez Norconex HTTP Collector et le logiciel du plug-in indexeur

  1. Téléchargez le logiciel de validation Norconex à partir de cette page.
  2. Décompressez le logiciel téléchargé dans le dossier ~/norconex/.
  3. Clonez le plug-in de validation depuis GitHub. git clone https://github.com/google-cloudsearch/norconex-committer-plugin.git, puis cd norconex-committer-plugin
  4. Vérifiez la version souhaitée du plug-in de validation et créez le fichier ZIP : git checkout tags/v1-0.0.3 et mvn package. (Pour ignorer les tests lors de la création du connecteur, utilisez mvn package -DskipTests.)
  5. cd target
  6. Copiez le fichier JAR du plug-in créé dans le répertoire lib norconex. cp google-cloudsearch-norconex-committer-plugin-v1-0.0.3.jar ~/norconex/norconex-collector-http-{version}/lib
  7. Décompressez le fichier ZIP que vous venez de créer, puis décompressez-le: unzip google-cloudsearch-norconex-committer-plugin-v1-0.0.3.zip.
  8. Exécutez le script d'installation pour copier le fichier .jar du plug-in et toutes les bibliothèques requises dans le répertoire du collecteur http :
    1. Accédez au plug-in de validation extrait et décompressé ci-dessus: cd google-cloudsearch-norconex-committer-plugin-v1-0.0.3
    2. Exécutez $ sh install.sh et fournissez le chemin d'accès complet à norconex/norconex-collector-http-{version}/lib comme répertoire cible lorsque vous y êtes invité.
    3. Si des fichiers JAR en double sont détectés, sélectionnez l'option 1 (Copier le fichier JAR source uniquement s'il a une version supérieure ou identique au fichier JAR cible après avoir renommé le fichier JAR cible).

Étape 2: Configurez Google Cloud Search

Pour que le plug-in indexeur se connecte à Norconex HTTP Collector et indexe le contenu approprié, vous devez créer le fichier de configuration Cloud Search dans le répertoire Norconex où est installé Norconex HTTP Collector. Google vous recommande de nommer le fichier de configuration Cloud Search sdk-configuration.properties.

Ce fichier de configuration doit contenir des paires clé/valeur qui définissent un paramètre. Le fichier de configuration doit spécifier au moins les paramètres suivants, indispensables pour accéder à la source de données Cloud Search.

Paramètre Paramètres
ID de la source de données api.sourceId = 1234567890abcdef
Obligatoire. ID de la source Cloud Search configuré par l'administrateur Google Workspace.
Compte de service api.serviceAccountPrivateKeyFile = ./PrivateKey.json
Obligatoire. Fichier contenant la clé du compte de service Cloud Search créé par l'administrateur Google Workspace pour assurer l'accessibilité du plug-in indexeur.

L'exemple suivant présente un fichier sdk-configuration.properties.

#
# data source access
api.sourceId=1234567890abcdef
api.serviceAccountPrivateKeyFile=./PrivateKey.json
#

Le fichier de configuration peut également contenir des paramètres de configuration fournis par Google. Ces paramètres peuvent avoir une incidence sur la manière dont ce plug-in transmet les données à l'API Google Cloud Search. Par exemple, l'ensemble de paramètres batch.* identifie la manière dont le connecteur combine les requêtes.

Si vous ne définissez pas de paramètre dans le fichier de configuration, la valeur par défaut, si disponible, est utilisée. Pour obtenir une description détaillée de chaque paramètre, consultez l'article Paramètres de connecteur fournis par Google.

Vous pouvez configurer le plug-in indexeur pour qu'il insère les métadonnées et les données structurées du contenu indexé. Les valeurs à renseigner pour les champs de métadonnées et de données structurées peuvent être extraites des balises Meta présentes dans le contenu HTML indexé, ou des valeurs par défaut peuvent être spécifiées dans le fichier de configuration.

Paramètre Paramètre
Titre itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=Gone with the Wind
Par défaut, le plug-in utilise HTML title comme titre du document indexé. S'il manque un titre, vous pouvez faire référence à l'attribut de métadonnées qui contient la valeur correspondant au titre du document ou définir une valeur par défaut.
Date et heure de création itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
Attribut de métadonnées qui contient la valeur du code temporel de création du document.
Date et heure de la dernière modification itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
Attribut de métadonnées qui contient la valeur du code temporel de la dernière modification du document.
Langue du document itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=en-US
Langue du contenu des documents indexés.
Type d'objet de schéma itemMetadata.objectType=movie
Type d'objet utilisé par le site, tel que défini dans les définitions d'objet de schéma des sources de données. Si cette propriété n'est pas spécifiée, le connecteur n'indexe aucune donnée structurée.

Remarque: Cette propriété de configuration renvoie à une valeur plutôt qu'à un attribut de métadonnées, et les suffixes .field et .defaultValue ne sont pas acceptés.

Formats de date et d'heure

Les formats de date et d'heure spécifient les formats attendus dans les attributs de métadonnées. Si le fichier de configuration ne contient pas ce paramètre, des valeurs par défaut sont utilisées. Le tableau suivant présente ce paramètre.

Paramètre

Paramètre

Autres formats de date et d'heure

structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX

Liste de formats java.time.format.DateTimeFormatter supplémentaires séparés par un point-virgule. Ces formats sont utilisés lors de l'analyse des valeurs de chaîne de tous les champs de date ou de date/heure dans les métadonnées ou le schéma. La valeur par défaut est une liste vide, mais les formats RFC 3339 et RFC 1123 sont toujours acceptés.

Étape 3: Configurer Norconex HTTP Collector

L'archive ZIP norconex-committer-google-cloud-search-{version}.zip inclut un exemple de fichier de configuration (minimum-config.xml).

Google vous recommande de commencer la configuration en copiant l'exemple de fichier:

  1. Accédez au répertoire Norconex HTTP Collector:
    $ cd ~/norconex/norconex-collector-http-{version}/
  2. Copiez le fichier de configuration:
    $ cp examples/minimum/minimum-config.xml gcs-crawl-config.xml
  3. Modifiez le fichier nouvellement créé (dans cet exemple, gcs-crawl-config.xml), puis ajoutez ou remplacez les nœuds <committer> et <tagger> existants, comme décrit dans le tableau suivant.
Paramètre Paramètres
<committer> node <committer class="com.norconex.committer.googlecloudsearch. GoogleCloudSearchCommitter">

Obligatoire. Pour activer le plug-in, vous devez ajouter un nœud <committer> en tant qu'enfant du nœud <httpcollector> racine.
<UploadFormat> <uploadFormat>raw</uploadFormat>
Facultatif. Format dans lequel le plug-in indexeur transmet le contenu du document à l'API d'indexation de Google Cloud Search. Les valeurs possibles sont les suivantes:
  • raw: le plug-in indexeur transmet le contenu du document d'origine, non converti.
  • text: le plug-in indexeur transmet le contenu textuel extrait.

La valeur par défaut est raw.
BinaryContent Tagger <tagger> node <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
Obligatoire si la valeur de <UploadFormat> est raw. Dans ce cas, le champ de contenu binaire du document doit être disponible.

Vous devez ajouter le nœud BinaryContentTagger <tagger> en tant qu'élément enfant du nœud <importer> / <preParseHandlers>.

L'exemple suivant montre la modification à apporter dans le fichier gcs-crawl-config.xml.

<committer class="com.norconex.committer.googlecloudsearch.GoogleCloudSearchCommitter">
    <configFilePath>/full/path/to/gcs-sdk-config.properties</configFilePath>
    
    <uploadFormat>raw</uploadFormat>
</committer>
<importer>
  <preParseHandlers>
    <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
  </preParseHandlers>
</importer>

Étape 4: Configurer l'exploration du Web

Avant de commencer une exploration du Web, vous devez la configurer de sorte qu'elle n'inclue que les informations que votre organisation souhaite rendre disponibles dans les résultats de recherche. Les paramètres les plus importants pour l'exploration du Web font partie du ou des nœuds <crawler>. Ils peuvent inclure les éléments suivants:

  • URL de début
  • Profondeur maximale de l'exploration
  • Nombre de threads

Modifiez ces valeurs de configuration en fonction de vos besoins. Pour obtenir des informations plus détaillées sur la configuration d'une exploration du Web, ainsi qu'une liste complète des paramètres de configuration disponibles, consultez la page Configuration de HTTP Collector.

Étape 5: Démarrer l'exploration du Web et importer du contenu

Une fois que vous avez installé et configuré le plug-in indexeur, vous pouvez l'exécuter seul en mode local.

L'exemple suivant suppose que les composants requis se trouvent dans le répertoire local d'un système Linux. Exécutez la commande ci-dessous.

$ ./collector-http[.bat|.sh] -a start -c gcs-crawl-config.xml

Surveiller le robot d'exploration avec JEF Monitor

Norconex JEF (Job Execution Framework) Monitor est un outil graphique permettant de surveiller la progression des processus et des tâches du robot d'exploration Norconex (HTTP Collector). Pour accéder à un tutoriel complet sur la configuration de cet utilitaire, consultez la page Surveiller la progression du robot d'exploration avec JEF Monitor.