检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
配置项详细信息列表 MAS-DB-SDK配置分为props、etcd、sources、router四部分,在SpringBoot项目中配置项使用驼峰风格,详细信息如下表: 表1 props配置项 名称 说明 默认值 备注 props.appId MAS应用ID 空 MAS服务应用列表页中“应用ID”列对应值。
配置项说明 表1 配置参数详解 参数名称 是否必选 参数类型 取值范围 描述 props 否 PropertiesConfiguration 请参考PropertiesConfiguration数据结构说明。 MAS监控配置,配合etcd使用。 etcd 否 EtcdConfiguration
单边读写 这种路由算法场景下,对数据库的读写操作都只在一边(数据中心1或者数据中心2)进行,根据active指示,在相应的那边数据中心操作。(通过注解指定的场景例外,注解指定见强制路由) 路由算法不支持动态切换,更改路由算法,需要重启服务。 无从库 读写分离 父主题: 使用场景
使用限制 session使用 仅支持通过以下接口获取session: com.huawei.devspore.mas.mongo.core.client.Cluster.startSession() com.huawei.devspore.mas.mongo.core.client
约束 MAS-Mongo-SDK的多活容灾能力需要数据同步服务和MAS DCG服务支持,SDK本身不支持数据同步,SDK本身也不支持故障动态切换数据源能力,需要配合MAS DCG服务一起使用。 版本约束 多活容灾MongoDB监控准备 父主题: MAS-Mongo-SDK使用手册
使用场景 本模块客户端创建支持single-read-write(单读写),local-read-single-write(本地读单写),double-write(本地读双写)3种模式,其中Redis节点可配置cluster(集群), master-slave(主从), norm
方案概述 应用场景 企业业务快速成长,面临的挑战越来越多,对业务稳定可靠运行的需求越来越高。但设备故障、电力故障、人为损坏、火灾、自然灾害等突发事故会对业务的稳定运行造成巨大威胁,影响企业的正常运营,制约企业的发展,甚至可能给企业利益造成无法预估的损失。为了满足企业高可用的业务运
读写分离 场景二: 如上图,实线为DCG指示激活AZ1,虚线为DCG指示激活为AZ2。跟场景一类似,同样在单边进行读写,不同之处在于,场景二中存在从库,进行读写分离,写操作在主库,读操作在从库进行。 配置如下: # 基础信息 - 可选项, 当配置etcd后为必选 props:
配置参数说明 表1 配置参数详解 参数名称 是否必选 参数类型 取值范围 描述 props 否 PropertiesConfiguration object 请参考表2 PropertiesConfiguration数据结构说明 MAS监控配置,配合etcd使用。 etcd 否 EtcdConfiguration
读写分离 场景四: 如上图,实线为DCG指示激活AZ1,虚线为DCG指示激活为AZ2。跟场景三不同之处在于,场景四中存在从库,进行读写分离,写操作在主库,读操作在从库进行。 配置如下: # 基础信息 - 可选项, 当配置etcd后为必选 props: version: v1
SpringBoot项目接入MAS-Mongo-SDK MAS-Mongo-SDK使用Maven获取相关,根据实际情况设置Maven远程仓库地址等相关配置。 在pom.xml文件中引入以下依赖,下面mas.version版本为最新版本,依赖组件版本参考如何选择组件版本。 <properties>
运行MAS-DB-SDK问题参考 根据上述步骤配置MAS-DB-SDK后,确认相关配置信息都已包含且有效,运行项目可能会遇到一些问题,主要的问题及其相关解决过程如下: Logback-classic及log4j-to-slf4j的包冲突问题。 关键错误信息如下所示: 出现原因:
创建故障场景 故障场景库按照不同业务场景提供多故障编排的模板。 创建故障场景 登录MAS控制台。 单击“混沌工程>故障场景库”,进入“故障场景库”页面。 单击“创建故障场景”按钮,填写基本信息。 表1 基本信息配置说明 参数 配置说明 名称 输入故障场景名称。 标签 选择故障场景标签,最多支持4个标签。可选如下标签:
使用场景 单边读写 本地读单边写 强制路由 使用ShardingSphereDataSource场景 使用多数据源 父主题: MAS-DB-SDK使用手册
实施步骤 添加数据源 创建同步链路 创建应用 创建MySQL监控 应用接入SDK 故障切换演练 父主题: 同城多活改造实践
参数配置说明 local-read-async-double-write配置示例: devspore: dcs: props: version: v1 app-id: xxxx monitor-id: xxxx cloud:
使用ShardingSphereDataSource场景 SDK还支持使用ShardingSphereDataSource,此时,需要修改yml配置,单独将sharding配置放在yml同级目录,并在yml中设置sharding配置文件名,示例如下: 引入依赖: <dependency>
依赖冲突问题修复 完成相关配置后(请确保各个配置项无误且功能正常),直接运行程序会存在依赖冲突问题,下面进行逐一修复(以下问题的修复是相关联的,上一个问题修复后重新运行而产生的后续问题)。 问题一:Logback-classic及log4j-to-slf4j的包冲突问题。 报错如下:
配置项说明 表1 InjectionProperties数据结构说明 参数名称 是否必选 参数类型 取值范围 描述 active 是 bool true/false 默认false 故障注入功能是否开启。 duration 是 int - 故障注入持续时间,单位:秒。 interval
本地读单边写 这种路由算法场景下,读操作在本地进行,不受DCG指示的active影响。根据配置文件中的AZ信息判断本地属于哪个AZ,读操作时从本地AZ进行读取,写操作仍然根据DCG指示的active进行操作。 本地读单边写策略,配置文件中props.azs信息必须填写,根据实际所