Problema

Problema

Problema

No puedo lograr que OpsCenter se conecte al agente datastax. Parece que datastax-agent se inicia e intenta conectarse a cassandra, falla porque no conoce las credenciales correctas, pero tampoco inicia el servidor Jetty para recibir las credenciales del centro de operaciones. Entonces lo vuelve a intentar y lo vuelve a intentar pero nunca se conecta. Cuando Cassandra permite todas las conexiones (sin autenticación), mi configuración funciona bien.

startup.logasí como agent.logambos muestran repetidos:

ERROR [principal] 2015-03-03 21:19:43,106 No puedo conectarme a Cassandra, reintento com.datastax.driver.core.exceptions.AuthenticationException: Error de autenticación en el host /127.0.0.1:9042: Host /127.0.0.1 :9042 requiere autenticación, pero no se encontró ningún autenticador en la configuración del clúster

Configuración

lo instaléagente-datastax(5.1) en Ubuntu 14.04.LTS del funcionario http://debian.datastax.com/community stable mainen una instancia EC2. Midirección.ymlSe ve como esto:

stomp_interface: PUBLIC_IP_OF_OPSCENTER_NODE
interfaz_local: PUBLIC_IP_OF_NODE
agent_rpc_interface: PRIVATE_IP_OF_NODE
agent_rpc_broadcast_address: PUBLIC_IP_OF_NODE

También intenté agregar cassandra_install_location: /opt/cassandrapero no parece ayudar. Cassandra (2.1) se instala mediante tarball y se ejecuta como usuario ubuntu, datastax-agent también se ejecuta como ubuntu.

Pregunta

¿Qué me falta para que el agente datastax y el centro de operaciones se comuniquen cuando cassandra requiere autenticación?

Ediciones:

El startup.logdespués del lanzamiento:

log4j:WARN No appenders could be found for logger (com.datastax.driver.core.SystemProperties).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
 INFO [main] 2015-03-10 11:35:50,361 Loading conf files: /var/lib/datastax-agent/conf/address.yaml
 INFO [main] 2015-03-10 11:35:50,412 Java vendor/version: Java HotSpot(TM) 64-Bit Server VM/1.7.0_76
 INFO [main] 2015-03-10 11:35:50,412 DataStax Agent version: 5.1.0
 INFO [main] 2015-03-10 11:35:50,490 Default config values: { ... }
 INFO [main] 2015-03-10 11:35:50,685 Waiting for the config from OpsCenter
 INFO [main] 2015-03-10 11:35:50,686 Using XX.XX.XXX.XXX as the cassandra broadcast address
 INFO [main] 2015-03-10 11:35:50,686 New JMX connection (127.0.0.1:7199)
 INFO [main] 2015-03-10 11:35:50,889 cassandra RPC address is  nil
ERROR [main] 2015-03-10 11:35:51,048 Can't connect to Cassandra, retrying
 com.datastax.driver.core.exceptions.AuthenticationException: Authentication error on host /127.0.0.1:9042: Host /127.0.0.1:9042 requires authentication, but no authenticator found in Cluster configuration

Respuesta1

Nicolás echa un vistazoesta documentación. Con Cassandra configurada para usar autenticación interna, el nombre de usuario y la contraseña de Cassandra se configuran en el archivo de configuración del clúster para opscenter en el servidor opscenterd. El archivo se llama .conf

[cassandra] username
The thrift username to Cassandra if thrift authentication is enabled.
[cassandra] password
The thrift password to Cassandra if thrift authentication is enabled.

Si está configurado correctamente y sus agentes aún no pueden conectarse, también puede verificar que las distintas direcciones IP configuradas en su dirección.yaml sean correctas para su instalación.

Específicamente, ¿puede el nodo Cassandra llegar al servidor centrado en operaciones a través de la interfaz pública? Verifique que la dirección IP de la interfaz_local coincida con la IP del nodo como se ve en la salida de estado de nodetool. Verifique que el servidor opscenterd pueda comunicarse con el agente en el nodo utilizando la dirección IP de transmisión rpc del agente.

Respuesta2

Puede intentar configurar manualmente las credenciales en su address.yamlarchivo de configuración.

cassandra_user: <username>
cassandra_pass: <password>

Ver elconfiguración del agente datastaxy elguía de actualización a 5.1, porque algunos parámetros han cambiado.

Respuesta3

La respuesta de Clement funcionó para mí. Usando 5.1 en Solaris 11. (Dado que en Solaris, no se proporciona ninguna instalación de paquete, por lo tanto, se requiere una instalación tar manual y un inicio manual de Cassandra, el agente y el centro de operaciones. Tenga en cuenta también que el script del centro de operaciones necesitaba ajustes, porque así lo decidió podría usar 'epoll' como reactor, lo cual no es compatible. Forzar el uso de 'select' funcionó).

información relacionada