管理Active-Active数据库

管理您的Active-Active数据库设置。

您可以从集群管理器用户界面或命令行配置和管理您的Active-Active数据库。

要更改Active-Active数据库的全局配置,请使用crdb-cli

如果您需要在一个数据库实例上本地应用更改,您可以使用集群管理器UI或rladmin

数据库设置

许多Active-Active数据库设置可以在数据库创建后进行更改。一个显著的例外是数据库集群。数据库创建后,无法开启或关闭数据库集群。

参与的集群

您可以添加和删除Active-Active数据库的参与集群以更改拓扑。 要管理Active-Active拓扑的更改,请使用crdb-cli或集群管理器UI中的参与集群列表。

添加参与的集群

在添加新的参与集群时,所有现有的参与集群必须在线并处于同步状态。

新参与的集群基于全局的Active-Active数据库配置创建Active-Active数据库实例。 在您将新参与的集群添加到现有的Active-Active数据库后, 新的数据库实例可以接受连接和读取操作。 在同步状态之前,新实例不接受写操作。

注意:
如果Active-Active数据库运行在闪存上,则无法添加仅运行在RAM上的参与集群。

使用集群管理器UI将新的参与集群添加到现有的Active-Active配置中:

  1. 数据库列表中选择Active-Active数据库,并进入其配置屏幕。

  2. 点击编辑

  3. 参与集群部分,转到其他参与集群并点击+ 添加集群

  4. 添加集群配置面板中,输入新集群的URL、端口号以及新参与集群的管理员用户名和密码:

    Add cluster panel.
  5. 点击加入集群将集群添加到参与集群列表中。

  6. 点击保存

移除参与的集群

当您移除一个在线的参与集群时,所有现有的参与集群必须在线并处于同步状态。 如果您必须移除离线的参与集群,您可以强制移除它们。 如果一个被强制移除的参与集群尝试重新加入集群, 其Active-Active数据库成员资格将过时。 已加入的参与集群会拒绝从被移除的参与集群发送的更新。 为了防止重新加入的尝试,请从参与集群中清除被强制移除的实例。

要使用集群管理器UI移除参与的集群:

  1. 数据库列表中选择Active-Active数据库,并进入其配置屏幕。

  2. 点击编辑

  3. 参与集群部分,指向其他参与集群列表中您想要删除的集群:

    Edit and delete buttons appear when you point to an entry in the Other participating clusters list.
  4. 点击

  5. 点击保存

复制积压

使用复制以实现高可用性的Redis数据库维护一个复制积压(每个分片)以同步数据库的主分片和副本分片。除了数据库复制积压外,Active-Active数据库还维护一个积压(每个分片)以同步集群之间的数据库实例。

默认情况下,数据库和Active-Active复制积压都设置为数据库大小的百分之一(1%)除以分片数量。每个分片的积压大小可以在1MB到250MB之间。

更改复制积压大小

使用crdb-cli工具来控制复制积压的大小。您可以将其设置为auto或设置特定的大小。

使用下面显示的crdb-cli命令更新数据库复制积压配置。

crdb-cli crdb update --crdb-guid <crdb_guid> --default-db-config "{\"repl_backlog_size\": <size in MB | 'auto'>}"

使用以下命令更新Active-Active(CRDT)复制积压:

crdb-cli crdb update --crdb-guid <crdb_guid> --default-db-config "{\"crdt_repl_backlog_size\": <size in MB | 'auto'>}"

数据持久化

Active-Active 仅支持 AOF(仅追加文件)数据持久化。快照持久化支持用于 Active-Active 数据库,不应使用。

如果当前Active-Active数据库正在使用快照数据持久化,请使用crdb-cli切换到AOF持久化:

 crdb-cli crdb update --crdb-guid <CRDB_GUID> --default-db-config '{"data_persistence": "aof", "aof_policy":"appendfsync-every-sec"}'
RATE THIS PAGE
Back to top ↑