cassandra - los agentes del centro de datos de Datastax no están instalando
opscenter cassandra-2.1 (2)
Hay varias formas de instalar el agente DataStax desde OpsCenter. En función de su IP Addr de 127.0.1.1, debe ejecutar una versión de Debian de Linux. Sé que dice "opcional" pero nunca he podido ejecutar sin una clave privada ssh. En ese caso, debe instalar OpenSSH-server usando el siguiente comando
xyz@ubuntu$ sudo apt-get install openssh-server
Luego siga estas instrucciones para configurar una clave SSH que luego usará al proporcionar sus credenciales al cuadro de diálogo "arreglar agente". El nombre de usuario / contraseña en Datastax para el lado DSE es datastax / datastax a menos que lo haya cambiado. Eso es lo que debe poner para nombre de usuario / contraseña y luego también copiar / pegar su nueva clave SSH dentro del cuadro de clave privada. La clave ssh se encontrará en
/etc/ssh/ssh_host_rsa_key.pub
Una vez que tenga todas las credenciales, siga adelante y ejecute la herramienta Instalar agentes. Si aún no se completa, debe consultar la carpeta de agente de datastax donde instaló DSE y verificar que haya un archivo jar para el agente. Debería ser algo así como
datastax-agent-5.2.4-standalone.jar
También debería ver la estructura de carpetas para los directorios de Agent, bin, conf ... etc., todos deberían estar allí. Si todo está en su lugar y su archivo cassandra.yaml es correcto, debería poder ejecutar el agente.
También puede hacerlo manualmente moviendo los directorios correctos y los archivos jar en su lugar y luego reiniciando el agente (s).
EDITAR:
Después de mirar su último archivo agent.log, diría esto. El error de tubería rota en Java se refiere a una conexión que ya no está activa o no está disponible. Donde está fallando en el agent.log es donde está intentando comunicarse con el opscenter. Una de sus conexiones no está funcionando o está mal configurada. También tiene otro registro para cassandra que generalmente está en / var / log / cassandra dependiendo de cómo instaló cassandra. Analice todo eso y asegúrese de que no tenga errores durante el inicio, las advertencias son correctas, pero los errores generalmente apuntan al problema.
A partir de este momento, tiene los siguientes archivos de registro. Tenga en cuenta que las ubicaciones de los archivos pueden ser diferentes a las suyas, dependiendo de cómo haya instalado todo.
/var/log/cassandra
/var/log/datastax-agent
/var/log/OpsCenter
y tiene los siguientes comandos para ayudar a determinar qué se está ejecutando realmente y en qué puerto está enlazado. Eche un vistazo a continuación, ¿qué le dicen estos comandos?
xyz@ubuntu$ sudo netstat -p | grep 127.0.1.1
Debería ver al menos los siguientes puertos vinculados a su 127.0.1.1 addr: 9042, 8888, 61620 y varios otros.
También mira la salida de estos dos comandos. Si no obtiene nada, intente ejecutarlos como sudo. La salida dependerá de cómo comenzaste los frascos
xyz@ubuntu$ ps -ef | grep datastax-agent
xyz@ubuntu$ ps -ef | grep cassandra
Debería ver todos los archivos jar cargados, así como las variables de entorno que se establecieron al iniciar cassandra y / o datastax-agent.
Puede editar su publicación y explicar cómo comenzó Casandra. es decir, como un servicio o desde la línea de comando?
Además, desde OpsCenter deberías poder ver el test_cluster en 127.0.1.1:8888. Si se le indica que corrija los agentes simplemente salga de esos cuadros de diálogo hasta que se encuentre en la pantalla principal que muestra el centro de datos. Incluso si no se está conectando con el agente, el centro de operaciones aún debería mostrar la instancia de Cassandra. ¿Ves tu test_Cluster?
Por último, ¿qué obtienes cuando escribes esto?
xyz@ubuntu$ nodetool status
EDICION 2:
Según su última edición, parece que todo, excepto el agente, está funcionando. Entonces, dice nodetool, que es bueno. Además, como puede ver Keyspaces en OpsCenter, está definitivamente conectado a una instancia de cassandra en ejecución.
Así que mirando más allá parece que su datastax-agent aún no se está conectando. Al mirar su archivo address.yaml puedo ver un par de posibles problemas. Este es un clúster de cassandra independiente y simple con una sola dirección IP de 127.0.1.1. De modo que la dirección 127.0.1.1 se usará en todas las configuraciones en las que esté involucrado un direr IP o un host. Haría los siguientes cambios a su archivo address.yaml.
stomp_interface: 127.0.1.1
cassandra-conf: /home/kaushaya/Dropbox/Work/ITNow/olderVersions/cassandra2.11/apache-cassandra-2.1.12/conf/cassandra.yaml
stomp_port: 61620
Deje los detalles JMX fuera ya que no son necesarios y serán enviados por el opscenterd una vez conectado. El agent_rpc_interface tampoco es necesario en esta instalación.
También hay script cassandra-env.sh
que se encuentra en el directorio cassandra / conf. este script se ejecuta cuando comienza cassandra. busque la siguiente línea cerca de la parte inferior del script y descomente y agregue su IP de host 127.0.1.1 en lugar de <public name>
# jmx: metrics and administration interface
#
# add this if you''re having trouble connecting:
JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=127.0.1.1"
Por último, está la utilidad de cassandra documentada AQUÍ . Puede pasar varios parámetros cli al shell de cassandra al inicializar. Este en particular a continuación es útil cuando desea iniciar / reiniciar un grupo de cassandra después de cambiar la IP o el nombre de host. Tendrá que reiniciar Cassandra una vez que haya realizado estos cambios. De hecho, deberías reiniciar todo en este orden ... Cassandra, datastax-agent y luego opscenter.
xyz@ubuntu$ bin/cassandra -Dcassandra.load_ring_state=false
Una vez que complete los cambios y pruebe a iniciar el agente y aún falle, necesitará más detalles de depuración. Netstat devolvió falso por lo que enviamos a la utilidad grep. intente lo siguiente ya que los puertos probablemente estén vinculados a su nombre de host ya que usa 127.0.1.1. Ejecútelo para los siguientes puertos: 9042,: 7199 y: 61620. Está buscando su nombre de host vinculado a todos estos puertos mientras se está ejecutando cassandra.
xyz@ubuntu$ sudo netstat -p | grep :9042
Edite también su pregunta y agregue las versiones de OpsCenter y Datastax-Agent ejecutadas. Eso importa.
Estoy ejecutando mi propia versión de cassandra en 127.0.1.1. Cambié la dirección rpc_address
y también la address
a 127.0.1.1.
Cuando estoy iniciando Opscenter, me piden que instale agents
y lo hago con la opción de reparación recomendada. Pero cuando intento instalarlo, me pide algunas credenciales de Node ssh. No sé lo que esto significa.
¿Cuáles son las credenciales correctas para ingresar aquí?
Intenté agregar un nuevo usuario en Linux con permisos de raíz y también intenté con ese nombre de usuario, pero no funciona. Intenté ejecutar el install_agent.sh
también manualmente, pero no funciona.
¿Me estoy perdiendo de algo?
EDITAR:
address.yaml
stomp_interface: 127.0.1.1
agent_rpc_interface: "127.0.1.1"
cassandra-conf: /home/kaushaya/Dropbox/Work/ITNow/olderVersions/cassandra2.11/apache-cassandra-2.1.12/conf/cassandra.yaml
stomp_port: 61620
jmx_host: 127.0.1.1
jmx_port: 7199
cassandra.yaml
EDIT2:
para nombre de usuario y contraseña estoy usando mis credenciales de datastax. Para la clave privada, estoy usando la clave en /etc/ssh/ssh_host_rsa_key.pub
como lo menciona @apesa. Pero aún así no puede instalar los agentes.
¿Mi archivo address.yaml es correcto?
EDIT 3:
Como puede ver en la siguiente imagen, cuando el pensamiento Opscenter no está conectado a los agentes, aún puedo ver los espacios de claves y las tablas en Casandra.
Para sudo netstat -p | grep 127.0.1.1
sudo netstat -p | grep 127.0.1.1
No obtengo salida.
xyz@ubuntu$ ps -ef | grep datastax-agent
xyz@ubuntu$ ps -ef | grep cassandra
el resultado es esto y esto respectivamente. En resumen, sí puedo ver tarros y supongo que también las variables de entorno.
¿Cómo comencé Cassandra, preguntas?
sudo ./bin/cassandra
de la carpeta de cassandra. Después de eso estoy usando la transmisión de chispa para transmitir datos de kafka a cassandra. Pero no debería importar aquí.
Even if it is not connecting to the agent the opscenter should still show the cassandra instance. Do you see your test_Cluster?
¡Sí! ¡Hago!
Finalmente, el nodetool status
me da esto:
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 127.0.1.1 58.94 MB 256 ? 367dd1c6-291d-4e57-a2b6-e04d74154a6f rack1
Note: Non-system keyspaces don''t have the same replication settings, effective ownership information is meaningless
Lo que creo:
No estoy seguro, pero tal vez mi address.yaml
no es correcta? He actualizado mi address.yaml
arriba, ¿quizás necesito cambiar algo? Cambiar la dirección.yaml me da salidas diferentes cuando ejecuto ./datastax-agent
. Gracias.
EDIT4:
Intenté todo lo que @apesa sugirió y aquí están los resultados detallados de los scripts. Todavía tengo el mismo problema.
versión:
Opscenter: 5.2.4
datastax-agent: 5.2.4
Cassandra: 2.1.12
Salida de sudo netstat -p | grep: 9042
tcp 0 0 localhost:38155 ganguly:9042 ESTABLISHED 15907/python2.7
tcp 0 0 localhost:38154 ganguly:9042 ESTABLISHED 15907/python2.7
tcp 0 0 localhost:38153 ganguly:9042 ESTABLISHED 15907/python2.7
tcp6 0 0 localhost:38176 ganguly:9042 ESTABLISHED 15951/java
tcp6 0 0 localhost:38179 ganguly:9042 ESTABLISHED 15951/java
tcp6 0 0 ganguly:9042 localhost:38154 ESTABLISHED 15720/java
tcp6 0 0 ganguly:9042 localhost:38153 ESTABLISHED 15720/java
tcp6 0 0 ganguly:9042 localhost:38179 ESTABLISHED 15720/java
tcp6 0 0 ganguly:9042 localhost:38176 ESTABLISHED 15720/java
tcp6 0 0 ganguly:9042 localhost:38155 ESTABLISHED 15720/java
Salida de sudo netstat -p | grep: 7199
blanco
Salida de sudo netstat -p | grep: 61620
blanco
Este es el inicio de sesión de la consola ejecutando sudo ./datastax-agent
.
En resumen, esta es la línea de error:
ERROR [clojure-agent-send-off-pool-0] 2016-02-04 11:33:26,274 Can''t /
connect to Cassandra (All host(s) tried for query failed (tried:/
/127.0.0.1:9042 /
(com.datastax.driver.core.TransportException: /
[/127.0.0.1:9042] Cannot connect))), retrying soon.
Pero no sé por qué está intentando conectarse a cassandra en 127.0.0.1 ya que cassandra se está ejecutando en 127.0.1.1. ¿Qué hice mal aquí?
Podría intentar editar el archivo address.yaml del agente de datos de datos. Debe estar ubicado en / var / lib / datastax-agent / conf /. En este archivo, deberá agregar la siguiente línea: stomp_interface: también asegúrese de que stomp_port esté configurado en el mismo archivo.
Referencia: Guía del usuario de OpsCenter 5.0
Sabiha