【问题标题】:Connecting Remote Cassandra(1.2.1) Server连接远程 Cassandra(1.2.1) 服务器
【发布时间】:2013-02-07 00:30:30
【问题描述】:

我在远程 Windows 服务器上运行 Cassandra 1.2.1。我将yaml设置如下;

rpc_address: 0.0.0.0 start_native_transport: 真

我可以通过输入 IP 地址和端口号从我的笔记本电脑连接远程 Cassandra 服务器;

连接 XXX.XX.XX.XX/9160;

在 cassandra-cli.bat 上

但我无法从我的 .Net 应用程序连接远程 Cassandra 服务器。我用 casssandra-sharp;

XmlConfigurator.Configure();
using (ICluster cluster = ClusterManager.GetCluster("main"))
          Console.WriteLine("succeded");
ClusterManager.Shutdown();

这里是 App.config;

  <configSections>
    <section name="CassandraSharp" type="CassandraSharp.SectionHandler, CassandraSharp" />
  </configSections>

  <CassandraSharp>
    <Cluster name="main">
      <Endpoints>
        <Server>XXX.XX.XX.XX</Server>
      </Endpoints>
    </Cluster>
  </CassandraSharp>

应用程序抛出“找不到任何有效的端点”异常。当我在本地运行 Cassandra 并尝试连接时,此代码块完美运行。

在远程服务器上,防火墙允许使用 9160 和 7000 端口。对这个问题有任何想法吗?

【问题讨论】:

    标签: windows cassandra


    【解决方案1】:

    @rs_atl 是对的,这是一个连接问题。

    如果您使用的是客户端库,并且要执行CQL命令,则需要设置;

    start_native_transport: true
    

    你已经这样做了。只要下面两行,你就会看到;

    native_transport_port: 9042
    

    在 yaml 文件中。这意味着您需要在防火墙上允许端口号 9042

    如果您还使用 Azure 等云服务,请不要忘记添加 End Point。

    【讨论】:

      【解决方案2】:

      如果您的代码可以在本地运行,但不能在另一台机器上运行,那么唯一合乎逻辑的结论是肯定存在连接问题。

      【讨论】:

        猜你喜欢
        • 2012-07-24
        • 2018-10-12
        • 2019-07-15
        • 2013-05-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-01-25
        相关资源
        最近更新 更多