cassandra版本:apache-cassandra-2.1.8
我最近配置了2个节点群集,Authenticator
设置为PasswordAuthenticator
。当其中一个节点关闭时,我无法登录到Cqlsh并且出现以下错误
Connection error: ('Unable to connect to any servers',
{'192.168.0.45': AuthenticationFailed(u'Failed to authenticate to 192.168.0.45: code=0100 [Bad credentials]
message="org.apache.cassandra.exceptions.UnavailableException: Cannot achieve consistency level QUORUM"',)})
system_auth RF设置为2,因为我有2个节点。
C:\apache-cassandra-2.1.8-bin\apache-cassandra-2.1.8\bin>nodetool status
Starting NodeTool
Datacenter: DC1
================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 192.168.0.45 327.87 KB 256 ? 66a97a0a-d69c-4daf-b0f5-55cb8442d728 RAC1
UN 192.168.0.46 234.28 KB 256 ? 432031fc-eea3-4b02-8d79-f877bbd8afaf RAC1
KeySpace RF
cassandra@cqlsh> select * from system.schema_keyspaces;
keyspace_name | durable_writes | strategy_class | strategy_options
---------------+----------------+---------------------------------------------+----------------------------
system_auth | True | org.apache.cassandra.locator.SimpleStrategy | {"replication_factor":"2"}
system | True | org.apache.cassandra.locator.LocalStrategy | {}
system_traces | True | org.apache.cassandra.locator.SimpleStrategy | {"replication_factor":"2"}
(3 rows)
我附加了Cassandra文件,cassandra.yaml和cassandra-topology.properties文件
答案 0 :(得分:5)
这可能与此有关:
"对于大多数system_auth查询,Cassandra使用LOCAL_ONE的一致性级别,并使用QUORUM作为默认的cassandrasuperuser;"
您是否尝试以用户身份连接" cassandra"?如果是这样,那可能就是它尝试使用一致性级别仲裁的原因。由于您只有两个节点,因此仲裁将是两个节点。
因此,请尝试根据说明here创建不同的用户。