datastax opscenter代理未安装

时间:2016-01-29 13:06:25

标签: cassandra datastax opscenter cassandra-2.1

我在127.0.1.1上运行自己的cassandra版本。我将style="word-wrap:break-word";rpc_address更改为127.0.1.1。

当我开始 Opscenter 时,系统会提示我安装address,我是按照推荐的agents选项进行安装的。但是当我尝试安装它时,我会询问一些Node ssh凭据。我不知道这意味着什么。

Entering random credentials

Install failed

在此处输入的正确凭据是什么?

我尝试在Linux上添加具有root权限的新用户,并尝试使用该用户名,但它不起作用。我手动尝试运行Fix now但它不起作用。

我错过了什么吗?

修改

address.yaml

install_agent.sh

cassandra.yaml

http://textuploader.com/57ivn

EDIT2:

用于用户名和密码我正在使用我的数据存储凭据。 对于私钥,我使用@apesa提到的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 中的密钥。但它仍然无法安装代理。

我的address.yaml文件是否正确?

编辑3:

您可以在下图中看到,当Opscenter未连接到代理时,我仍然可以在cassandra中看到键空间和表格。

enter image description here

对于/etc/ssh/ssh_host_rsa_key.pub我没有输出。

sudo netstat -p | grep 127.0.1.1

输出分别是这个和这个。简而言之,是的,我可以看到罐子,我也猜测环境变量。

我怎么开始cassandra,你问?

来自cassandra文件夹的

xyz@ubuntu$ ps -ef | grep datastax-agent xyz@ubuntu$ ps -ef | grep cassandra 。之后,我使用spark stream将数据从kafka传输到cassandra。但这不应该是重要的。

sudo ./bin/cassandra是的!我做到了!

最后,Even if it is not connecting to the agent the opscenter should still show the cassandra instance. Do you see your test_Cluster?给了我这个:

nodetool status

我相信:

我不确定,但也许我的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 不正确?我已经更新了上面的address.yaml,也许我需要更改一些内容?当我运行address.yaml时,更改address.yaml会给出不同的输出。感谢。

EDIT4:

尝试了@apesa建议的所有内容,这里是脚本的详细输出。我仍然有同样的问题。

版本:

./datastax-agent

输出 sudo netstat -p | grep:9042

Opscenter: 5.2.4
datastax-agent: 5.2.4
Cassandra: 2.1.12

输出 sudo netstat -p | grep:7199

空白

输出 sudo netstat -p | grep:61620

空白

This is the console log正在运行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

简而言之,这是错误行:

sudo ./datastax-agent

但我不知道为什么它会尝试连接到127.0.0.1上的cassandra,因为cassandra在127.0.1.1上运行。我在这里做错了什么?

2 个答案:

答案 0 :(得分:1)

有几种方法可以从OpsCenter安装DataStax代理。根据您的IP地址127.0.1.1,您必须运行Debian版本的Linux。我知道它说"可选"但是我没有能够在没有ssh私钥的情况下运行。在这种情况下,您应该使用以下命令

安装OpenSSH服务器
xyz@ubuntu$ sudo apt-get install openssh-server

然后按照这些instructions设置一个SSH密钥,然后在向"修复代理提供凭据时使用该密钥。对话框。除非您更改了DSE端,否则DSE端的Datastax中的用户名/密码是datastax / datastax。这就是您应该输入的用户名/密码,然后在私钥框中复制/粘贴新的SSH密钥。可以在

中找到ssh密钥
/etc/ssh/ssh_host_rsa_key.pub

获得所有凭据后,请继续运行“安装代理”工具。如果仍然无法完成,则应检查安装DSE的datastax-agent文件夹,并验证代理程序是否有jar文件。它应该类似于

datastax-agent-5.2.4-standalone.jar

您还应该看到代理的文件夹结构,bin,conf ...等目录都应该存在。如果一切就绪并且你的cassandra.yaml文件是正确的,那么你应该可以让代理运行。

您也可以通过移动正确的目录和jar文件然后重新启动代理来手动执行此操作。

修改

在查看最新的agent.log文件后,我会这样说。 Java中的管道错误是指不再启用或不可用的连接。在agent.log中失败的地方是尝试与opscenter通信的地方。您的一个连接未启动或配置错误。您还有另一个cassandra日志,通常在/ var / log / cassandra中,具体取决于您如何安装cassandra。梳理它并确保它在启动期间没有错误,警告很好,但错误通常指向问题。

从这一点开始,您将拥有以下日志文​​件。请注意,文件位置可能与您的不同,具体取决于您安装所有内容的方式。

/var/log/cassandra
/var/log/datastax-agent
/var/log/OpsCenter

并且您有以下命令来帮助理清实际运行的内容以及绑定的端口。看看下面这些命令告诉你什么?

xyz@ubuntu$ sudo netstat -p | grep 127.0.1.1

您应该至少看到绑定到127.0.1.1地址的以下端口:9042,8888,61620以及其他几个。

同样查看这两个命令的输出。如果你没有得到任何回报,请尝试将它们作为sudo运行。输出将取决于你如何开始罐子

xyz@ubuntu$ ps -ef | grep datastax-agent
xyz@ubuntu$ ps -ef | grep cassandra

您应该看到所有已加载的jar文件以及启动cassandra和/或datastax-agent时设置的环境变量。

您可以编辑您的帖子并解释您是如何开始使用cassandra的。即作为服务或从命令行?

此外,从OpsCenter,您应该能够在127.0.1.1:8888看到test_cluster。如果提示您修复代理,则只需退出这些对话框,直到您显示数据中心的主屏幕。即使它没有连接到代理,opscenter仍应显示cassandra实例。你看到你的test_Cluster了吗?

最后,当你输入

时,你会得到什么?
xyz@ubuntu$ nodetool status

编辑2:

根据您的上次编辑,它看​​起来好像除了代理之外的所有内容都已启动并正在运行所以说nodetool,这很好。此外,因为您可以在OpsCenter中看到Keyspace,所以您肯定会连接到正在运行的cassandra实例。

因此,进一步看来,您的datastax-agent仍未连接。在查看你的address.yaml文件时,我可以看到几个可能的问题。这是一个简单的独立cassandra集群,其单个IP地址为127.0.1.1。因此,127.0.1.1地址将用于涉及IP地址或主机的所有配置中。我会对你的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

保留JMX详细信息,因为它们不需要,并且一旦连接就会由opscenterd发送。此安装中也不需要agent_rpc_interface。

在cassandra / conf目录中还有cassandra-env.sh脚本。当cassandra启动时执行此脚本。查找脚本底部附近的以下行并取消注释,并添加主机IP 127.0.1.1代替<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"

最后,记录了cassandra实用程序HERE初始化时,可以将几个cli参数传递给cassandra shell。当您想要在更改IP或主机名后启动/重新启动cassandra集群时,下面的这个特别有用。完成这些更改后,您需要重新启动cassandra。实际上你按照这个顺序重新启动所有内容.Cassandra,datastax-agent然后是opscenter。

xyz@ubuntu$ bin/cassandra -Dcassandra.load_ring_state=false

完成更改并尝试启动代理后,它仍然会失败,您将需要更多调试详细信息。由于我们通过管道连接到grep实用程序,Netstat返回false。尝试以下操作,因为您使用127.0.1.1可能会将端口绑定到您的主机名。运行以下端口:9042,:7199和:61620。

,当您正在运行Cassandra时,您正在查找绑定到所有这些端口的主机名。

xyz@ubuntu$ sudo netstat -p | grep :9042

请同时编辑您的问题并添加正在运行的OpsCenter和Datastax-Agent版本。这很重要。

答案 1 :(得分:0)

您可以尝试编辑datastax-agent的address.yaml文件。它应位于/ var / lib / datastax-agent / conf /中。 在此文件中,您需要添加以下行: stomp_interface: 还要确保stomp_port设置在同一个文件中。

参考:OpsCenter 5.0 User Guide

Sabiha