我希望为我的 Cassandra 集群添加加密,以提高数据安全性。以下是我的设置细节以及我遇到的问题:
集群详情:8 个节点,每个节点都有 TB 级的数据。
尝试:尝试添加加密的 EBS 卷并更改数据路径,但这导致整个集群的性能显著滞后。添加了配置了加密的新节点(用于 SSTable 和节点间加密的 JKS),但这造成了严重中断并使整个集群不稳定。
面临的挑战:迁移到加密 EBS 卷时延迟严重。引入带加密的新节点时集群不稳定。
问题:在 Cassandra 集群中启用加密(静态数据)的推荐方法是什么,以最短的停机时间并且不会严重影响性能?
任何见解或最佳实践都将不胜感激!
如果我理解正确的话,集群中的每个节点都有数 TB 的数据。如果是这样,这可能是集群出现服务降级和/或中断的原因。
加密会增加节点运行的开销。开销的大小取决于很多因素,包括使用的密码、硬件配置、集群容量、访问模式等。在某些集群中,开销可能是 3-5% 的额外 CPU,但对于其他集群,开销可能会高得多。
如果您的集群已接近最大容量,则启用加密可能会使其超出极限。
我建议通过添加更多节点来暂时增加集群的容量。例如,如果您将数据中心的节点数量增加一倍,那么您实际上会将每个节点的数据密度减半,并将其负载也减少一半。理想情况下,每个节点越接近 1TB 或更少,管理它们就越容易,尤其是在执行迁移到加密卷等操作任务时。
节点密度较低时,迁移活动的影响应该会显著减小,并且有望对最终用户更加透明。干杯!
这是一个问题,是否所有数据都需要加密?
我会首先检查是否可以在客户端进行加密。这对我来说是可行的。