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 chargée du téléchargement, du déploiement, de la configuration et de la maintenance de ce plug-in. Il 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 pour effectuer les principales tâches liées au déploiement du plug-in indexeur:

  • Télécharger le logiciel du plug-in d'indexation
  • 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 fournit 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 les 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 de produits Google Workspace, tels que Google Docs et Gmail. En déployant le plug-in indexeur pour Norconex HTTP Collector, un robot d'exploration d'entreprise Open Source, vous pouvez également proposer du contenu Web à vos utilisateurs via Google Cloud Search.

Fichiers de propriétés de configuration

Pour permettre au plug-in indexeur d'effectuer des explorations du 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 rempli 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) d'origine du contenu du document dans l'API d'indexation Cloud Search, où il est indexé et diffusé à 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 d'indexation essaie 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 sur 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.

Conditions préalables

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

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

    En règle générale, l'administrateur Google Workspace du domaine est 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: Installer 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. Extrayez le fichier ZIP que vous venez de créer, puis décompressez le fichier: 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 de HTTP Collector :
    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 indiquez 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 si sa version est supérieure ou identique à celle du 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 ce fichier 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, qui sont nécessaires 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 montre 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 elle est 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 du 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é. En cas de titre manquant, 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 le 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 l'horodatage 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 du schéma itemMetadata.objectType=movie
Type d'objet utilisé par le site, tel que défini dans les définitions d'objet du schéma des sources de données. Si cette propriété n'est pas spécifiée, le connecteur n'indexera aucune donnée structurée.

Remarque: Cette propriété de configuration renvoie vers 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. Les 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éé (gcs-crawl-config.xml, dans cet exemple), 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 racine <httpcollector>.
<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 original du document, sans conversion.
  • text: le plug-in indexeur transmet le contenu extrait, au format texte.

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 pour le plug-in d'indexation.

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 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 démarrer 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> et peuvent inclure:

  • 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, ou pour obtenir la liste complète des paramètres de configuration disponibles, consultez la page Configuration de HTTP Collector.

Étape 5: Lancer 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.