集群地址除了自动生成的默认地址,还可以手动新增自定义地址。

前提条件

2019年4月29日起创建的集群,可以直接新增自定义集群地址。2019年4月29日之前创建的集群需要提交工单申请,之后即可新增自定义集群地址。

背景信息

您可以在POLARDB MySQL集群上使用自定义集群地址,并且可以设置它们的读写模式、一致性级别,以及选择关联的只读节点等等,方便应用于不同的业务场景,增强了业务的灵活性。
说明
  • 一个集群最多可以有4个集群地址(1个默认地址+3个自定义地址)。
  • 默认的集群地址无法释放。自定义的集群地址可以被释放。
  • 默认的集群地址也可以和自定义地址一样进行自定义设置,具体注意事项请参见修改自定义集群地址

新增自定义集群地址

  1. 登录 POLARDB控制台
  2. 在控制台左上角,选择集群所在地域。
  3. 单击目标集群ID。
  4. 访问信息中的集群地址【推荐】后,单击新增自定义地址新增自定义地址
  5. 设置以下参数:
    参数 说明
    读写模式 本地址的读写模式,分为只读可读可写(自动读写分离)
    说明 创建自定义地址后还可以修改读写模式。修改读写模式后,只对新建连接生效,已有的连接保持原来的模式。
    读负载节点 在左侧选择想要加入本地址用于处理读请求的节点。可选节点包括主节点和所有只读节点,本地址只会将读请求发往被选中的节点。
    说明
    • 读写模式为只读时,支持只挂载一个节点。但当此节点故障时,该地址可能会有最多1小时的不可用,请勿用于生产环境。因此,推荐至少选择2个节点,以提升可用性。
    • 读写模式为可读可写(自动读写分离)时,至少要选择2个节点。
    • 不论是否选中主节点,写请求都只会发往主节点。
    新节点自动加入 新增的节点是否要自动添加到该地址中。
    负载均衡策略 读写分离时,处理读请求的多个节点之间的调度策略,无需选择。
    一致性级别
    • 最终一致性:能够提供最好的性能。
    • 会话一致性:提供Session级的读一致性保证,会略微增加主节点的负载。

    具体请参见云数据库POLARDB之会话读一致性

    说明 如果读写模式为只读,只能选择最终一致性
    创建自定义地址
  6. 单击确认

修改自定义集群地址

  1. 登录 POLARDB控制台
  2. 在控制台左上角,选择集群所在地域。
  3. 单击目标集群ID。
  4. 访问信息中的自定义地址后,单击修改配置修改自定义地址
  5. 设置以下参数:
    参数 说明
    读写模式 本地址的读写模式,分为只读可读可写(自动读写分离)
    读负载节点 在左侧选择想要加入本地址用于处理读请求的节点。可选节点包括主节点和所有只读节点,本地址只会将读请求发往被选中的节点。
    说明
    • 读写模式为只读,且当前集群包含2个及以上只读节点时,可以挂载1个或以上只读节点。如果仅挂载1个节点,一旦该节点发生故障(故障恢复时间不超过1小时)将无法保障高可用性。
    • 读写模式为可读可写(自动读写分离)时,至少要选择2个节点。
    • 不论是否选中主节点,写请求都只会发往主节点。
    新节点自动加入 新增的节点是否要自动添加到该地址中。
    负载均衡策略 读写分离时,处理读请求的多个节点之间的调度策略,无需选择。
    一致性级别
    • 最终一致性:能够提供最好的性能。
    • 会话一致性:提供Session级的读一致性保证,会略微增加主节点的负载。

    具体请参见云数据库POLARDB之会话读一致性

    说明
    • 如果读写模式为只读,只能选择最终一致性
    • 一致性级别修改后对所有连接立即生效。
    事务拆分

    默认情况下,POLARDB会将事务内的所有请求都发送到主节点以保障事务的正确性,但是某些框架会将所有请求封装到事务中,导致主节点负载过大。此时您可以开启事务拆分功能,开启后POLARDB会识别当前事务的状态,将正式开启事务前的读请求通过负载均衡模块分流至只读节点。详情请参见高级选项-事务拆分

    说明 某些业务对全局一致有要求,开启事务拆分后将不满足全局一致,因此在事务拆分前请充分评估事务拆分功能是否适用于您的业务。
  6. 单击确认

释放自定义集群地址

  1. 登录 POLARDB控制台
  2. 在控制台左上角,选择集群所在地域。
  3. 单击目标集群ID。
  4. 访问信息中的集群地址【推荐】中找到目标自定义地址,单击释放释放自定义地址
  5. 在弹出的对话框中,单击确认

相关API

API 描述
CreateDBClusterEndpoint 创建自定义集群地址。
DescribeDBClusterEndpoints 查询集群地址。
ModifyDBClusterEndpoint 修改集群地址。
DeleteDBClusterEndpoint 释放自定义集群地址。