I"有一个现有的cassandra集群在AWS中运行。它在同一个数据中心但在多个区域共有6个节点。我们在生产中使用的是cassandra 2.2.8版本。生产环境中已经存在两个现有的密钥空间。我想向生产集群添加一个新的密钥空间
我是卡桑德拉的新手,所以正在寻找以下答案:
- 我可以在不关闭集群的情况下在现有生产集群中添加新的密钥空间吗
- 您建议将新密钥空间添加到现有集群的任何最佳实践
- 添加新Keyspace的可能步骤
我真的很感谢你的帮助!
是的,您可以在线添加密钥空间。
添加密钥空间时,必须选择复制因子。由于您有AWS Multi Region,您可能正在使用Ec2MultiRegionSnitch作为endpoint_snitch,对吧?
如果您这样做了,可能您配置了dc_suffix=_XYZ,现在您的dc是这样的:"us-east_XYZ"(请参见nodetool status(。然后,你可以使用这样的东西:
CREATE KEYSPACE my_keysace
WITH REPLICATION = {
'class' : 'NetworkTopologyStrategy','us-east_XYZ' : 2, 'us-west_XYZ':2 }
AND DURABLE_WRITES = true
参见文档:CREATE KEYSPACE