Pim-community-dev: Generación de base de datos rota en maestro actual, errores de ElasticSearch

Creado en 22 sept. 2017  ·  15Comentarios  ·  Fuente: akeneo/pim-community-dev

Cuando se usa el maestro actual (checkout d5e1d01adafff7e42d985537b953f7d5ba506f47) la generación de la base de datos (php bin/console pim:installer:db --env=prod) genera errores en ElasticSearch y no continúa con la generación de la base de datos.

foo@akeneo-dev :~/pim-community-dev$ php bin/console pim:instalador :db --env=prod
Preparar el esquema de la base de datos
Base de datos eliminada para la conexión denominada akeneo_pim
Base de datos creada akeneo_pim para la conexión denominada predeterminada
ATENCIÓN: Esta operación no debe ejecutarse en un entorno de producción.

Creando esquema de base de datos...
¡Esquema de base de datos creado con éxito!
No hay nada que actualizar: su base de datos ya está sincronizada con los metadatos de la entidad actual.
Restablecer índices de búsqueda elástica

[ElasticsearchCommon\Exceptions\NoNodesAvailableException]
No se encontraron nodos activos en su clúster

Instalado usando una combinación de información actual en la documentación maestra en el servidor Ubuntu 17.04

tech-improvement

Comentario más útil

En mi caso, el valor de index_host en app/config/parameters.yml fue:

localhost :9200

Así que eliminé el espacio en blanco y ahora funciona bien:

localhost:9200

Todos 15 comentarios

Hola @TheOnlyJoey ,

Este error no proviene del PIM, sino de Elasticsearch, parece que no encuentra ningún nodo activo.

Le sugiero que eche un vistazo a las preguntas existentes ya planteadas en el foro de Elasticsearch con respecto a este error, es decir:

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

Documentación de Elasticsearch:
https://www.elastic.co/start
https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started.html

¡Espero que esta información te ayude!

Saludos,
karen

Hola Karen,

Así que ya probé varias versiones de ElasticSearch y verifiqué que esto no era un problema de mi versión local.
También tuve contacto con los desarrolladores de ElasticSearch y mencionaron que probablemente sea la implementación en Akeneo la que cause esto.

El compositor se compila bien, por lo que ElasticSearch se ha compilado y configurado correctamente.

Probé en 2 sistemas diferentes (Ubuntu 16.04 y Debian Sid) y ambos tenían exactamente el mismo problema, independientemente de la configuración.

Este error evita que Akeneo genere una base de datos correcta, creo que este tipo de errores son bastante letales un par de días antes del lanzamiento.

@TheOnlyJoey ,

¿Podría compartir con nosotros la información de su archivo de sistema?

Gracias,
karen

Los sistemas probados son (como se mencionó) Ubuntu 16.04 con dependencias instaladas desde la documentación de Akeneo (del maestro) y Debian Sid con los paquetes más recientes.

También probado en Ubuntu 17.04 inicialmente. Todos los sistemas usan PHP7.1 como se recomienda.

@TheOnlyJoey ,

Creemos que esto podría ser un problema de conexión relacionado, ya que este error suele aparecer cuando se usa el valor predeterminado para el parámetro 'index_hosts' ('localhost: 9200').

El valor de configuración de trabajo es ':@:', por defecto ' elastic:changeme@localhost :9200' (editado)

Puede encontrar el parámetro 'index_hosts' en app/config/parameters.yml

Saludos,
karen

Cambiar el valor a ':@:' da como resultado:

[ElasticsearchCommon\Exceptions\InvalidArgumentException]
No se pudo analizar la URI

Además, como puede ver en https://github.com/akeneo/pim-community-dev/blob/master/app/config/parameters.yml.dist#L13 , el valor predeterminado para index_hosts es ' localhost:9200 '

Hola @TheOnlyJoey

Lo siento, hubo un problema en la visualización del valor en el comentario anterior.

El valor de configuración de trabajo es:
'<user>:<password>@<server>:<port>'

de hecho, es por defecto ' elastic:changeme@localhost :9200'

Saludos,
karen

Parece que no hay una advertencia o verificación si ElasticSearch se está ejecutando, Composer parece haber eliminado originalmente el servicio ElasticSearch.
El reinicio forzado del proceso solucionó el problema, usando localhost normal: 9200.

Puede ser una buena idea asegurarse de que ElasticSearch se esté ejecutando en la consola pim:installer :db script, ya que sin esto, la instalación no se completará.

estoy tratando de hacer que akeneo se ejecute con un clúster de búsqueda elástico aws ... obteniendo
En StaticNoPingConnectionPool.php línea 51:

No se encontraron nodos activos en su clúster

En app/config/parameters.yml cambié index_host al punto final de aws vpc. ¿Alguien tiene alguna idea?

En mi caso, el valor de index_host en app/config/parameters.yml fue:

localhost :9200

Así que eliminé el espacio en blanco y ahora funciona bien:

localhost:9200

la solución fue el puerto: 80... aws usa el puerto 80...

Hola,

Perdí mucho tiempo para conseguir esto.

host local: 9200 no funcionó
host local: 9200 no funcionó

No sé por qué akeneo no envía contenedores de trabajo listos para usar.

echa un vistazo a la documentación
https://docs.akeneo.com/3.0/install_pim/docker/installation_docker.html

en su settings.yml.dist tiene que configurar
elástico: cámbiame @ búsqueda elástica : 9200

Después de este:
limpiar el contenedor
docker-compose down -v

iniciar el contenedor
docker-compose up -d

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

y elasticsearch debería funcionar.

Entonces, la cadena de conexión para el complemento de Google Chrome de ElasticSearch Head es:
(aquí también puede verificar si la máquina elasticsearch se está ejecutando)
http://servidorlocal :9210/

elastic : nombre de usuario predeterminado para elasticsearch, sin configurar en ninguna parte
changeme : contraseña predeterminada para elasticsearch, sin configurar en ninguna parte
elasticsearch : en docker-compose.yml debe encontrar "elasticsearch", ese es el nombre de host que se usa aquí.

9200: el puerto utilizado está configurado en
docker-compose.override.yml
- '9210:9200'
Puerto de la máquina acoplable 9200
Puerto externo 9210 para conectarse desde su máquina host

estoy tratando de hacer que akeneo se ejecute con un clúster de búsqueda elástico aws ... obteniendo
En StaticNoPingConnectionPool.php línea 51:

No se encontraron nodos activos en su clúster

En app/config/parameters.yml cambié index_host al punto final de aws vpc. ¿Alguien tiene alguna idea?

ya solucionaste esto?

@Rud5G sí... aws usa el puerto 80...

Por favor, ¿alguien puede ayudarme? Me enfrento al mismo desafío y he estado en él durante horas sin ningún progreso.

`En StaticNoPingConnectionPool.php línea 53:

No se encontraron nodos activos en su clúster

El comando terminó con un código de error: 1.
Error durante la instalación de PIM. El comando terminó con un código de error: 1.
`
He seguido todas las soluciones sugeridas enumeradas anteriormente, pero no hay cambios. Estoy usando Akeneo versión 3.2.

¿Fue útil esta página
0 / 5 - 0 calificaciones