Implemente de la lógica personalizada de Ingest en el servidor de ElasticSearch para el entorno de desarrollo de Commerce
En este tema, ampliará el conector predeterminado desplegando la lógica personalizada de Ingest en el contenedor NiFi en la plataforma de datos y, a continuación, creando un perfil de Ingest personalizado para enlazarlo al canal del conector predeterminado.
Procedure
Copie commerce-custom-search-marketplace-seller-9.1.10.0.jar desde el directorio de destino en el proyecto commerce-custom-search-marketplace-seller en el kit de herramientas NiFi, y ingest-api.jar desde commerce-custom-search-marketplace-seller el directorio del proyecto libs al directorio libs del contenedor NiFi en el servidor de datos de Elasticsearch.
docker cp "/root/commerce-custom-search-marketplace-seller-9.1.10.0.jar" NIFI_CONTAINER_ID:/opt/nifi/nifi-current/lib docker cp "/root/ingest-api.jar" NIFI_CONTAINER_ID:/opt/nifi/nifi-current/lib
Note: A partir de V9.1.12.0 ingest-api.jar no está disponible dentro de los elementos del tutorial y, por lo tanto, no es necesario ejecutar el siguiente comando de copia de Docker para copiarlo en el directorio lib del contenedor NiFi.
docker cp "/root/ingest-api.jar" NIFI_CONTAINER_ID:/opt/nifi/nifi-current/lib
Note: (Opcional) Este tutorial de personalización es independiente del proyecto commerce-custom-search-processors-nar. Sin embargo, si la personalización depende del proyecto commerce-custom-search-processors-nar, transfiera el archivo NAR del directorio de destino del proyecto commerce-custom-search-processors-nar al directorio de extensión designado en el servidor de Elasticsearch y monte este archivo como volumen en el contenedor Docker de NiFi.Ignore los archivos SEV generados en proyectos distintos de commerce-custom-search-processors-nar. Para obtener más información, consulte Compilación y despliegue de un archivo NAR personalizado.
o ejemplo, podría utilizar el siguiente comando para montar el archivo NAR que se ha añadido a la carpeta /extensions, en lugar de montar la carpeta de volúmenes:docker run -it -p 30600:30600 --name elasticsearch_nifi_1 -v /{docker-compose dir}/volumes/nifi-ext/commerce-custom-search-processors-nar-9.1.x.x:/opt/nifi/nifi-current/extensions/commerce-custom-search-processors-nar-9.1.x.x search-nifi-app:v9-latest
Donde elasticsearch_nifi_1 es el contenedor NiFi del servidor de Elasticsearch y search-nifi-app:v9-latest es la imagen de NiFi.
- Reinicie el contenedor de NiFi.
En este tema, ha ampliado el conector predeterminado desplegando la lógica personalizada de Ingest en el contenedor NiFi. Además, ha creado un perfil de Ingest personalizado para enlazarlo al canal del conector predeterminado.