Cassandra在远程计算机上作为服务运行,但在同一网络中运行。我还创建了一个与Cassandra环境进行通信的.net程序。使用用户名和密码将C#发送给Cassandra服务
我能当它不是与下面的连接字符串服务运行与卡桑德拉沟通:
private void Connect()
{
cluster = Cluster.Builder().WithCredentials(username, password).AddContactPoint("192.168.30.104").Build();
session = cluster.Connect("core_meter");
}
但是,当我尝试连接到卡桑德拉时,其作为一种服务,我得到运行以下错误:
An unhandled exception of type 'Cassandra.NoHostAvailableException' occurred in Cassandra.dll
Additional information: None of the hosts tried for query are available (tried: 192.168.30.104:9042)
我不确定是否必须在我的.yaml文件中更改任何内容,然后才能使用用户名和密码访问服务。 这里是YAML文件:https://www.dropbox.com/s/wbrexlarkjrvlrm/cassandra.yaml?dl=0
编辑:当我没有一个用户名和密码与服务通信我可以与服务通信(我总是可以通过命令提示符下执行通信),但是当我使用一个用户名和密码它不再工作了。
在Windows上为“Listening Ports”检查“Resource Monitor”或在Linux上检查两个实例上的“netstat -tnlp”,并检查9042是否显示在localhost上或192.168.30.104 – Sreekar
如果我是正确的,你看到这个错误,你有在本地主机上运行的Cassandra:9042 – Sreekar
@Sreekar我打开服务器上的9042端口。另外,如果它没有用户名或密码,我可以与服务进行通信。对不起,没有注意到你是下面的同一个人;) – Proliges