检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
ECS或RDS实例故障,可通过本地主备切换或重启或重新加载故障组件来解决。 跨AZ容灾 开启“RRO/RTO评估”且评估项勾选“跨AZ容灾”时此参数可见。 配置跨AZ容灾的RPO目标和RTO目标。 AZ故障导致AZ内业务受影响,可通过将业务切换到不同AZ来恢复,如RDS实例跨AZ主备切换。
Redisson Lock Redisson是一个基于Redis的Java库,它提供了一系列的分布式对象和服务,其中包括分布式锁。 Redisson的分布式锁实现了可靠的分布式锁机制,可以在分布式环境下实现对共享资源的并发访问控制。 对接Redisson Lock命令参考如下。 import
MAS多活管理切换/回切 DDM实例创建备份 DDM实例读写设置 RDS实例指定用户读写设置 RDS检查容灾复制状态 RDS灾备实例升主 RDS修改实例参数 DRS任务操作 DRS检查任务方向和状态 RDS自动备份策略设置 RDS检查实例备份信息 DRS检查任务信息 DRS数据级/对象级对比
创建故障场景 故障场景库按照不同业务场景提供多故障编排的模板。 创建故障场景 登录MAS控制台。 单击“混沌工程>故障场景库”,进入“故障场景库”页面。 单击“创建故障场景”按钮,填写基本信息。 表1 基本信息配置说明 参数 配置说明 名称 输入故障场景名称。 标签 选择故障场景标签,最多支持4个标签。可选如下标签:
Jedis、Lettuce Jedis是一个流行的Java客户端库,用于与Redis数据库进行交互。 Lettuce 是一个可伸缩线程安全的Redis客户端,多个线程可以共享同一个 RedisConnection。 直接替换客户端命令参考如下。 import com.huawei
"Allow", "Action": [ "rds:instance:list", "rds:instance:modify", "gaussdb:instance:list"
单边读写 此模式为MAS-Mongo-SDK的默认路由模式,在单边读写模式下,对Mongo的读写操作都在同一Mongo数据库(dc1或dc2)进行,通过配置文件中的active字段或MAS界面配置活跃节点来指定。(通过注解指定数据源的场景例外,注解强制指定路由见强制路由)。 配置示例:
"gaussdb:backup:create", "rds:backup:create", "gaussdb:*:list", "rds:*:list", "ddm:instance:get"
xxxx #监控器id,从MAS服务实例页面查询获取MAS监控id databaseName: xxxx #MAS监控的Mongo数据库 azs: az1 #项目所属AZ,本地读单边写模式下,此项必填 # etcd配置,对接MAS服务关键配置,如不对接MAS则无需配置
data:spring-data-mongo 2.1.8.RELEASE,此依赖包存在以下漏洞请参见National Vulnerability Database。 需要注意使用spring-data-mongodb的@Query和@Aggregate注解,以防产生spel注入漏洞。 父主题:
单边读写 这种路由算法场景下,对数据库的读写操作都只在一边(数据中心1或者数据中心2)进行,根据active指示,在相应的那边数据中心操作。(通过注解指定的场景例外,注解指定见强制路由) 路由算法不支持动态切换,更改路由算法,需要重启服务。 无从库 读写分离 父主题: 使用场景
理。 应用 应用是一个功能相对完备的业务系统,由一个或多个特性相关的应用组件组成。 监控器 监控器可对用户业务使用的数据库进行探测,呈现监控的实时状态,并且在数据库异常时自动触发流量切换。 工作流 MAS通过工作流编排和执行,提供业务进行跨区域容灾双活切换的完整流程。 混沌工程
MAS-SDK版本变更与下载 MAS-SDK版本变更记录及下载地址如下: 表1 MAS-DB-SDK版本变更 开发语言 版本及下载地址 变更描述 Java v 1.2.0-RELEASE 初次发布。 Java v 1.2.1-RELEASE 支持本地读单边写特性。 Java v 1
义填写。 源数据源 选择源数据源。源数据源的数据库实例将配置为创建DB监控数据中心1的数据库。 目标数据源 选择目标数据源。目标数据源中RDS实例中不能有新创建的数据库,否则会导致链路创建异常。 同步方案 选择数据同步方案。 同步方向 选择同步方向,本实践配置“单向”。 限速配置
不支持的接口 SDK中部分jdbc相关接口不支持,详细见SDK中com.huawei.devspore.datasource.jdbc.unsupported包。下面列出了Connection、PreparedStatement、ResultSet中的部分不支持接口,如下: Connection接口。
"Effect": "Allow", "Action": [ "rds:instance:list", "gaussdb:instance:list"
com.google.errorprone:error_prone_annotations 2.5.1 compile spring-cloud-starter-huawei-devspore-datasource com.huaweicloud.devspore:devspore-datasource
连接MongoDB的密码。 url 是 String MongoDB连接串(去除用户名和密码) 举例:mongodb://ip+port/database。 azs 否 String 此Mongo数据源所属AZ。当routeStrategy设置为local-read-single-write时,此项必填。
依赖冲突问题修复 完成相关配置后(请确保各个配置项无误且功能正常),直接运行程序会存在依赖冲突问题,下面进行逐一修复(以下问题的修复是相关联的,上一个问题修复后重新运行而产生的后续问题)。 问题一:Logback-classic及log4j-to-slf4j的包冲突问题。 报错如下:
非事务中使用强制路由 除了根据路由算法配置路由,SDK还支持通过注解@DynamicRoute强制指定路由,且相比路由算法,注解指定路由优先级更高。存在注解指定路由的场景下,优先根据注解指定进行路由。 注解@DynamicRoute指定路由分为两部分:source和hint,可单