检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
sources.ds1.jdbcUrl 数据库连接地址 空 与MAS服务中连接池中各节点下数据库连接地址一致。 sources.ds1.username 数据库用户名 空 与MAS服务中连接池中各节点下数据库用户名一致。
单击“监控列表”,在本项目监控器所在行单击“编辑”,在“编辑监控”页面单击“连接池配置”,在“数据中心”页签下的“数据源名称”就是props.databaseName。
图4 新增监控数据中心配置 表5 数据中心配置信息 参数 配置说明 云选择 选择被监控的APIG部署的环境。 局点 被监控的APIG所在Region。 连接地址 协议选择http或https,地址填写APIG的连接地址。 请求路径 APIG的健康检查路径信息。
databaseName 是 String - MAS监控的Mongo数据库。 cloud 是 String - 项目部署云组。 region 是 String - 项目部署region。 azs 是 String - 项目部署AZ。
图1 复制配置参数 此处获取的yaml配置不会携带数据库用户名密码信息,在使用时,需要补充完全(与创建MySQL监控时数据中心1和数据中心2数据库用户名和密码对应),同时还需要保证ETCD地址的可用性,再添加至项目的yaml文件。 创建多活数据源配置。
active数据源。
数据源 200 单个命名空间支持的数据源数量。 数据同步 100 单个命名空间支持的数据同步数量。
数据库访问超时时间(ms) 当“监控类型”配置为“MySQL/Oracle/PostgreSQL监控”和“MongoDB监控”时可见; 访问数据库超时时间,超过这个时间认为一次访问数据库失效。 输入值必须在3000到100000之间。 健康精度 探测的健康精度。
DRS ReadOnlyAccess:数据复制服务只读权限。 检查结果访问授权:授权技术专家查看并分析韧性Hub服务检查结果。 如权限在开启后被关闭,需重新开启权限。 父主题: 应用韧性Hub
保留期到期后,若包年/包月MAS实例仍未续费,那么MAS实例将被释放,数据无法恢复。 华为云根据客户等级定义了不同客户的宽限期和保留期时长。 关于续费的详细介绍请参见续费概述。 父主题: 计费模式
故障场景库 故障场景库提供实验组的模板化数据管理功能,可以基于场景模板一键创建实例化的混沌实验组。 创建故障场景 实例化为混沌实验组 父主题: 混沌工程
使用场景 单边读写 本地读单边写 强制路由 使用ShardingSphereDataSource场景 使用多数据源 父主题: MAS-DB-SDK使用手册
实施步骤 添加数据源 创建同步链路 创建应用 创建MySQL监控 应用接入SDK 故障切换演练 父主题: 同城多活改造实践
up:升为主数据库。 down:降为备数据库。 任务名称 请自定义输入任务名称。 父主题: 工作流插件说明
dataSource createDataSource 编辑数据源 dataSource updateDataSource 删除数据源 dataSource deleteDataSource 创建同步链路 dataSync createDataSyncTask 删除同步链路 dataSync
single-read-write 单读写类似于主备库,MAS监控各节点健康状态,active节点故障自动切换至其他节点,保证多活容灾能力,节点之间进行数据同步,保证数据一致。 读操作:同步路由到active的Redis。 写操作:同步路由到active的Redis。
方案架构 本实践对Demo商城的web应用和Mysql数据库进行同城多活改造。 通过MAS改造后的应用架构图如下所示: 同城多活应用场景: 适用于容灾可用性要求达到99.95%,要求业务双活的容灾场景。 同城跨AZ的应用数据多活,并分担部分业务流量。
后为必选 props: version: v1 // 项目版本号,自定义 appId: xxx // 应用ID,从MAS服务实例页面查询获取 monitorId: xxx // 监控器ID,从MAS服务实例页面查询获取 databaseName: xxx // 数据库名
后为必选 props: version: v1 // 项目版本号,自定义 appId: xxx // 应用ID,从MAS服务实例页面查询获取 monitorId: xxx // 监控器ID,从MAS服务实例页面查询获取 databaseName: xxx // 数据库名
#项目版本号,自定义 app-id: xxxx #应用id,从MAS服务实例页面查询获取 monitor-id: xxxx #监控器id,从MAS服务实例页面查询获取MAS监控id databaseName: xxxx #MAS监控的Mongo数据库