Развертывание подключаемого модуля индексатора HTTP Collector Norconex

Это руководство предназначено для администраторов подключаемого модуля индексатора Google Cloud Search Norconex HTTP Collector, то есть всех, кто отвечает за загрузку, развертывание, настройку и обслуживание подключаемого модуля индексатора. В руководстве предполагается, что вы знакомы с операционными системами Linux, основами веб-сканирования, XML и Norconex HTTP Collector .

В это руководство включены инструкции по выполнению ключевых задач, связанных с развертыванием плагина индексатора:

  • Загрузите программное обеспечение плагина индексатора
  • Настройка Google Cloud Search
  • Настройка Norconex HTTP Collector и веб-сканирования
  • Запустите сканирование веб-страниц и загрузите контент

Информация о задачах, которые должен выполнить администратор Google Workspace для сопоставления Google Cloud Search с подключаемым модулем индексатора Norconex HTTP Collector, в этом руководстве не представлена. Информацию об этих задачах см. в разделе Управление сторонними источниками данных .

Обзор плагина индексатора Cloud Search Norconex HTTP Collector

По умолчанию Cloud Search может обнаруживать, индексировать и предоставлять контент из продуктов Google Workspace, таких как Google Docs и Gmail. Вы можете расширить возможности Google Cloud Search, включив в него предоставление веб-контента вашим пользователям, развернув подключаемый модуль индексатора для Norconex HTTP Collector , корпоративного веб-сканера с открытым исходным кодом.

Файлы свойств конфигурации

Чтобы плагин индексатора мог выполнять сканирование веб-страниц и загружать контент в API индексирования, вы, как администратор плагина индексатора, предоставляете конкретную информацию на этапах настройки, описанных в этом документе в разделе «Шаги развертывания» .

Чтобы использовать плагин индексатора, вы должны установить свойства в двух файлах конфигурации:

  • {gcs-crawl-config.xml} — содержит настройки для Norconex HTTP Collector.
  • sdk-configuration.properties — содержит настройки для Google Cloud Search.

Свойства каждого файла позволяют плагину индексатора Google Cloud Search и Norconex HTTP Collector взаимодействовать друг с другом.

Сканирование веб-страниц и загрузка контента

После заполнения файлов конфигурации у вас есть необходимые настройки для запуска сканирования в Интернете . Norconex HTTP Collector сканирует Интернет, обнаруживая содержимое документа, соответствующее его конфигурации, и загружает исходные двоичные (или текстовые) версии содержимого документа в API индексирования Cloud Search, где он индексируется и в конечном итоге предоставляется вашим пользователям.

Поддерживаемая операционная система

В Linux должен быть установлен подключаемый модуль индексатора Google Cloud Search Norconex HTTP Collector.

Поддерживаемая версия Norconex HTTP Collector

Плагин индексатора Google Cloud Search Norconex HTTP Collector поддерживает версию 2.8.0.

Поддержка ACL

Плагин индексатора поддерживает контроль доступа к документам в домене Google Workspace с помощью списков контроля доступа (ACL).

Если списки ACL по умолчанию включены в конфигурации плагина Google Cloud Search ( defaultAcl.mode установлено значение, отличное от none , и настроено с помощью defaultAcl.* ), плагин индексатора сначала пытается создать и применить ACL по умолчанию.

Если списки ACL по умолчанию не включены, плагин возвращается к предоставлению разрешения на чтение всему домену Google Workspace.

Подробное описание параметров конфигурации ACL см. в разделе Параметры соединителя, предоставленные Google .

Предварительные условия

Прежде чем развертывать подключаемый модуль индексатора, убедитесь, что у вас есть следующие необходимые компоненты:

  • Java JRE 1.8 установлена ​​на компьютере, на котором установлен плагин индексатора.
  • Информация Google Workspace, необходимая для установления связи между Cloud Search и Norconex HTTP Collector:

    Обычно эти учетные данные может предоставить администратор Google Workspace домена.

Этапы развертывания

Чтобы развернуть плагин индексатора, выполните следующие действия:

  1. Установите Norconex HTTP Collector и программное обеспечение плагина индексатора.
  2. Настройка Google Cloud Search
  3. Настройка HTTP-коллектора Norconex
  4. Настройка веб-сканирования
  5. Запуск сканирования веб-страниц и загрузка контента

Шаг 1. Установите Norconex HTTP Collector и программное обеспечение подключаемого модуля индексатора.

  1. Загрузите программное обеспечение коммиттера Norconex с этой страницы.
  2. Разархивируйте загруженное программное обеспечение в папку ~/norconex/
  3. Клонируйте плагин коммиттера с GitHub. git clone https://github.com/google-cloudsearch/norconex-committer-plugin.git , а затем cd norconex-committer-plugin
  4. Проверьте нужную версию плагина коммиттера и создайте ZIP-файл: git checkout tags/v1-0.0.3 и mvn package (чтобы пропустить тесты при создании соединителя, используйте mvn package -DskipTests .)
  5. cd target
  6. Скопируйте созданный файл jar плагина в каталог norconex lib. cp google-cloudsearch-norconex-committer-plugin-v1-0.0.3.jar ~/norconex/norconex-collector-http-{version}/lib
  7. Извлеките только что созданный ZIP-файл, а затем разархивируйте его: unzip google-cloudsearch-norconex-committer-plugin-v1-0.0.3.zip
  8. Запустите сценарий установки, чтобы скопировать .jar плагина и все необходимые библиотеки в каталог http-сборщика:
    1. Измените извлеченный плагин коммиттера, разархивированный выше: cd google-cloudsearch-norconex-committer-plugin-v1-0.0.3
    2. Выполните $ sh install.sh и при появлении соответствующего запроса укажите полный путь к norconex/norconex-collector-http-{version}/lib в качестве целевого каталога.
    3. Если обнаружены дубликаты файлов JAR, выберите вариант 1 (Копировать исходный Jar только в том случае, если версия целевого Jar выше или совпадает с ее версией после переименования целевого Jar).

Шаг 2. Настройте Google Cloud Search

Чтобы подключаемый модуль индексатора мог подключаться к Norconex HTTP Collector и индексировать соответствующий контент, необходимо создать файл конфигурации Cloud Search в каталоге Norconex, где установлен Norconex HTTP Collector. Google рекомендует назвать файл конфигурации Cloud Search sdk-configuration.properties .

Этот файл конфигурации должен содержать пары ключ/значение, определяющие параметр. В файле конфигурации должны быть указаны как минимум следующие параметры, необходимые для доступа к источнику данных Cloud Search.

Параметр Параметр
Идентификатор источника данных api.sourceId = 1234567890abcdef
Необходимый. Идентификатор источника Cloud Search, установленный администратором Google Workspace.
Сервисный аккаунт api.serviceAccountPrivateKeyFile = ./PrivateKey.json
Необходимый. Файл ключа аккаунта службы Cloud Search, созданный администратором Google Workspace для доступа к плагину индексатора.

В следующем примере показан файл sdk-configuration.properties .

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

Файл конфигурации также может содержать параметры конфигурации, предоставленные Google. Эти параметры могут влиять на то, как этот плагин передает данные в API Google Cloud Search. Например, набор параметров batch.* определяет, как соединитель объединяет запросы.

Если вы не определяете параметр в файле конфигурации, используется значение по умолчанию, если оно доступно. Подробное описание каждого параметра см. в разделе Параметры соединителя, предоставленные Google .

Вы можете настроить плагин индексатора для заполнения метаданных и структурированных данных для индексируемого контента. Значения, которые необходимо заполнить для полей метаданных и структурированных данных, можно извлечь из метатегов в индексируемом содержимом HTML или указать значения по умолчанию в файле конфигурации.

Параметр Параметр
Заголовок itemMetadata.title.field= movieTitle
itemMetadata.title.defaultValue= Gone with the Wind
По умолчанию плагин использует HTML title в качестве заголовка индексируемого документа. В случае отсутствия заголовка вы можете либо обратиться к атрибуту метаданных, который содержит значение, соответствующее заголовку документа, либо установить значение по умолчанию.
Временная метка создания itemMetadata.createTime.field= releaseDate
itemMetadata.createTime.defaultValue= 1940-01-17
Атрибут метаданных, содержащий значение отметки времени создания документа.
Время последнего изменения itemMetadata.updateTime.field= releaseDate
itemMetadata.updateTime.defaultValue= 1940-01-17
Атрибут метаданных, содержащий значение временной метки последнего изменения документа.
Язык документа itemMetadata.contentLanguage.field= languageCode
itemMetadata.contentLanguage.defaultValue= en-US
Язык содержимого индексируемых документов.
Тип объекта схемы itemMetadata.objectType= movie
Тип объекта, используемый сайтом, как определено в определениях объектов схемы источника данных . Соединитель не будет индексировать структурированные данные, если это свойство не указано.

Примечание . Это свойство конфигурации указывает на значение, а не на атрибут метаданных, а суффиксы .field и .defaultValue не поддерживаются.

Форматы даты и времени

Форматы даты и времени определяют форматы, ожидаемые в атрибутах метаданных. Если файл конфигурации не содержит этого параметра, используются значения по умолчанию. В следующей таблице показан этот параметр.

Параметр

Параметр

Дополнительные шаблоны даты и времени

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

Список дополнительных шаблонов java.time.format.DateTimeFormatter, разделенных точкой с запятой. Шаблоны используются при анализе строковых значений для любых полей даты или даты в метаданных или схеме. Значением по умолчанию является пустой список, но форматы RFC 3339 и RFC 1123 поддерживаются всегда.

Шаг 3. Настройка HTTP-коллектора Norconex

ZIP-архив norconex-committer-google-cloud-search-{version}.zip включает пример файла конфигурации minimum-config.xml .

Google рекомендует начать настройку с копирования файла примера:

  1. Перейдите в каталог Norconex HTTP Collector:
    $ cd ~/norconex/norconex-collector-http-{version}/
  2. Скопируйте файл конфигурации:
    $ cp examples/minimum/minimum-config.xml gcs-crawl-config.xml
  3. Отредактируйте вновь созданный файл (в данном примере gcs-crawl-config.xml ) и добавьте или замените существующие узлы <committer> и <tagger> , как описано в следующей таблице.
Параметр Параметр
<committer> node <committer class="com.norconex.committer.googlecloudsearch. GoogleCloudSearchCommitter">

Необходимый. Чтобы включить плагин, вы должны добавить узел <committer> в качестве дочернего элемента корневого узла <httpcollector> .
<UploadFormat> <uploadFormat>raw</uploadFormat>
Необязательный. Формат, в котором плагин индексатора передает содержимое документа в API индексатора Google Cloud Search. Допустимые значения:
  • raw : плагин индексатора помещает исходное, неконвертированное содержимое документа.
  • text : плагин индексатора помещает извлеченный текстовый контент.

Значение по умолчанию — raw .
BinaryContent Tagger <tagger> node <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
Требуется, если значение <UploadFormat> raw . В этом случае плагину индексатора необходимо, чтобы поле двоичного содержимого документа было доступно.

Необходимо добавить узел BinaryContentTagger <tagger> в качестве дочернего элемента узла <importer> / <preParseHandlers> .

В следующем примере показано необходимое изменение 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>

Шаг 4. Настройте сканирование веб-страниц

Прежде чем начать сканирование веб-страниц, вы должны настроить сканирование так, чтобы оно включало только ту информацию, которую ваша организация хочет сделать доступной в результатах поиска. Наиболее важные настройки веб-сканирования являются частью узлов <crawler> и могут включать в себя:

  • Начальные URL
  • Максимальная глубина сканирования
  • Количество потоков

Измените эти значения конфигурации в соответствии с вашими потребностями. Более подробную информацию о настройке веб-сканирования, а также полный список доступных параметров конфигурации см. на странице конфигурации HTTP Collector.

Шаг 5. Запустите сканирование веб-страниц и загрузку контента.

После того, как вы установили и настроили плагин индексатора, вы можете запустить его самостоятельно в локальном режиме.

В следующем примере предполагается, что необходимые компоненты расположены в локальном каталоге системы Linux. Выполните следующую команду:

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

Мониторинг сканера с помощью JEF Monitor

Norconex JEF (Job Execution Framework) Monitor — это графический инструмент для мониторинга хода процессов и заданий Norconex Web Crawler (HTTP Collector). Полное руководство по настройке этой утилиты можно найти на странице «Отслеживание прогресса вашего сканера с помощью JEF Monitor» .