华为云用户手册

  • 接口约束 您必须是桶拥有者或拥有设置对象ACL的权限,才能设置对象ACL。建议使用 IAM 或桶策略进行授权,如果使用IAM则需授予obs:object:PutObjectAcl权限,如果使用桶策略则需授予PutObjectAcl权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的region以及region与endPoint的对应关系,详细信息请参见地区与终端节点。 一个对象的ACL最多支持配置100条规则。
  • 请求参数说明 表1 请求参数列表 参数名称 参数类型 是否必选 描述 request SetObjectAclRequest 必选 参数解释: 设置对象ACL请求参数,详见表2。 表2 SetObjectAclRequest 参数名称 参数类型 是否必选 描述 bucketName String 必选 参数解释: 桶名。 约束限制: 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。 默认取值: 无 objectKey String 必选 参数解释: 对象名。对象名是对象在存储桶中的唯一标识。对象名是对象在桶中的完整路径,路径中不包含桶名。 例如,您对象的访问地址为examplebucket.obs.cn-north-4.myhuaweicloud.com/folder/test.txt 中,对象名为folder/test.txt。 取值范围: 长度大于0且不超过1024的字符串。 默认取值: 无 versionId String 可选 参数解释: 对象的版本号。 取值范围: 长度为32的字符串。 默认取值: 无 acl AccessControlList 必选 参数解释: 指定对象ACL,您可以使用预定义的ACL,也可以自定义ACL,有关访问控制列表(Access Control List,ACL)功能的详细信息可参见ACL功能介绍。 取值范围: 如果使用预定义ACL,则可选配置项参见预定义ACL。 如果选择自定义ACL,则可以根据AccessControlList参数描述,自行给参数赋值。 默认取值: AccessControlList.REST_CANNED_PRIVATE
  • 功能介绍 OBS支持用户配置指定的规则,实现定时删除桶中的对象或者定时转换对象的存储类别,从而节省存储费用,更多生命周期相关信息请参见生命周期管理。此接口设置的对象过期时间,其优先级高于桶生命周期规则。 上传对象或者初始化分段上传任务时,您可以直接指定对象的过期时间。 归档存储和深度归档存储不支持多AZ,因此不支持使用生命周期的存储类别转换功能,将多AZ的桶或对象转化为归档或深度归档存储。 低频访问存储的最低存储时间为30天,归档存储的最低存储时间为90天,深度归档存储的最低存储时间为180天。如果对象经过转换,归档存储时间少于最低存储时间,需要补足剩余天数的存储费用。
  • 接口约束 单个桶的生命周期规则条数没有限制,但一个桶中所有生命周期规则的XML描述总大小不能超过20KB。 您最多可以在一个并行文件系统下配置20条生命周期管理规则,超过20条将提示不支持。 您必须是桶拥有者或拥有设置桶的生命周期配置的权限,才能设置桶的生命周配置。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:bucket:PutLifecycleConfiguration权限,如果使用桶策略则需授予PutLifecycleConfiguration权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、自定义创建桶策略。 OBS支持的region以及region与endPoint的对应关系,详细信息请参见地区与终端节点。 此接口仅支持设置以天为单位的对象过期时间,过期后的对象会被OBS服务端自动清理。
  • 代码示例 本示例通过将localfile上传到examplebucket桶下的objectname对象中,并设置对象过期时间为30天。示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 import com.obs.services.ObsClient; import com.obs.services.exception.ObsException; import com.obs.services.model.AccessControlList; import com.obs.services.model.PutObjectRequest; import java.io.File; public class PutObject012 { public static void main(String[] args) { // 您可以通过环境变量获取访问密钥AK/SK,也可以使用其他外部引入方式传入。如果使用硬编码可能会存在泄露风险。 // 您可以登录访问管理控制台获取访问密钥AK/SK String ak = System.getenv("AC CES S_KEY_ID"); String sk = System.getenv("SECRET_ACCESS_KEY_ID"); // 【可选】如果使用临时AK/SK和SecurityToken访问OBS,同样建议您尽量避免使用硬编码,以降低信息泄露风险。 // 您可以通过环境变量获取访问密钥AK/SK/SecurityToken,也可以使用其他外部引入方式传入。 // String securityToken = System.getenv("SECURITY_TOKEN"); // endpoint填写桶所在的endpoint, 此处以华北-北京四为例,其他地区请按实际情况填写。 String endPoint = "https://obs.cn-north-4.myhuaweicloud.com"; // 您可以通过环境变量获取endPoint,也可以使用其他外部引入方式传入。 //String endPoint = System.getenv("ENDPOINT"); // 创建ObsClient实例 // 使用永久AK/SK初始化客户端 ObsClient obsClient = new ObsClient(ak, sk,endPoint); // 使用临时AK/SK和SecurityToken初始化客户端 // ObsClient obsClient = new ObsClient(ak, sk, securityToken, endPoint); try { PutObjectRequest request = new PutObjectRequest(); request.setBucketName("examplebucket"); request.setObjectKey("objectname"); request.setFile(new File("localfile")); // 上传对象时,设置对象30天后过期 request.setExpires(30); obsClient.putObject(request); System.out.println("putObject successfully"); } catch (ObsException e) { System.out.println("putObject failed"); // 请求失败,打印http状态码 System.out.println("HTTP Code:" + e.getResponseCode()); // 请求失败,打印服务端错误码 System.out.println("Error Code:" + e.getErrorCode()); // 请求失败,打印详细错误信息 System.out.println("Error Message:" + e.getErrorMessage()); // 请求失败,打印请求id System.out.println("Request ID:" + e.getErrorRequestId()); System.out.println("Host ID:" + e.getErrorHostId()); e.printStackTrace(); } catch (Exception e) { System.out.println("putObject failed"); // 其他异常信息打印 e.printStackTrace(); } } }
  • 代码示例 以下代码展示如何获取examplebucket桶下的objectname对象的对象ACL。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 import com.obs.services.ObsClient; import com.obs.services.exception.ObsException; import com.obs.services.model.AccessControlList; public class GetObjectAcl001 { public static void main(String[] args) { // 您可以通过环境变量获取访问密钥AK/SK,也可以使用其他外部引入方式传入。如果使用硬编码可能会存在泄露风险。 // 您可以登录访问管理控制台获取访问密钥AK/SK String ak = System.getenv("ACCESS_KEY_ID"); String sk = System.getenv("SECRET_ACCESS_KEY_ID"); // 【可选】如果使用临时AK/SK和SecurityToken访问OBS,同样建议您尽量避免使用硬编码,以降低信息泄露风险。 // 您可以通过环境变量获取访问密钥AK/SK/SecurityToken,也可以使用其他外部引入方式传入。 // String securityToken = System.getenv("SECURITY_TOKEN"); // endpoint填写桶所在的endpoint, 此处以华北-北京四为例,其他地区请按实际情况填写。 String endPoint = "https://obs.cn-north-4.myhuaweicloud.com"; // 您可以通过环境变量获取endPoint,也可以使用其他外部引入方式传入。 //String endPoint = System.getenv("ENDPOINT"); // 创建ObsClient实例 // 使用永久AK/SK初始化客户端 ObsClient obsClient = new ObsClient(ak, sk,endPoint); // 使用临时AK/SK和SecurityToken初始化客户端 // ObsClient obsClient = new ObsClient(ak, sk, securityToken, endPoint); try { // 获取对象ACL AccessControlList acl = obsClient.getObjectAcl("examplebucket", "objectname"); System.out.println("getObjectAcl successfully"); System.out.println(acl); } catch (ObsException e) { System.out.println("getObjectAcl failed"); // 请求失败,打印http状态码 System.out.println("HTTP Code:" + e.getResponseCode()); // 请求失败,打印服务端错误码 System.out.println("Error Code:" + e.getErrorCode()); // 请求失败,打印详细错误信息 System.out.println("Error Message:" + e.getErrorMessage()); // 请求失败,打印请求id System.out.println("Request ID:" + e.getErrorRequestId()); System.out.println("Host ID:" + e.getErrorHostId()); e.printStackTrace(); } catch (Exception e) { System.out.println("getObjectAcl failed"); // 其他异常信息打印 e.printStackTrace(); } } }
  • 功能说明 访问控制列表(Access Control List,ACL)用于资源拥有者给其他账号授予资源的访问权限。默认情况下,创建存储桶或对象时仅资源拥有者对资源的完全控制权限,即桶创建者对桶拥有完全控制权限,对象上传者对对象拥有完全控制权限,而其他账号默认无权访问资源。如果资源拥有者想授予其他账号资源的读写权限,可以使用ACL实现。OBS桶和对象的ACL是基于账号进行授权,授权后对账号和账号下的IAM用户都生效。注意,SSE-KMS方式加密的对象即使设置了ACL,跨租户也不生效。 了解更多可参见ACL权限控制方式介绍。 可以通过本接口获取指定桶中对象的ACL。 开发过程中,您有任何问题可以在github上提交issue,或者在华为云 对象存储服务 论坛中发帖求助。
  • 接口约束 您必须是桶拥有者或拥有获取对象ACL的权限,才能获取对象ACL。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:GetObjectAcl权限,如果使用桶策略则需授予GetObjectAcl权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的region以及region与endPoint的对应关系,详细信息请参见地区与终端节点。
  • 请求参数说明 表1 请求参数列表 参数名称 参数类型 是否必选 描述 request GetObjectAclRequest 必选 参数解释: 获取对象ACL请求参数,详见GetObjectAclRequest。 表2 GetObjectAclRequest 参数名称 参数类型 是否必选 描述 bucketName String 必选 参数解释: 桶名。 约束限制: 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。 默认取值: 无 objectKey String 必选 参数解释: 对象名。对象名是对象在存储桶中的唯一标识。对象名是对象在桶中的完整路径,路径中不包含桶名。 例如,您对象的访问地址为examplebucket.obs.cn-north-4.myhuaweicloud.com/folder/test.txt 中,对象名为folder/test.txt。 取值范围: 长度大于0且不超过1024的字符串。 默认取值: 无 versionId String 可选 参数解释: 对象的版本号。 取值范围: 长度为32的字符串。 默认取值: 无
  • 功能说明 断点续传上传是对分段上传的封装和加强,解决上传大文件时由于网络不稳定或程序崩溃导致上传失败的问题。其原理是将待上传的文件分成若干个分段分别上传,并实时地将每段上传结果统一记录在checkpoint文件中,仅当所有分段都上传成功时返回上传成功的结果,否则返回错误信息提醒用户再次调用接口进行重新上传(重新上传时因为有checkpoint文件记录当前的上传进度,避免重新上传所有分段,从而节省资源提高效率)。
  • 代码示例 本示例展示了如何通过使用断点续传方式将本地文件localfile上传到examplebucket桶下的objectKey对象中。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 import com.obs.services.ObsClient; import com.obs.services.exception.ObsException; import com.obs.services.model.CompleteMultipartUploadResult; import com.obs.services.model.UploadFileRequest; public class UploadFile001 { public static void main(String[] args) { // 您可以通过环境变量获取访问密钥AK/SK,也可以使用其他外部引入方式传入。如果使用硬编码可能会存在泄露风险。 // 您可以登录访问管理控制台获取访问密钥AK/SK String ak = System.getenv("ACCESS_KEY_ID"); String sk = System.getenv("SECRET_ACCESS_KEY_ID"); // 【可选】如果使用临时AK/SK和SecurityToken访问OBS,同样建议您尽量避免使用硬编码,以降低信息泄露风险。 // 您可以通过环境变量获取访问密钥AK/SK/SecurityToken,也可以使用其他外部引入方式传入。 // String securityToken = System.getenv("SECURITY_TOKEN"); // endpoint填写桶所在的endpoint, 此处以华北-北京四为例,其他地区请按实际情况填写。 String endPoint = "https://obs.cn-north-4.myhuaweicloud.com"; // 您可以通过环境变量获取endPoint,也可以使用其他外部引入方式传入。 //String endPoint = System.getenv("ENDPOINT"); // 创建ObsClient实例 // 使用永久AK/SK初始化客户端 ObsClient obsClient = new ObsClient(ak, sk,endPoint); // 使用临时AK/SK和SecurityToken初始化客户端 // ObsClient obsClient = new ObsClient(ak, sk, securityToken, endPoint); try { UploadFileRequest request = new UploadFileRequest("examplebucket", "objectKey"); // 设置待上传的本地文件,localfile为待上传的本地文件路径,需要指定到具体带文件后缀的文件名 request.setUploadFile("localfile"); // 设置分段上传时的最大并发数 request.setTaskNum(5); // 设置分段大小为10MB request.setPartSize(10 * 1024 * 1024); // 开启断点续传模式 request.setEnableCheckpoint(true); // 进行断点续传上传 CompleteMultipartUploadResult result = obsClient.uploadFile(request); System.out.println("UploadFile successfully"); } catch (ObsException e) { // 发生异常时可再次调用断点续传上传接口进行重新上传 System.out.println("UploadFile failed"); // 请求失败,打印http状态码 System.out.println("HTTP Code:" + e.getResponseCode()); // 请求失败,打印服务端错误码 System.out.println("Error Code:" + e.getErrorCode()); // 请求失败,打印详细错误信息 System.out.println("Error Message:" + e.getErrorMessage()); // 请求失败,打印请求id System.out.println("Request ID:" + e.getErrorRequestId()); System.out.println("Host ID:" + e.getErrorHostId()); e.printStackTrace(); } catch (Exception e) { System.out.println("UploadFile failed"); // 其他异常信息打印 e.printStackTrace(); } } }
  • 接口约束 您必须是桶拥有者或拥有上传对象的权限,才能上传对象。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的region以及region与endPoint的对应关系,详细信息请参见地区与终端节点。 断点续传上传接口传入的文件大小至少要100K以上。 使用SDK的断点续传接口时,必须开启断点续传选项后才能在进程再次进入时读取上一次上传的进度。
  • 代码示例 本示例用于对examplebucket桶中的objectname对象做多段上传初始化,并获取uploadId。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 import com.obs.services.ObsClient; import com.obs.services.exception.ObsException; import com.obs.services.model.InitiateMultipartUploadRequest; import com.obs.services.model.InitiateMultipartUploadResult; import com.obs.services.model.ObjectMetadata; public class InitiateMultipartUpload001 { public static void main(String[] args) { // 您可以通过环境变量获取访问密钥AK/SK,也可以使用其他外部引入方式传入。如果使用硬编码可能会存在泄露风险。 // 您可以登录访问管理控制台获取访问密钥AK/SK String ak = System.getenv("ACCESS_KEY_ID"); String sk = System.getenv("SECRET_ACCESS_KEY_ID"); // 【可选】如果使用临时AK/SK和SecurityToken访问OBS,同样建议您尽量避免使用硬编码,以降低信息泄露风险。 // 您可以通过环境变量获取访问密钥AK/SK/SecurityToken,也可以使用其他外部引入方式传入。 // String securityToken = System.getenv("SECURITY_TOKEN"); // endpoint填写桶所在的endpoint, 此处以华北-北京四为例,其他地区请按实际情况填写。 String endPoint = "https://obs.cn-north-4.myhuaweicloud.com"; // 您可以通过环境变量获取endPoint,也可以使用其他外部引入方式传入。 //String endPoint = System.getenv("ENDPOINT"); // 创建ObsClient实例 // 使用永久AK/SK初始化客户端 ObsClient obsClient = new ObsClient(ak, sk,endPoint); // 使用临时AK/SK和SecurityToken初始化客户端 // ObsClient obsClient = new ObsClient(ak, sk, securityToken, endPoint); try { InitiateMultipartUploadRequest request = new InitiateMultipartUploadRequest("examplebucket", "objectname"); ObjectMetadata metadata = new ObjectMetadata(); metadata.addUserMetadata("property", "property-value"); metadata.setContentType("text/plain"); request.setMetadata(metadata); InitiateMultipartUploadResult result = obsClient.initiateMultipartUpload(request); String uploadId = result.getUploadId(); System.out.println("initiateMultipartUpload successfully"); System.out.println("uploadId:" + uploadId); } catch (ObsException e) { System.out.println("initiateMultipartUpload failed"); // 请求失败,打印http状态码 System.out.println("HTTP Code:" + e.getResponseCode()); // 请求失败,打印服务端错误码 System.out.println("Error Code:" + e.getErrorCode()); // 请求失败,打印详细错误信息 System.out.println("Error Message:" + e.getErrorMessage()); // 请求失败,打印请求id System.out.println("Request ID:" + e.getErrorRequestId()); System.out.println("Host ID:" + e.getErrorHostId()); e.printStackTrace(); } catch (Exception e) { System.out.println("initiateMultipartUpload failed"); // 其他异常信息打印 e.printStackTrace(); } } }
  • 接口约束 您必须是桶拥有者或拥有初始化分段上传任务的权限,才能初始化分段上传任务。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的region以及region与endPoint的对应关系,详细信息请参见地区与终端节点。 初始化上传段任务并上传一个或多个段之后,您必须合并段或取消多段上传任务,否则碎片会占用您的存储空间并产生一定的存储费用。
  • 自定义 域名 访问介绍与配置 当以自定义域名访问OBS桶时,需要先将该自定义域名同对应OBS桶访问域名进行绑定自定义域名绑定简介,自定义域名绑定配置。 当在自定义域名上配置了 CDN加速 服务,即自定义域名为CDN服务的加速域名时,需要额外对CDN服务进行配置,以保证可以正常使用自定义域名访问OBS服务。 以华为云CDN服务为例,相关配置如下所示: 登录华为云CDN服务,从CDN服务左侧列表中选择域名管理项,在该项中可以查看到所有配置的CDN服务域名信息。 配置源站。单击要使用的自定义域名项,进入域名配置界面,编辑源站配置,选择主源站类型为源站域名类型,对应源站为要访问的OBS桶域名。 配置回源HOST。回源HOST必须指定为加速域名即访问OBS服务时访问的自定义域名,否则可能会出现回源鉴权失败的问题。
  • 添加通知配置 登录MAS控制台,在“多活管理”页面单击实例(实例所属命名空间类型为同城多活),进入实例控制台。 在页面顶端导航栏选择“全局配置”。 单击“机房监控通知配置”页面左上角的“添加通知配置”。 在弹窗中配置信息,完成后单击“确定”。 图1 新增消息服务主题 表1 通知配置 参数 配置说明 通知主题 选择通知主题,若通知主题列表为空,单击新增,添加主题后进行下一步操作。 是否通知 设置是否通知。 消息通知 服务主题创建操作请参考消息通知服务快速入门。
  • 创建API监控 登录MAS控制台,在“多活管理”页面单击实例(实例所属命名空间类型为同城多活),进入实例控制台。 在页面顶端导航栏选择“监控列表”,单击页面左上角的“新增监控”。 在新增监控页面配置监控基础配置,完成后单击“下一步:数据中心配置”。 图1 新增API监控-基础配置 表2 基础配置信息 参数 配置说明 监控 选择需要新增的监控类型,此处请选择“API监控”。 应用名称 选择“应用列表”中创建的应用。 监控器名称 自定义监控器名称。 异常通知设置 默认为“关”。 若设置为“开”: 当监控器或被监控的API异常时会及时给用户发送异常通知或告警通知。支持华为 云消息 通知服务,请先配置密钥。 默认将开启 云监控 ,请前往云监控确认是否已创建MAS事件监控告警规则,如已创建请忽略。 通知主题 若异常通知设置选择“开”,则需要在通知主题列表选择主题,如无主题列表,单击新增,新增通知主题之后进行后续操作。 是否监控 默认选“是”,若选择“否”则不会再监控APIG的状态。 填写数据中心配置,完成后单击“下一步:高级配置”。 图2 新增API监控-数据中心配置 表3 数据中心配置信息 参数 配置说明 云选择 选择被监控的APIG部署的环境。 局点 被监控的APIG所在区域。 连接地址 协议选择http或https,地址填写APIG的连接地址。 请求路径 APIGAPIG的健康检查路径信息。 请求方法 可选择GET、POST、DELETE、PUT、PATCH方法。 响应码 根据监控的APIG的接口实际需求配置,例如200。 请求头 根据监控的APIG的接口实际需求配置请求头。 请求头若涉及敏感信息,请用户自行加密再填入。 填写高级配置,完成后单击“下一步:确认配置”。 图3 新增API监控-高级配置 表4 高级配置信息 参数 配置说明 重试时间间隔 尝试重连时间间隔,以毫秒为单位,默认值5000ms。 输入值必须在1到300000之间,建议使用默认值。 正常阈值 配置连接API次数的正常阈值,当连续连接次数达到或超过正常阈值,认为API连接正常。 说明: 输入值必须在1到5之间,默认为2,建议使用默认值。 输入值必须在1到5之间,默认为1,建议使用默认值。 异常阈值 配置连接API次数的异常阈值,当连续连接失败次数达到或超过异常阈值,认为API连接异常。 说明: 输入值必须在3到10之间,默认为3,建议使用默认值。 确认配置无误后单击“立即创建”,完成创建API监控。 API监控器创建完成后,数据中心的正常监控状态标识为绿色。如果是其他异常状态,可能是监控器信息配置错误或者是监控的API本身存在异常,请进行故障排除。
  • 查看空间信息 命名空间信息页面,展示包括命名空间类型、多活管理中心、功能点、主备多活分区及其可用区、数据源和数据同步链路等信息。 登录MAS控制台,在“空间管理”页面,单击命名空间的“操作”,再单击“详情”。 直接单击命名空间也可进入命名空间信息页面。 查看命名空间相关信息。 图2 命名空间信息 单击“添加数据源”,可以在此命名空间下添加数据源。 单击“创建同步链路”,可以在此命名空间下创建同步链路。
  • 约束与限制 “API监控”不支持监控切换。 业务数据库故障,触发监控器自动切换时,切换操作有10s的耗时,在这期间业务会存在中断的可能。 数据中心1异常自动触发切换后,若数据中心1恢复正常,此时监控器无法自动回切数据中心1,需要手动单击监控所在行的“回切”按钮从数据中心2切换回数据中心1; 当活跃为数据中心1,并数据中心1异常时,数据中心1支持自动切换数据中心2;当活跃为数据中心2,并数据中心2异常时,数据中心2不支持自动切换到数据中心1。
  • 切换监控 登录MAS控制台,在“多活管理”页面单击实例(实例所属命名空间类型为同城多活),进入实例控制台。 在页面顶端导航栏选择“应用列表”,单击“监控器切换”,在弹窗监控状态页,单击“一键切换”。 在弹窗中单击“确定”。 当检测到对端数据中心状态异常时,直接切换会提示切换失败。如果用户需要强制切换数据中心,需要勾选强制切换复选框,再单击“确定”进行切换。 强制切换可能会导致数据丢失。 图1 强制切换监控器
  • 添加数据源 登录MAS控制台,进入“数据源”页面。 在左上角命名空间下拉框选择所需命名空间。 单击右上角的“添加数据源”。 在“添加数据源”页面,填写配置信息,然后单击“确定”。 图1 添加数据源 表1 数据源配置参数 参数 配置说明 所属分区 选择数据源所属的主备分区。 数据源类型 选择数据源类型,目前支持MySQL、PostgreSQL、OpenGauss、Redis。如无法选择某个数据源,请编辑命名空间开通更多功能点。 数据源名称 默认自动生成,或者根据规划自定义填写。 描述 填写数据源的描述信息。 链接模式 选择链接模式。 数据库连接地址 链接模式选择“自定义”时可见,填写数据库连接地址和端口号。 数据库名称 链接模式选择“自定义”时可见,填写接入的数据库名称。 凭证 链接模式选择其它模式时可见,默认显示当前命名空间多活分区下已配置的默认凭证。 项目 链接模式选择其它模式时可见,默认显示当前命名空间多活分区下已配置的默认项目。 实例列表 链接模式选择其它模式时可见,选择已有的数据库实例。 用户名 填写数据库用户名。 密码 填写数据库用户密码。 确认密码 再次填写数据库用户密码。
  • 准备依赖资源 在创建多活实例前您需要提前准备相关依赖资源,包括VPC、子网和安全组。每个多活实例都部署在某个虚拟私有云(VPC)中,并绑定具体的子网和安全组,通过这样的方式为MAS提供一个隔离的、用户自主配置和管理的虚拟网络环境以及安全保护策略。 创建VPC和子网的操作指导请参考创建虚拟私有云和子网,若需要在已有VPC上创建和使用新的子网,请参考为虚拟私有云创建新的子网。 创建安全组的操作指导请参考创建安全组,为安全组添加规则的操作指导请参考添加安全组规则。
  • 数据中心级自动切换配置 登录MAS控制台,在“多活管理”页面单击实例(实例所属命名空间类型为同城多活),进入实例控制台。 在页面顶端导航栏选择“全局配置”。 进入“数据中心级自动切换”页面,单击“是否自动切换”开关。 “是否自动切换”配置为“关”,当MAS发生脑裂或主机房故障时,如果应用数据源正常,此时这个MAS实例下的所有监控器不会切换数据中心。通过此配置,可避免因MAS故障而导致数据中心发生不必要的切换。 “是否自动切换”配置为“开”,当MAS发生脑裂或主机房故障,或者数据源故障时,此时这个MAS实例下的监控器会根据故障切换对应的数据中心。 脑裂是指高可用集群因网络等原因导致的集群分裂出现超过一个主“大脑”的情况,当集群发生脑裂时集群之间的数据可能会出现不一致的问题,从而影响监控结果的仲裁。 当MAS发生脑裂或主机房故障,此时这个MAS实例下的所有监控器都会切换数据中心;当数据源故障时,此时这个MAS实例下的对应监控器会切换数据中心。 当创建监控器时的基础配置参数“是否自动切换”默认配置为“是”时,监控器会自动切换数据中心。 单击“确定”,完成变更自动切换配置。
  • 操作步骤 进入购买MAS实例页面。 在购买多活管理中心页面,填写实例配置信息,系统会根据您选择的“商品类型”自动计算费用,然后单击“立即创建”。 图1 购买多活管理中心 表1 多活实例配置参数 参数 配置说明 命名空间 选择命名空间。 说明: 多活实例支持如下条件的命名空间: 同城多活:主备多活分区均为当前控制台所选区域。如需创建用于同城多活的多活实例,请选择满足此条件的命名空间。 异地容灾:备多活分区为当前控制台所选区域。如需创建用于执行工作流的多活实例,请选择满足此条件的命名空间。 分区设置 选择多活分区的可用区,可用区由命名空间配置决定。 仲裁节点 命名空间选择“同城多活”类型时可见,选择ETCD仲裁节点所属可用区,可用区选择请与业务部署架构保持一致。 计费模式 选择计费模式。 按需计费:按需计费是后付费模式,按多活实例的实际使用时长计费,可以随时开通/删除多活实例。 包年包月:包年包月是预付费模式,按订单的购买周期计费,价格比按需计费模式更优惠。 商品类型 多活实例类型,目前支持铂金版。 开启双向认证 命名空间选择“同城多活”类型时可见,ETCD双向认证,默认开启。 注意: 关闭双向认证有风险,请谨慎操作。 多活管理中心名称 填写多活管理中心名称,根据规划自定义。 描述 填写多活管理中心的描述信息。 企业项目 请选择企业项目。 网络 选择实例所关联的VPC和子网,VPC和子网须提前创建。 IPv4网段 该VPC网段为实例机器网段,请保证与您的VPC网段及其他对等连接网段不冲突。建议使用网段:10.0.0.0/24;172.16.0.0/24;192.168.0.0/24。 安全组 选择多活管理中心的安全组,可通过安全组的入方向规则控制可以接入多活管理的应用IP范围,可通过安全组出方向规则控制多活管理中心可监控的中间件的网络范围;安全组至少需要对子网网段(跨Region需要对主备分区的子网网段)放通2379、2380、8011、8099端口,以确保多活管理中心自身运行正常。 etcd密码 命名空间选择“同城多活”类型时可见,创建etcd密码。 说明: ETCD是MAS多活管理中心的组件之一,用户通过SDK连接该组件实现对接MAS监控器。 确认密码 命名空间选择“同城多活”类型时可见,再次确认etcd密码,两次密码输入保持一致。 购买时长 “计费模式”选择“包年包月”时可见,选择购买多活管理中心的时长。 自动续费 “计费模式”选择“包年包月”时可见,勾选后开通自动续费。 如需续费,请在管理控制台续费管理页面进行续费操作。续费相关操作请参考续费管理。 若“计费模式”选择“按需计费”,当单击“立即创建”之后,会直接开始创建实例; 若“计费模式”选择“包年包月”,需要先支付订单费用,才会开始创建实例。 实例创建时间需要5-15分钟,请耐心等待。实例创建成功后,在控制台的“多活管理”页面可看到该实例的状态为“运行中”。 如果创建实例失败,可删除创建失败的实例,然后重新创建实例。如果重新创建仍然失败,请联系技术支持。
  • 添加密钥 登录MAS控制台,在“多活管理”页面单击实例(实例所属命名空间类型为同城多活),进入实例控制台。 在页面顶端导航栏选择“全局配置”。 单击“密钥配置”页面左上角的“添加密钥”。 在弹窗中配置信息,单击“确定”。 图1 密钥配置 表1 密钥配置 参数 配置说明 云选择 选择消息服务所在的环境。 AK Access Key ID(访问密钥ID)。 SK Secret Access Key(秘密访问密钥)。 华为云访问密钥获取方法请参考访问密钥。
  • 开通功能模块 进入开通功能模块页面。 在“开通功能模块”页面,单击勾选所需多活版本和功能点,单击右下角的“确定”。 图1 开通功能模块 表1 功能模块配置参数 参数 配置说明 版本 选择多活版本,可选择“同城多活”或“异地多活”。 功能点 选择如下所需功能点: MySQL Oracle PostgreSQL Redis MongoDB Elasticsearch OpenGauss API监控 收费模式 开通功能模块的收费模式,默认“按需计费”。具体计费说明,请参考价格详情。
  • CodeArts Governance最佳实践汇总 本文汇总了基于开源治理服务(CodeArts Governance)常见应用场景的操作实践,为每个实践提供详细的方案描述和操作指导,帮助用户了解CodeArts Governance的使用方法。 表1 CodeArts Governance最佳实践一览表 最佳实践 说明 使用CodeArts Governance进行二进制成分分析 本实践为您介绍如何使用CodeArts Governance进行二进制成分分析。 通过流水线自动完成CodeArts制品产物二进制成分分析 本实践为您介绍通过流水线自动完成CodeArts制品产物二进制成分分析。
  • 查看空间详情 空间发起人登录 TICS 控制台。 进入TI CS 控制台后,单击页面左侧“空间管理”,进入空间管理页面。 在“空间管理”页打开“我参与的空间”页签,单击“空间名称”进入详情页。 查看空间统计信息 在详情页下方单击“空间概览”页签查看空间统计信息,该统计信息不是实时的,当前只显示统计到前一天的数据。 图1 空间统计信息 查看空间的合作方列表 在详情页下方单击“合作方管理”页签查看空间的合作方列表。 图2 合作方列表 查看空间的合作方数据 在详情页下方单击“合作方数据”页签查看注册到空间的合作方数据列表。 图3 合作方数据 查看 可信计算 环境 在详情页下方单击“可信计算环境”页签查看注册到空间的可信节点列表。 图4 可信计算环境
  • 查看空间操作记录 TICS提供透明的空间操作记录。空间的创建、部署、删除、升级回滚操作都会被详细记录。 在详情中,操作进程以可视化的方式展示,清晰展示空间的部署、升级、回滚、删除步骤,在出现问题时便于分析排查。 用户登录TICS控制台。 进入TICS控制台后,单击页面左侧“空间管理”,进入空间管理页面。 单击页面右上角的“操作记录”按钮,查看操作记录。 图9 入口 单击“查看详情”,可查看空间操作的具体信息。 图10 查看详情 操作详情以可视化的形式展示,使操作进程更直观、更清晰。 图11 可视化页面
  • 使用限制 单账号跟踪的事件可以通过 云审计 控制台查询。多账号的事件只能在账号自己的事件列表页面去查看,或者到组织追踪器配置的OBS桶中查看,也可以到组织追踪器配置的 CTS /system日志流下面去查看。 用户通过云审计控制台只能查询最近7天的操作记录。如果需要查询超过7天的操作记录,您必须配置转储到对象存储服务(OBS)或 云日志 服务(LTS),才可在OBS桶或LTS日志组里面查看历史事件信息。否则,您将无法追溯7天以前的操作记录。 云上操作后,1分钟内可以通过云审计控制台查询管理类事件操作记录,5分钟后才可通过云审计控制台查询数据类事件操作记录。 CTS新版事件列表不显示数据类审计事件,您需要在旧版事件列表查看数据类审计事件。 云审计控制台对用户的操作事件日志保留7天,过期自动删除,不支持人工删除。
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全