Déploiement d'extensions personnalisées de profil Ingest dans l'environnement d'exécution de production
Cette rubrique explique comment déployer une image NIFI de recherche personnalisée en production.
Procedure
- Créez une image Docker
search-nifi-apppersonnalisée.Pour le déploiement d'exécution des extensions de personnalisation Ingest, créez une image Docker personnalisée poursearch-nifi-appafin d'inclure les personnalisations créées à l'aide du kit d'outils NiFi.- Créez un fichier de configuration Docker Dockerfile avec le contenu suivant.
FROM search-nifi-app docker image COPY CusDeploy/ /opt/nifi/nifi-current/libOù CusDeploy/ contient le commerce-custom-search-marketplace-seller-9.1.10.0.jar que vous avez intégré dans Test de la logique Ingest personnalisée dans le kit d'outils NiFi et génération d'un fichier JAR déployable.
Si le correctif doit être appliqué :FROM comlnx94.prod.hclpnp.com/9.1.10.0/search-nifi-app:v9-20220322-1524 COPY patches / /opt/nifi/nifi-current/patches WORKDIR /opt/nifi/scripts RUN ./patch.sh COPY CusDeploy/ /opt/nifi/nifi-current/libOù le répertoire patches/ contient le correctif (jar) à appliquer dans la version 9.1.10.0 et où CusDeploy/ contient le commerce-custom-search-marketplace-seller-9.1.10.0.jar intégré dans Test de la logique Ingest personnalisée dans le kit d'outils NiFi et génération d'un fichier JAR déployable.

FROM comlnx94.prod.hclpnp.com/9.1.10.0/search-nifi-app:v9-20220322-1524 COPY CusDeploy/ /opt/nifi/nifi-current/libOù CusDeploy/ doit contenir le commerce-custom-search-marketplace-seller-9.1.10.0.jar intégré dans Test de la logique Ingest personnalisée dans le kit d'outils NiFi et génération d'un fichier JAR déployable.
- Préparez les fichiers de déploiement personnalisés.
- Créez le sous-répertoire CusDeploy dans le même répertoire que le Dockerfile créé dans Créer un processeur NiFi personnalisé en étendant le processeur Ingest par défaut dans le kit d'outils NiFi.
- Copiez le commerce-custom-search-marketplace-seller-9.1.x.x.jar dans le répertoire CusDeploy.
- Copiez le ingest-api.jar obtenu à partir du répertoire libs sous le modèle de projet commerce-custom-search-marketplace-seller.zip extrait dans le répertoire CusDeploy.
Note: A partir de la version 9.1.12.0, ingest-api.jar n'est plus disponible dans les ressources du tutoriel.
- Générez l'image Docker (search-nifi-app) du serveur WiFi personnalisée.
- Ouvrez une invite de commande et accédez au répertoire contenant votre Dockerfile et son sous-répertoire CusDeploy.
- Exécutez la commande de génération Docker pour générer une image Docker personnalisée pour le serveur NiFi (search-nifi-app)
Par exemple :docker build -t search-nifi-app:tagdocker build -t search-nifi-app:nifi-extension .Note:- Assurez-vous que le point est présent à la fin de votre commande de génération Docker.
- Comme le libellé de création du package de déploiement, la balise est utilisée pour identifier l'image Docker personnalisée. Vous pouvez modifier cette image à tout moment pour vous aider à identifier l'image Docker générée.
- Créez un fichier de configuration Docker Dockerfile avec le contenu suivant.
- Déployez le serveur de données Elasticsearch d'exécution via CI/CD à l'aide d'une image Docker personnalisée créée dans Créer un processeur NiFi personnalisé en étendant le processeur Ingest par défaut dans le kit d'outils NiFi.Cette tâche couvre les exigences minimales pour un déploiement basé sur Docker Compose.
- Configurez un environnement de production HCL Commerce avec la méthode de déploiement Docker Compose. Pour plus d'informations sur la configuration de cet environnement, voir Déploiement d'HCL Commerce version 9.1 avec Docker Compose (pour une utilisation hors production).
- (Facultatif) Pour votre image Docker de serveur NiFi personnalisée (search-nifi-app), assurez-vous que les paramètres de déploiement suivants sont correctement définis à la section environnement de votre fichier de configuration docker-compose.
Si votre personnalisation dépend du projet commerce-custom-search-processors-nar, transférez le fichier NAR du répertoire cible du projet commerce-custom-search-processors-nar vers le répertoire d'extension désigné sur le serveur Elasticsearch et montez ce fichier en tant que volume dans le conteneur Docker NiFi. Pour des instructions détaillées, voir la rubrique Génération et déploiement d'un fichier NAR personnalisé.volumes: - ./volumes/hcl-cache-local-redis/cache_cfg-ext.yaml:/SETUP/hcl-cache/cache_cfg-ext.yaml - ./volumes/hcl-cache-local-redis/redis_cfg.yaml:/SETUP/hcl-cache/redis_cfg.yaml - ./volumes/nifi-ext/commerce-custom-search-processors-nar-9.1.10.0.nar:/opt/nifi/nifi-current/extensions/commerce-custom-search-processors-nar-9.1.10.0.narLes étapes suivantes doivent être effectuées sur l'environnement d'exécution de la même manière que dans l'environnement de développement :- Créez un profil Ingest et associez-le à un connecteur par défaut (Création d'un profil Ingest personnalisé et liaison au canal de connecteur par défaut).
- Remplacez le profil de requête de recherche par défaut pour inclure l'attribut seller_description.raw supplémentaire dans la réponse à la requête. (Remplacement des profils de recherche Query pour modifier les champs de réponse).
- Vérifiez que la réponse du profil de recherche contient un attribut supplémentaire seller_description.raw (Test des extensions de profil Ingest).
Cette rubrique explique comment créer une image NiFi de recherche personnalisée, y compris la logique Ingest, et la déployer en production. L'étape suivante consiste à créer un profil Ingest personnalisé et à l'associer à un connecteur par défaut.