当前位置 博文首页 > weixin_49470452的博客:企业-Cassandra-deployments-part-2-clo

    weixin_49470452的博客:企业-Cassandra-deployments-part-2-clo

    作者:[db:作者] 时间:2021-06-18 09:15

    如果您必须使用EBS卷,请使用“EBS优化实例”,使用“已调配的IOPS”,并在不同的卷上拆分数据和提交日志。

    短暂存储

    临时存储是一个很好的选择,可用于下游的卡珊德拉环境,如测试/开发、试运行等。 由于临时卷通常是固态硬盘,因此不需要将数据和提交数据分离到单独的驱动器中。 为了优化性能,请选择带有多个临时存储驱动器的EC2实例,并将它们一起条带化到一个逻辑卷中。 向逻辑卷发送数据和提交。 请记住,当您停止EC2实例时,临时存储中的数据将被删除。

    将所有临时驱动器分条到单个卷中,以获得最高性能。

    卡桑德拉使用“飞贼”来确定集群的拓扑结构。 金色飞贼还用于确定群集中每个节点的“数据中心”和“机架”。 “复制策略”用于确定数据在集群中不同节点的位置。

    自动气象站

    1. ec2监控适用于单区域部署。
    2. Ec2MultiRegionSnitch非常适合分布在多个AWS区域的集群。 请注意,多dc、主动-主动配置使您的群集能够抵御区域故障,对于多DC群集,请使用“本地仲裁”来提高性能。

    谷歌云平台(GCP)

    1. 在GCP部署卡桑德拉时使用“谷歌云飞贼”
    2. 谷歌云金色飞贼将区域视为卡珊德拉数据中心,将可用性区域视为机架

    AWS和GCP都提供了一系列的操作功能,这使得在Apache Cassandra集群上保持高正常运行时间变得更加容易。 必须根据您的部署需求仔细选择这些功能。

    1. 负载平衡:网络级负载平衡服务由AWS(弹性负载平衡器)和GCP提供。 不建议在卡珊德拉前面放置负载平衡器。 最好使用能够处理这种情况的客户端连接器,考虑像Presto和Astyanax这样的开源工具
    2. 自动缩放:AWS和GCP都为计算实例提供了“自动缩放”功能。 然而,尽管这个功能看起来很吸引人,但是将所有C*节点放在一个自动缩放组中不会产生期望的结果。 相反,为集群中的每个节点创建一个单独的“1节数据库同步工具 点”自动扩展组。 这将确保每当一个节点出现故障时,它都会自动恢复正常。 这将确保当节点关闭时集群数据的放置不会受到干扰,而节点出现时不会导致过多的数据移动。

    企业组织必须备份数据。 数据丢失的影响如此之大,以至于没有一家企业愿意冒险单独依赖复制。 在公共云环境中保护数据可能看起来令人望而生畏,但与本地部署相比,有几个选项可以让这变得更容易。 一个简单的选项可能看起来像本机快照之一:

    我发现很少有客户使用EBS卷的“快照”来保护其群集中的数据免受逻辑和/或操作错误的影响。 这种解决方案可以工作,但有一些严重的限制。 除了维护脚本以拍摄快照的开销之外,存储成本也有很大的开销。 拍摄卷的快照不允许对数据进行增量备份。 这导致快照中存储的数据量呈指数级增长,从而导致备份解决方案的高成本。

    Amazon S3或Google Cloud Storage

    以下是使用S3时的一些建议:

    1. 在一个区域中创建的存储桶将为同一区域中的其他基础结构提供更好的性能特征。
      随后,重要的是确保用作辅助存储的S3存储桶与受保护的生产数据库和Datos IO群集位于同一区域
    2. S3区域:亚马逊S3存储桶是特定于区域的。
      这些策略规定了存储桶中对象的性能和响应时间特征。
      STANDARD_1A更适合寿命更长,访问频率较低的数据,而不适合用作辅助存储。
      此外,请勿在用于辅助存储的存储桶上打开任何生命周期策略。
      所有存储桶都应属于“ STANDARD”存储类。

    在本文中,我们研究了各种最佳实践,以提高公共云(Amazon或Google Cloud)中Cassandra部署的运营效率。