Pim-community-dev: Génération de base de données interrompue dans le maître actuel, erreurs ElasticSearch

Créé le 22 sept. 2017  ·  15Commentaires  ·  Source: akeneo/pim-community-dev

Lors de l'utilisation du maître actuel (checkout d5e1d01adafff7e42d985537b953f7d5ba506f47) la génération de la base de données (php bin/console pim:installer:db --env=prod) génère des erreurs sur ElasticSearch et ne continue pas la génération de la base de données.

foo@akeneo-dev :~/pim-community-dev$ php bin/console pim:installer :db --env=prod
Préparer le schéma de la base de données
Base de données abandonnée pour la connexion nommée akeneo_pim
Création de la base de données akeneo_pim pour la connexion nommée par défaut
ATTENTION : Cette opération ne doit pas être exécutée dans un environnement de production.

Création du schéma de base de données...
Schéma de base de données créé avec succès !
Rien à mettre à jour : votre base de données est déjà synchronisée avec les métadonnées de l'entité actuelle.
Réinitialiser les index elasticsearch

[ElasticsearchCommon\Exceptions\NoNodesAvailableException]
Aucun nœud actif trouvé dans votre cluster

Installé à l'aide d'une combinaison d'informations actuelles sur la documentation principale sur le serveur Ubuntu 17.04

tech-improvement

Commentaire le plus utile

Dans mon cas, la valeur index_host dans app/config/parameters.yml était :

localhost :9200

J'ai donc supprimé l'espace blanc et maintenant cela fonctionne bien:

localhost:9200

Tous les 15 commentaires

Salut @TheOnlyJoey ,

Cette erreur ne vient pas du PIM, mais d'Elasticsearch, il semble qu'il ne trouve aucun nœud actif.

Je vous suggère de jeter un œil aux questions existantes déjà soulevées sur le forum Elasticsearch concernant cette erreur, c'est-à-dire :

https://github.com/elastic/elasticsearch-php/issues/519
https://github.com/elastic/elasticsearch-php/issues/300

Documentation Elasticsearch :
https://www.elastic.co/start
https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started.html

J'espère que ces informations vous aideront !

Salutations,
Karine

Salut Karine,

J'ai donc déjà essayé plusieurs versions d'ElasticSearch et vérifié que ce n'était pas un problème de ma version locale.
J'ai également eu des contacts avec les développeurs d'ElasticSearch et ils mentionnent que c'est probablement l'implémentation dans Akeneo qui en est la cause.

Le composeur se construit correctement, donc ElasticSearch a construit et configuré correctement.

J'ai testé sur 2 systèmes différents (Ubuntu 16.04 et Debian Sid) et les deux avaient exactement le même problème, quelle que soit la configuration.

Cette erreur empêche Akeneo de générer une base de données correcte, je pense que ces types d'erreurs sont assez mortelles quelques jours avant la sortie.

@TheOnlyJoey ,

Pourriez-vous partager avec nous vos informations de fichiers système ?

Merci,
Karine

Les systèmes testés sont (comme mentionné) Ubuntu 16.04 avec les dépendances installées à partir de la documentation Akeneo (du maître) et Debian Sid avec les derniers packages.

Également testé sur Ubuntu 17.04 initialement. Tous les systèmes utilisent PHP7.1 comme recommandé.

@TheOnlyJoey ,

Nous pensons que cela pourrait être un problème de connexion lié car cette erreur apparaît généralement lors de l'utilisation de la valeur par défaut pour le paramètre 'index_hosts' ('localhost:9200').

La valeur de configuration de travail est ':@:', par défaut ' elastic:changeme@localhost :9200' (modifié)

Vous pouvez trouver le paramètre 'index_hosts' dans app/config/parameters.yml

Salutations,
Karine

Changer la valeur en ':@:' donne :

[ElasticsearchCommon\Exceptions\InvalidArgumentException]
Impossible d'analyser l'URI

Aussi, comme vous pouvez le voir dans https://github.com/akeneo/pim-community-dev/blob/master/app/config/parameters.yml.dist#L13 la valeur par défaut pour index_hosts est ' localhost:9200 '

Bonjour @TheOnlyJoey

Désolé il y avait un problème sur l'affichage de la valeur dans le commentaire précédent.

La valeur de configuration de travail est :
'<user>:<password>@<server>:<port>'

c'est bien par défaut ' elastic:changeme@localhost :9200'

Salutations,
Karine

Il semble qu'il n'y ait pas d'avertissement ou de vérification si ElasticSearch est en cours d'exécution, Composer semble avoir à l'origine tué le service ElasticSearch.
Le redémarrage forcé du processus a résolu le problème, en utilisant localhost:9200 normal.

Il peut être judicieux de s'assurer qu'ElasticSearch s'exécute dans le script pim:installer :db de la console, car sans cela, l'installation ne se terminera pas.

j'essaie de faire fonctionner akeneo avec un cluster de recherche aws elastic ... obtenir
Dans StaticNoPingConnectionPool.php ligne 51 :

Aucun nœud actif trouvé dans votre cluster

Dans app/config/parameters.yml, j'ai changé l'index_host en point de terminaison aws vpc - quelqu'un a-t-il une idée ?

Dans mon cas, la valeur index_host dans app/config/parameters.yml était :

localhost :9200

J'ai donc supprimé l'espace blanc et maintenant cela fonctionne bien:

localhost:9200

la solution était port:80... aws utilise le port 80...

Salut,

j'ai perdu tellement de temps pour l'obtenir.

localhost:9200 n'a pas fonctionné
localhost: 9200 n'a pas fonctionné

Je ne sais pas pourquoi Akeneo n'expédie pas de conteneurs de travail prêts à l'emploi.

jetez un oeil à la documentation
https://docs.akeneo.com/3.0/install_pim/docker/installation_docker.html

dans votre parameters.yml.dist vous devez définir
élastique:changeme@elasticsearch :9200

Après ça:
nettoyer le conteneur
docker-compose down -v

démarrer le conteneur
docker-compose up -d

bin/docker/pim-dependencies.sh
bin/docker/pim-initialize.sh

et elasticsearch devrait fonctionner.

Ainsi, la chaîne de connexion pour le plugin Google Chrome ElasticSearch Head est :
(ici, vous pouvez également vérifier si la machine elasticsearch est en cours d'exécution)
http://localhost :9210/

elastic : nom d'utilisateur par défaut pour elasticsearch, défini nulle part
changeme : mot de passe par défaut pour elasticsearch, défini nulle part
elasticsearch : dans le docker-compose.yml vous devriez trouver "elasticsearch", c'est le nom d'hôte qui est utilisé ici.

9200 : le port utilisé est défini dans
docker-compose.override.yml
- '9210:9200'
9200 docker machine port
Port externe 9210 pour la connexion depuis votre machine hôte

j'essaie de faire fonctionner akeneo avec un cluster de recherche aws elastic ... obtenir
Dans StaticNoPingConnectionPool.php ligne 51 :

Aucun nœud actif trouvé dans votre cluster

Dans app/config/parameters.yml, j'ai changé l'index_host en point de terminaison aws vpc - quelqu'un a-t-il une idée ?

avez-vous déjà résolu cela?

@Rud5G oui... aws utilise le port 80...

S'il vous plaît, quelqu'un peut-il m'aider? Je suis confronté au même défi et j'y suis resté pendant des heures sans aucun progrès.

`Dans StaticNoPingConnectionPool.php ligne 53 :

Aucun nœud actif trouvé dans votre cluster

La commande s'est terminée par un code d'erreur : 1.
Erreur lors de l'installation du PIM. La commande s'est terminée par un code d'erreur : 1.
`
J'ai suivi toutes les solutions suggérées énumérées ci-dessus, mais il n'y a aucun changement. J'utilise Akeneo version 3.2.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

ronn0 picture ronn0  ·  4Commentaires

ewallteam picture ewallteam  ·  6Commentaires

Piotr-Borek picture Piotr-Borek  ·  5Commentaires

a2xchip picture a2xchip  ·  5Commentaires

paulchubatyy picture paulchubatyy  ·  5Commentaires