检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
多活架构对业务是有要求的吧? 是有要求的,在应用层是需要业务做一定改造,华为侧也会提供容灾规范指导咨询等。 父主题: 多活容灾方案相关问题
开发流程 开发的流程如下所示: 版本获取及引入依赖。 通过go.mod引入需要的依赖,是使用MAS-GO-SDK的基础。 配置创建数据源。 通过配置数据源驱动信息,引入MAS-GO-SDK-Mysql创建数据源。 支持以代码方式添加配置信息或者从YAML文件读取配置信息。 按需引入数据源
配置项说明 表1 配置参数详解 参数名称 是否必选 参数类型 取值范围 描述 props 否 PropertiesConfiguration 请参考PropertiesConfiguration数据结构说明。 MAS监控配置,配合etcd使用。 etcd 否 EtcdConfiguration
使用指南 Mysql配置示例 Redis配置示例 父主题: 故障注入
内置注入故障 带波动的延时故障 基于延时基数和抖动幅度创建带有波动的延时故障。具体触发要结合故障注入功能是否开启、注入故障概率、延时注入开关、延时故障生效概率决定。 异常故障 内置如下异常故障,结合故障注入功能是否开启、注入故障概率、异常注入开关、异常故障生效概率决定是否触发,触发故障为对应模块随机一种异常
根据是否接入MAS服务,确定是否配置etcd部分。 接入MAS服务,etcd配置必填,以及servers部分下Redis源列表与MAS服务中配置的源保持一致。 无接入MAS服务,etcd配置无须配置,servers部分下Redis源列表以实际使用为准。
配置如下: # 基础信息 - 可选项, 当配置etcd后为必选 props: version: v1 // 项目版本号,自定义 appId: xxx // 应用ID,从MAS服务实例页面查询获取 monitorId: xxx // 监控器ID,从MAS服务实例页面查询获取
配置项说明 表1 InjectionProperties数据结构说明 参数名称 是否必选 参数类型 取值范围 描述 active 是 bool true/false 默认false 故障注入功能是否开启。 duration 是 int - 故障注入持续时间,单位:秒。 interval
如何选择组件版本 SpringBoot接入涉及组件版本参考。 表1 SpringBoot涉及组件版本 GroupId ArtifactId Version 备注 org.springframework.boot spring-boot-autoconfigure-processor
ShedLock ShedLock是一个用于分布式任务调度的开源库。 它提供了一种简单而可靠的方式来确保在分布式环境中只有一个节点执行指定的任务。 对接ShedLock命令参考如下。 import com.huawei.devspore.mas.redis.core.MultiZoneClient
使用ShardingSphereDataSource场景 SDK还支持使用ShardingSphereDataSource,此时,需要修改yml配置,单独将sharding配置放在yml同级目录,并在yml中设置sharding配置文件名,示例如下: 引入依赖: <dependency
配置如下: # 基础信息 - 可选项, 当配置etcd后为必选 props: version: v1 // 项目版本号,自定义 appId: xxx // 应用ID,从MAS服务实例页面查询获取 monitorId: xxx // 监控器ID,从MAS服务实例页面查询获取
DNS公网域名记录集权重设置 概述 “DNS公网域名记录集权重设置”插件用于DNS公网域名下对于记录集权重的修改设置。 配置介绍 表1 配置说明 参数 配置说明 公网域名 选择公网域名。 记录集1 选择记录集1的值。 记录集1的权重 填写记录集1的权重。 记录集2 选择记录集1的值
新创建的MySQL监控器监控状态异常怎么处理? 确认配置MySQL监控时数据库的用户名、密码、IP地址与端口、数据库名称等信息是否正确,可以编辑监控器重新配置一遍。 确认添加MySQL监控的两个数据库实例是否存在且正常启动和运行。 确认数据库实例上是否已创建好需要监控的数据库。 确认数据库实例与
使用多数据源 上面的方式都是只引入一个数据源,在某些场景下,需要引入多个数据库,操作不同的数据库,此时,可以通过配置不同前缀来注入多个datasource的bean,方法如下: 引入依赖。 <dependency> <groupId>com.huaweicloud.devspore
分布式锁场景最佳实践 分布式锁场景需根据所选取的路由模式来选择合适的策略。 路由模式为single-read-write, single-read-async-double-write时 由于读写都在同一边,分布式锁不受影响。 路由模式为local-read-single-write
配置如下: # 基础信息 - 可选项, 当配置etcd后为必选 props: version: v1 // 项目版本号,自定义 appId: xxx // 应用ID,从MAS服务实例页面查询获取 monitorId: xxx // 监控器ID,从MAS服务实例页面查询获取
多活容灾Redis监控准备 MAS-Redis-SDK的多活容灾能力需要MAS服务支持,SDK本身也不支持故障动态切换数据源能力,需要配合MAS实例一起使用。 在使用MAS-Redis-SDK进行开发前,需要先做好如下准备: 已创建MAS实例。 在实例下已创建对应的监控器。
接入自建K8S 本章节指导您将UniAgent接入自建K8S。 操作步骤 登录MAS控制台。 单击“混沌工程>探针管理”,进入“探针管理”页面。 在“我的应用”栏下选择所需安装的应用。 单击右上角的“UniAgent安装”,进入UniAgent安装页面。 选择自建K8S集群控制节点所在页签
原生DB 创建go版本下database/sql包sql.DB数据源,进行mysql操作。 在go.mod文件中引入依赖,即引入MAS-GO-SDK。 github.com/huaweicloud/devcloud-go 结合配置项说明,添加配置文件或者配置信息。 配置文件示例config_mysql.yaml