zone设置问题

【 使用环境 】测试环境
【 OB or 其他组件 】OB
【 使用版本 】4.3.5
请问一下,我在搭建集群的时候,假设现在是3个OB节点,现在我有方案一和方案二。

方案一:设置1个zone3节点
方案二:设置3个zone,每个zone设置1个节点的区别是什么?

如果是现网环境,同一个机房的服务器需要搭建OceanBase集群,采取哪种方式更好?

1 个赞

@论坛小助手

在您的测试环境中,您有两个方案可以选择来搭建 OceanBase 集群:

  1. 方案一:设置1个zone3节点

    • 在这种情况下,所有的3个OB节点都在同一个Zone中。这种方式适用于简单的测试场景,因为所有节点都在同一个故障域内,这意味着如果整个Zone发生故障,整个集群都会受到影响。
  2. 方案二:设置3个zone,每个zone设置1个节点

    • 在这种情况下,每个OB节点分别位于不同的Zone中。这种方式提供了更好的高可用性和容灾能力,因为即使其中一个Zone发生故障,其他两个Zone仍然可以继续提供服务。

对于现网环境,特别是在同一个机房的服务器上搭建OceanBase集群,推荐采用方案二。尽管这些服务器在同一机房,但通过将每个节点分配到不同的Zone,可以实现更高级别的故障隔离和高可用性。即使某个节点或Zone发生故障,其他Zone仍然可以正常工作,从而确保集群的整体稳定性和可靠性。

详情请参考:

  1. 使用 OCP 进行运维
  2. 查看 Zone

方案二是三副本的方案,方案一是单副本

1 个赞

方案一:不具备高可用,一个节点宕机整个集群就不可用了 方案二:具备高可用,一个节点宕机了,依然满足多数派、集群依然可用

如果我现在是6台OB节点,为了维持3副本,生产环境下,按照如下应该没问题吧:

设置3个zone,每个zone上有2个节点。 @论坛小助手

根据提供的文档片段,您的设置是合理的。在生产环境中,OceanBase 集群的最小规模为3台服务器(节点),即集群中业务数据有三份,所以也叫三副本。对于您提到的情况,有6台OB节点,可以设置3个Zone,每个Zone上设置2个节点。这种部署方式可以保证每个副本都在不同的Zone中,从而提高系统的高可用性和容灾能力。请确保每个节点的内存配置满足生产环境的需求,建议每台机器的内存不低于16GB,推荐32GB以上。

详情请参考:

  1. 部署生产环境
  2. 部署 OceanBase 集群
  3. 使用 OCP 进行运维

目前我的服务器为openeuler22.03 sp1,是否满足现网环境企业版部署要求? @论坛小助手

您好,您提的这个技术问题可能牵涉到 OceanBase 企业版范围内的功能细节;针对此类问题,建议你通过以下方式寻求帮助:

  1. 如你所在的企业客户已签署 OceanBase 企业版销售合同,请你联系客户经理;

  2. 如你所在的企业客户尚未签署 OceanBase 企业版销售合同,你可通过OceanBase官网商务咨询页面留下你的联系方式,OceanBase企业版的业务顾问会在一个工作日内与你联系。

另外,我们欢迎你使用社区版,并在论坛/社群中分享你对社区版本的想法、经验和问题,与其他社区成员共同交流。

目前我的服务器为openeuler22.03 sp1,是否满足现网环境社区版部署要求? @论坛小助手

您的服务器环境为openEuler 22.03 SP1,根据文档片段1225,满足OceanBase数据库V4.2.2或之后版本的部署要求,前提条件中提到支持openEuler 22.03版本。因此,您可以使用此操作系统版本部署OceanBase数据库社区版。

检索到的文档如下:

  1. 使用 systemd 部署 OceanBase 数据库

如果我现在是8台OB节点,生产环境下,设置4个zone,每个zone上有2个节点。相当于是4个副本吗? @论坛小助手

根据您描述的情况,您的配置确实是设置了 4 个 Zone,每个 Zone 有 2 个节点,总共 8 个节点。这意味着每个数据分区在每个 Zone 中都会有 1 个副本,因此,您的集群中实际上有 4 个副本的数据冗余。这种配置能提供较高的数据安全性、可用性和容灾能力。

更多信息请查看:

  1. 集群架构
  2. 将资源池分配给租户
  3. 副本介绍

假设当前我的服务器配置为内存256G,CPU数量为100个,8个OBserver节点,设置4个zone,每个zone上面2个节点,那么对于集群来说,当前集群可用的资源是多大?512G内存,200个CPU吗? @论坛小助手

对于当前配置(内存256G,CPU数量为100个,8个OBserver节点,设置4个zone,每个zone上面2个节点),集群可用的资源并非简单地将服务器的总内存和CPU数量乘以节点数。集群可用的内存取决于 memory_limitmemory_limit_percentage 的设置。如果每个节点设置 memory_limit 为 32G,则集群可用内存为 256G;如果使用 memory_limit_percentage 设置为 80%,则每个节点可用内存为 256G * 80% = 204.8G,8 个节点合计 1638.4G。CPU 的可用资源则取决于如何在各个节点之间分配,平均每个节点约有 12.5 个 CPU 核心。

检索到的文档如下:

  1. 租户间的资源隔离
  2. 内存相关参数
  3. 部署生产环境
  4. 进行 Sysbench 测试