我是cassandra的新手,所以我遵循this guide關於如何讓Cassandra在EC2實例上設置。我已經完成了所有設置並準備好了,但出於某種原因,我無法通過ruby進行連接。這是我一直在努力:如何連接到ruby中的EC2 cassandra實例
require 'cassandra'
client = Cassandra.new('PERSON', 'ec2-xx-xx-xxx-xxx.compute-1.amazonaws.com:9160')
# =>
# <Cassandra:0x100cda3b0
# @auto_discover_nodes = true,
# @column_name_class = {},
# @column_name_maker = {},
# @is_super = {},
# @sub_column_name_class = {},
# @sub_column_name_maker = {},
# attr_accessor :keyspace = "PERSON",
# attr_reader :servers = [
# [0] "ec2-xx-xx-xxx-xxx.compute-1.amazonaws.com:9160"
# ],
# attr_reader :thrift_client_class = ThriftClient < AbstractThriftClient,
# attr_reader :thrift_client_options = {
# :transport_wrapper => Thrift::FramedTransport < Thrift::BaseTransport,
# :thrift_client_class => ThriftClient < AbstractThriftClient,
# :protocol => Thrift::BinaryProtocolAccelerated < Thrift::BinaryProtocol
# }
# >
然後,當我試圖使用的客戶端,我得到這個錯誤:
client.keyspaces
#=> ThriftClient::NoServersAvailable: No live servers in [ec2-xx-xx-xxx-xxx.compute-1.amazonaws.com:9160].
我能夠通過SSH連接,所以我不知道是什麼我在這裏做錯了。
更新:
我的安全組包括:
端口:
協議:TCP
源:SG-XXXXXXXX
我會改變這個以便我可以連接? – Josh
@Josh這就是爲什麼我要求「來源」。例如,如果您想將它打開到整個世界,您可以將源代碼更改爲:0.0.0.0/0。 – messick
我將源代碼更改爲0.0.0.0/0,它工作正常! – Josh