检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
活容灾场景下对涉及配置多数据源服务进行开发,结合样例讲解MAS-DB-SDK在开发过程中如何使用。 请从MAS对应版本的软件包中获取MAS-SDK。 本文假设您已经具备如下开发能力: 熟悉Java语言,并有Java程序开发经验。 熟悉Maven。 熟悉服务配置数据源方式。 父主题:
PostgreSQL监控,配置监控信息。该监控器用于监控用户业务所使用的数据库,并且在数据中心1异常后可以将业务流量切换到数据中心2。 新增Redis监控 在实例控制台的监控列表页面新增一个Redis监控,配置监控信息。该监控器用于监控用户业务所使用的Redis,并且在数据中心1异常后自动将业务流量切换到数据中心2。
根据资源准备所准备的实例和MySQL监控,使用之前已注册的“SDK-test”用户名登录mall商城,验证MySQL监控切换数据库功能。 使用“SDK-test”用户名和密码登录mall商城。 根据SDK切换数据源测试,将数据源切换为ds1,“SDK-test”用户登录成功。通过管
1:3306/ds0 // 数据库地址,和MAS服务配置一致 username: datasourceuser // 用户名,和MAS服务配置一致 password: datasourcepwd // 密码,和MAS服务配置一致 type: com.zaxxer
这种路由算法场景下,读操作在本地进行,不受DCG指示的active影响。根据配置文件中的AZ信息判断本地属于哪个AZ,读操作时从本地AZ进行读取,写操作仍然根据DCG指示的active进行操作。 本地读单边写策略,配置文件中props.azs信息必须填写,根据实际所属AZ填写,不同AZ的服务,配置文件中props.
常见问题 如何选择组件版本 props、etcd配置项在MAS服务中如何查询 文档中关于SDK对应yaml配置文件的获取方式 运行MAS-DB-SDK问题参考 其它 父主题: MAS-DB-SDK使用手册
开发流程 开发的流程如下所示: 版本获取及引入依赖。 通过go.mod引入需要的依赖,是使用MAS-GO-SDK的基础。 配置创建数据源。 通过配置数据源驱动信息,引入MAS-GO-SDK-Mysql创建数据源。 支持以代码方式添加配置信息或者从YAML文件读取配置信息。 按需引入数据源。
</dependency> 获取SDK接入配置。 登录MAS控制台,在“多活管理”页面单击多活实例,进入多活实例控制台。 在“监控列表”页面,单击MySQL监控器左侧操作栏“更多”>“SDK接入配置”,复制配置参数。 图1 复制配置参数 此处获取的yaml配置不会携带数据库用户名密码信息,在使用时,
PIG的可用性,进行入口DNS的解析结果控制。 发布区域:华北-北京一、华北-北京四、华东-上海一、华南-广州 API监控管理 全局配置 通过全局配置,可以进行密钥配置和通知配置,还可配置监控是否支持数据中心级自动切换。 发布区域:华北-北京一、华北-北京四、华东-上海一、华南-广州
如果您需要提高应用的高可用性,建议您将多活实例创建在不同的可用区内;如果您需要较低的网络时延,建议您将多活实例创建在相同的可用区内;可用区选择请与业务部署架构保持一致。 企业项目 企业项目管理提供了一种按企业项目管理云资源的方式,帮助用户实现以企业项目为基本单元的资源及人员的统一管理。 应用
前提条件中已创建好的命名空间,单击右上角的“创建同步链路”。 在“创建同步链路”页面,填写配置信息,然后单击“提交”。 表1 同步链路配置参数 参数 配置说明 命名空间 选择已创建好的命名空间。 任务异常通知设置 本实践配置为“关”。 任务异常自动结束时间 配置任务异常自动结束时
1:3306/ds0 // 数据库地址,和MAS服务配置一致 username: datasourceuser // 用户名,和MAS服务配置一致 password: datasourcepwd // 密码,和MAS服务配置一致 type: com.zaxxer
结论:数据库ds1新增“SDK-test”用户名,SDK提供的服务正常运行。 SDK切换数据源测试 验证SDK提供的切换数据源功能,可在yaml直接配置当前活跃的数据源,使用之前已注册的“SDK-test”用户名进行登录验证。 切换数据源为ds2,切换配置如下: 切换后连接数据库为ds2,管理员表其对应用户数据如下:
<version>${mas.version}</version> </dependency> 参考配置文件示例devspore-cache.yaml,配置参数参考参数配置说明。 配置文件示例devspore-cache.yaml: devspore: dcs: props:
同时SDK内置实现了读写分离,可通过配置RANDOM(随机)或ROUND_ROBIN(轮询)负载均衡算法,搭配MAS可实现多活容灾;同时内置故障注入功能可创建带有注入故障的实例,进行相关业务场景的模拟,配置修改请参考故障注入Mysql配置示例。 该模块具有如下特性: 多活容灾能力。
mod文件中引入依赖,即引入MAS-GO-SDK。 github.com/huaweicloud/devcloud-go 结合配置项说明,添加配置文件或者配置信息。 配置文件示例config_Redis.yaml props: version: v1 appId: xxx monitorId:
7及以上版本 MAS-Redis-SDK使用的spring-boot版本为2.5.4版本,用户使用的spring-boot版本可能和该版本不一致,如果用户使用的spring-boot版本高于2.5.4版本则无需做修改,如果低于2.5.4版本需要用户将spring-boot-autoco
MAS是不是相当于一个管理通道,客户需要提前在MAS中配置策略,如果出现问题,整体状态可以自动倒换? 是的。 MAS需要包含数据库、存储等一体化部署,配置策略后整体无感知切换。 MAS里面也包含容灾策略和容灾演练。 父主题: MAS产品相关问题
class RedissonClientStorage { // dcs的客户端 private final MultiZoneClient client; // dc1和dc2的RedissonClient private final Map<String
开发流程 开发的流程如下所示: 版本获取及引入依赖。 通过Maven引入需要的依赖,是使用MAS-DB-SDK的基础。 添加客户端配置。 通过添加客户端配置,接入MAS-DB-SDK。 创建DataSource。 MAS-DB-SDK提供读取YAML文件创建DataSource的方法,如