2016-09-16 79 views
0

起初,我的遠程連接工作得非常好,我可以通過C#訪問它,並在其上執行查詢。將Cassandra遠程連接安裝爲服務後失敗

但我希望Cassandra作爲服務運行,所以我可以註銷並遵循以下鏈接:Cassandra as a Windows Service並安裝了datastax版本。

在本地機器上,此功能完美無缺。它作爲服務器運行,我也可以執行查詢。

但是當我在遠程機器上運行Cassandra作爲服務時。我收到以下錯誤信息:

型「Cassandra.NoHostAvailableException」未處理的異常發生在Cassandra.dll

附加信息:主機沒有試圖查詢可用(嘗試:xxx.xxx .xxx.xxx:9042)

datastax版本安裝另一個版本的Cassandra並排舊卡桑德拉。我嘗試停止服務器並手動連接到舊的cassandra環境,但這也是不可能的,我的猜測是,這是因爲datastax版本安裝的java驅動程序,但我不確定這一點。

有沒有關於如何設置與cassandra作爲服務運行遠程連接的教程?或者在安裝過程中我可能錯過了一個明顯的問題?

回答

2

每當你看到這樣的錯誤,有許多東西需要檢查:

  1. 防火牆:對於本地連接,防火牆通常不是問題,但是當你在暴露你的服務網絡防火牆可能不允許從外部

  2. 連接監聽地址:在你的「的conf」文件夾中listen_address: localhostcassandra.yaml需要改變,以listen_address:IP_ADDRESS如此該服務被暴露在網絡上而不是環回本地

檢查cassandra.yaml爲native_port和listen_native_port選項,看他們是否被允許(他們似乎是很好,因爲你可以在本地連接)