【发布时间】:2014-12-16 22:29:47
【问题描述】:
我有一个 Cassandra 集群(Datastax 开源),目前没有配置身份验证(即,它使用 AllowAllAuthenticator),我想使用 PasswordAuthenticator。 official document 说我应该遵循以下步骤:
在 cassandra.yaml 中启用 PasswordAuthenticator,
重启 Cassandra 节点,这将创建 system_auth 密钥空间,
更改 system_auth 复制因子,
创建新用户和密码
但是,这对我来说是个大问题,因为集群是在生产中使用的,所以我们不能有任何停机时间。在第 2 步和第 4 步之间还没有配置用户,所以即使客户端提供了用户名和密码,请求仍然会被拒绝,这并不理想。
我查看了Datastax Enterprise doc,它有一个 TransitionalAuthenticator 类,它可以创建 system_auth 密钥空间但不会拒绝请求。请问这个类能不能移植到开源版本?或者如果有其他方法可以解决这个问题?谢谢
更新 这是我正在使用的 Cassandra 版本:
cqlsh 4.1.1 | Cassandra 2.0.9 | CQL spec 3.1.1 | Thrift protocol 19.39.0
【问题讨论】:
标签: cassandra cassandra-2.0 datastax-enterprise datastax cassandra-cli