检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
环境准备 在进行应用开发时,准备环境包括开发环境准备所示任务。 表1 开发环境准备 准备项 说明 准备操作系统 Windows系统,推荐使用Windows 7及以上版本。 安装Go 开发环境的基本配置。Go版本要求1.14.6及以上。 安装配置Goland 开发程序的工具。Goland
新创建的MySQL监控器监控状态异常怎么处理? 确认配置MySQL监控时数据库的用户名、密码、IP地址与端口、数据库名称等信息是否正确,可以编辑监控器重新配置一遍。 确认添加MySQL监控的两个数据库实例是否存在且否正常启动和运行。 确认数据库实例上是否已创建好需要监控的数据库。
使用场景 本模块数据源创建支持single-read-write(单读写),local-read-single-write(本地读单写)2种模式,同时SDK内置实现了读写分离,可通过配置RANDOM(随机)或ROUND_ROBIN(轮询)负载均衡算法,搭配MAS可实现多活容灾;同时内置故障注入功能可创建带有注入故障的实例
开发简介 本文主要描述如何使用MAS-GO-SDK在多活容灾场景下对涉及Mysql的服务进行开发,结合样例讲解在开发过程中如何使用。 本文假设您已经具备如下开发能力: 熟悉Go语言,并有Go程序开发经验。 熟悉module开发模式。 熟悉Mysql的常用操作。 父主题: 概述
资源准备 mall项目对接SDK需要提前准备的资源包括: 多活实例,请参考多活管理,创建多活实例。 两个数据库,请参考购买RDS实例,购买MySQL数据库。 配置MySQL监控,请参考MySQL监控管理。 准备好上述资源后便可开始mall项目的SDK对接工作。 父主题: 商城应用改造
开发流程 开发的流程如下所示: 版本获取及引入依赖。 通过go.mod引入需要的依赖,是使用MAS-GO-SDK的基础。 配置创建数据源。 通过配置数据源驱动信息,引入MAS-GO-SDK-Mysql创建数据源。 支持以代码方式添加配置信息或者从YAML文件读取配置信息。 按需引入数据源
配置项说明 表1 配置参数详解 参数名称 是否必选 参数类型 取值范围 描述 props 否 PropertiesConfiguration 请参考PropertiesConfiguration数据结构说明。 MAS监控配置,配合etcd使用。 etcd 否 EtcdConfiguration
gorm 创建gorm.io/gorm包gorm.DB数据源,进行mysql操作。 依赖引入,配置文件或配置信息修改参考原生DB。 初始化创建gorm数据源DevSporeGorm,后续执行Mysql相关操作。 配置文件方式创建。 import ( "log" _
配置POM.xml和yaml文件 配置yaml文件 登录MAS服务控制台,在“多活管理”页面单击实例,进入实例详情控制台。 在页面顶端导航栏选择“监控列表”,单击MySQL监控所在行的“更多>SDK接入配置”,获取SDK接入配置。 此处获取的yaml配置不会携带MySQL用户名密码信息
beego-orm 创建github.com/astaxie/beego/orm包orm.Ormer数据源,进行mysql操作。 依赖引入,配置文件或配置信息修改参考原生DB。 初始化创建beego-orm数据源DevSporeOrm,后续执行Mysql相关操作。 由于beego-orm
功能模块 概述 功能模块包含用户需要开通的多活版本和功能点,包括如下功能点: MySQL Oracle PostgreSQL Redis MongoDB Elasticsearch OpenGauss API监控 开通对应功能点,才支持添加对应类型的数据源和创建对应类型监控。 未开通对应功能点
事务中使用强制路由 SDK不支持分布式事务,事务与强制指定路由@DynamicRoute同时使用时,以第一条sql选择的数据源为准,后续sql,即使使用@DynamicRoute指定数据源,也不生效。同一个事务中,不允许访问不同的数据库。 如下,service层的updateUser
连接和执行命令的超时时间。 maxAttempts 否 Integer 默认为5。 最大重试次数。 masterName 否 String - type选择为sentinel哨兵模式时Redis名字。 sentinelPassword 否 String - 哨兵模式的密码。
操作流程 前提条件 进行应用改造需要提前完成的事项: 已开通MAS“同城多活”版本功能模块,功能点包括“MySQL”。具体详情请参见开通功能模块。 创建好“同城多活”类型的命名空间,分区类型选择“华为云”。具体详情请参见创建命名空间。 在已创建的命名空间下购买MAS多活管理中心。具体详情请参见购买多活管理中心
数据同步 概述 为添加的数据源创建数据同步链路,目前仅支持创建DRS实时灾备任务。 创建同步链路 登录MAS控制台,在“数据同步”页面,单击右上角的“创建同步链路”。 在“创建同步链路”页面,填写配置信息,然后单击“确定”。 图1 创建同步链路 表1 同步链路配置参数 参数 配置说明
资源和成本规划 购买MAS多活管理中心及RDS for MySQL涉及到的资源和成本规划,如下表所示。 表1 资源和成本规划 资源 资源说明 数量 费用(元) 虚拟私有云VPC 创建一个虚拟私有云VPC 1 00.00 虚拟私有云子网 创建一个虚拟私有云子网 1 00.00 安全组
DDM实例读写设置 概述 “DDM实例读写设置”插件用于在DDM逻辑库中所有RDS for MySQL数据库实例的读写设置。 配置介绍 表1 选择输入-配置说明 参数 配置说明 任务所在region 选择任务所在区域。 凭证 选择凭证,默认显示当前命名空间多活分区下已配置的默认凭证
故障切换演练 查看监控器活跃的数据中心。 登录MAS控制台,在“多活管理”页面单击多活实例,进入实例控制台。 在页面顶端导航栏选择“监控列表”,查看创建的“litemall-db”MySQL监控器。 在未出现故障前,监控器的活跃数据中心为数据中心1,即主数据中心,此时商城应用是连接数据中心
添加数据源 登录MAS控制台,进入“数据管理>数据源”页面,选择前提条件中已创建好的命名空间,单击右上角的“添加数据源”。 在“添加数据源”页面,填写配置信息,然后单击“提交”。 表1 数据源配置参数 参数 配置说明 所属分区 选择数据源所属分区,配置为命名空间下的主多活分区。 数据源类型
应用管理 概述 MAS通过应用来实现同一实例内不同用户间的资源隔离,用户在实例中创建的资源(MySQL监控、Redis监控等)都要归属到某个应用下,IAM用户默认只能查看和管理自己创建的应用和资源,无法查看其他IAM用户创建的应用和资源,主账号可以查看和管理其下所有IAM用户所创建的应用和资源