云服务器内容精选

  • 邮件协议 优先排查垃圾邮件,查看您的邮件是否被处理为垃圾邮件。 如果不在垃圾邮件中,请您将下列后缀邮箱地址加入白名单。 @info.huaweicloud.com @mail01.huawei.com @mail01.smn.huaweicloud.com @mail01.huaweicloud-smn.com @mail02.huaweicloud-smn.com 因容灾,流量调整等原因,邮箱发送地址动态变动,无法提供具体邮箱发送地址。
  • 监控指标 消息通知 服务支持的监控指标如表1所示。 表1 消息通知服务支持的监控指标 指标ID 指标名称 指标含义 取值范围 测量对象 监控周期(原始指标) email_total_count 邮件订阅推送量 该指标为主题维度上针对邮件类型的订阅推送的消息总量 单位:条 ≥0 单个主题 5分钟 email_success_rate 邮件订阅推送成功率 该指标为主题维度上针对邮件类型的订阅推送成功的消息比率 单位:百分比 0-100% 单个主题 5分钟 sms_total_count 短信订阅推送量 该指标为主题维度上针对短信类型的订阅尝试推送的消息总量 单位:条 ≥0 单个主题 5分钟 sms_success_rate 短信订阅推送成功率 该指标为主题维度上针对短信类型的订阅推送成功的消息比率 单位:百分比 0-100% 单个主题 5分钟 http_total_count http(s)订阅推送量 该指标为主题维度上针对http和https类型的订阅推送的消息总量 单位:条 ≥0 单个主题 5分钟 http_2xx_count http(s)订阅 推送成功数量 该指标为主题维度上针对http和https类型的订阅推送的消息返回码为2xx的数量 单位:条 ≥0 单个主题 5分钟 http_4xx_count http(s)订阅推送 4xx异常数量 该指标为主题维度上针对http和https类型的订阅推送的消息返回码为4xx的数量 单位:条 ≥0 单个主题 5分钟 http_5xx_count http(s)订阅推送 5xx异常数量 该指标为主题维度上针对http和https类型的订阅推送的消息返回码为5xx的数量 单位:条 ≥0 单个主题 5分钟 http_success_rate http(s)订阅 推送成功率 该指标为主题维度上针对http和https类型的订阅推送成功的消息比率 单位:百分比 0-100% 单个主题 5分钟
  • 发布消息 向已创建的主题发布消息,根据添加的不同订阅,会出现以下场景。 发布消息详细操作步骤请参见发布主题消息简介。 场景一: 消息属性字段为: { "name": "week", "type": "STRING", "value": [ "sunday" ] } 发送结果:在消息中只规定了消息属性字段中的week字段,而没有规定time字段,因此本条消息不会发送给订阅A和订阅B。 场景二: 消息属性字段为: [ { "name": "week", "type": "STRING", "value": [ "sunday" ] }, { "name": "time", "type": "STRING", "value": [ "night" ] } ] 发送结果:此条消息含义为发送给周日晚上接收消息的订阅者,订阅A和订阅B均不符合条件。因此本条消息不会发送给订阅A和订阅B。 场景三: 消息属性字段为: [ { "name": "week", "type": "STRING", "value": [ "monday" ] }, { "name": "time", "type": "STRING", "value": [ "night" ] } ] 发送结果:此条消息含义为发送给周一晚上接收消息的订阅者,订阅A不符合条件。因此本条消息只发送给订阅B。 场景四: 消息属性字段为: [ { "name": "week", "type": "STRING", "value": [ "sunday" ] }, { "name": "time", "type": "STRING", "value": [ "morning" ] } ] 发送结果:此条消息含义为发送给周日早上接收消息的订阅者,订阅A符合条件,订阅B不符合条件。因此本条消息不会发送给订阅B。 场景五: 消息属性字段为: [ { "name": "week", "type": "STRING_ARRAY", "value": [ "sunday", "monday" ] }, { "name": "time", "type": "STRING_ARRAY", "value": [ "morning", "night" ] } ] 发送结果:此条消息含义为发送给周日或周一的早上或晚上接收消息的订阅者,订阅A和订阅B均符合条件。因此本条消息会发送给订阅A和订阅B。 场景六: 订阅筛选策略字段没有配置。 发送结果:带有任何消息属性的消息不会发送给未配置订阅筛选策略的订阅。
  • 添加订阅 在已创建的主题下添加以下两种订阅。添加订阅详细操作步骤请参见订阅主题。 用户在主题下添加订阅终端A,并且希望在每周周日和周三的早上或下午将消息通知给A。则用户可以在创建订阅A时配置如下订阅筛选策略: { "filter_polices": [ { "name": "week", "string_equals": [ "sunday", "wednesday" ] }, { "name": "time", "string_equals": [ "morning", "afternoon" ] } ] } 用户在主题下添加订阅终端B,并且希望在每周周一、周二和周三的晚上或深夜将消息通知给B。则用户在创建订阅B时配置如下订阅筛选策略: { "filter_polices": [ { "name": "week", "string_equals": [ "monday", "tuesday", "wednesday" ] }, { "name": "time", "string_equals": [ "night", "midnight" ] } ] }
  • 使用限制 单账号跟踪的事件可以通过 云审计 控制台查询。多账号的事件只能在账号自己的事件列表页面去查看,或者到组织追踪器配置的OBS桶中查看,也可以到组织追踪器配置的 CTS /system日志流下面去查看。 用户通过云审计控制台只能查询最近7天的操作记录。如果需要查询超过7天的操作记录,您必须配置转储到 对象存储服务 (OBS)或 云日志 服务(LTS),才可在OBS桶或LTS日志组里面查看历史事件信息。否则,您将无法追溯7天以前的操作记录。 云上操作后,1分钟内可以通过云审计控制台查询管理类事件操作记录,5分钟后才可通过云审计控制台查询数据类事件操作记录。
  • SDK列表 表1提供了 SMN 服务支持的SDK列表,您可以在GitHub仓库查看SDK更新历史、获取安装包以及查看指导文档。 表1 SDK列表 编程语言 Github地址 参考文档 Java huaweicloud-sdk-java-v3 Java SDK使用指导 Python huaweicloud-sdk-python-v3 Python SDK使用指导 Go huaweicloud-sdk-go-v3 Go SDK使用指导 .NET huaweicloud-sdk-net-v3 .Net SDK使用指导 NodeJS huaweicloud-sdk-nodejs-v3 NodeJS SDK使用指导 PHP huaweicloud-sdk-php-v3 PHP SDK使用指导
  • 计费项 华为 云消息 通知服务对消息通知费用、外网下行流量计费,具体的计费详情请参见价格详情。 表1 计费项说明 计费项 计费说明 消息通知 SMS :统计每月每个区域每个主题的发送条数,按数量收费。短信条数计算规则请参考《消息&短信服务产品介绍》中“内容长度计算规则”章节。 说明: 全球短信:发送即计费,即SMN侧调用供应商接口成功则计费。 中国大陆短信:短信发送成功才计费。 电子邮件:统计每月每个区域每个主题的发送邮件数,按数量收费。 HTTP(S):统计每月每个区域每个主题的发送请求数量,每月100万次为单位计费。 FunctionGraph:发送到FunctionGraph免费。 发送请求订阅消息也会作为发送条数进行计费。 外网下行流量 仅在您有数据传输到Internet时收取,每月前1GB流量免费,之后按照华为云标准流量费用每GB收取。 所有的用量统计按照自然月计算。
  • 访问消息通知服务的方式 云平台提供了Web化的服务管理平台,即管理控制台和基于HTTPS请求的API(Application programming interface)管理方式。 管理控制台方式 管理控制台提供Web界面,供您管理计算、存储和其他云资源。你可以使用管理控制台方式访问消息通知服务。登录管理控制台,从主页选择“消息通知服务”。 API方式 如果用户需要将云平台上的消息通知服务集成到第三方系统,用于二次开发,请使用API方式访问消息通知服务,具体操作请参见《消息通知服务API参考》。
  • 计费项 华为云消息通知服务对消息通知费用、外网下行流量计费,具体的计费详情请参见价格详情。 表1 计费项说明 计费项 计费说明 消息通知 SMS:统计每月每个区域的发送条数,按数量收费。 电子邮件:统计每月每个区域的发送邮件数,按数量收费。 HTTP(S):统计每月每个区域的发送请求数量,每月100万次为单位计费。 FunctionGraph:发送到FunctionGraph免费。 外网下行流量 仅在您有数据传输到Internet时收取,每月前1GB流量免费,之后按照华为云标准流量费用每GB收取。
  • 产品优势 对比其他传统消息中间件组件,消息通知服务的核心优势如表1所示。 表1 产品优势 核心优势 消息通知服务 传统消息中间件 服务简便 直接使用消息通知服务,只需要使用三个简单的API (创建Topic、订阅Topic、发送消息),就能够快速高效的发送消息,使用门槛极低,快速融入业务使用。 自建消息通知服务成本高,接口使用复杂,学习曲线高,融于业务时间周期长。 稳定可靠 消息在多数据中心冗余,Topic支持透明迁移。消息推送失败,可以设置消息推送到SMN进行持久化。服务单节点故障,请求会自动迁移到可用节点。 关键业务使用对消息通知服务的稳定性和可靠性要求很高,需要解决消息不丢问题,并能提供多种措施保障业务的连续性。 多协议通知 使用消息通知服务,只需要通过一次发布请求,就能向各种协议的订阅者推送消息。 业务需要发送电子邮件、短信、FunctionGraph(函数)或者进行HTTP(S)推送,开发多种协议的消息收发系统,周期长。 安全 消息通知服务数据安全是基于Topic进行安全隔离,用户未经授权不能访问队列消息,有效保护用户业务安全。 业务数据访问需要有安全保护措施,没有认证授权的系统随意获取消息会导致严重的数据安全和隐私风险。
  • 应用场景 系统告警 系统告警是由预定义阈值触发的通知,通过邮件、短信、FunctionGraph(函数)、HTTP和HTTPS等多种通知方式发送给特定用户。举例来说,很多云服务都使用SMN,从而可使您在事件发生(如云审计服务检测到云服务资源发生关键操作)时能立即接收到通知。 与云服务的集成 将SMN作为消息连接不同的云服务,可降低系统复杂度,提升服务使用效率。例如将消息从云服务(如 CES )通知到其他服务(如OBS),实现服务解耦。即便一个服务出现故障,也不会影响到其他服务。 错峰流控 上下游系统处理能力有差异时,可以使用SMN转储系统间的通信数据,提供消息堆积缓冲能力,减少下游系统的压力,可减少系统崩溃等问题,提高系统可用性,降低系统实现的复杂性。
  • 责任共担 华为云秉承“将公司对网络和业务安全性保障的责任置于公司的商业利益之上”。针对层出不穷的 云安全 挑战和无孔不入的云安全威胁与攻击,华为云在遵从法律法规业界标准的基础上,以安全生态圈为护城河,依托华为独有的软硬件优势,构建面向不同区域和行业的完善云服务安全保障体系。 安全性是华为云与您的共同责任,如图1所示。 华为云:负责云服务自身的安全,提供安全的云。华为云的安全责任在于保障其所提供的IaaS、PaaS和SaaS类云服务自身的安全,涵盖华为云数据中心的物理环境设施和运行其上的基础服务、平台服务、应用服务等。这不仅包括华为云基础设施和各项云服务技术的安全功能和性能本身,也包括运维运营安全,以及更广义的安全合规遵从。 租户:负责云服务内部的安全,安全地使用云。华为云租户的安全责任在于对使用的IaaS、PaaS和SaaS类云服务内部的安全以及对租户定制配置进行安全有效的管理,包括但不限于虚拟网络、 虚拟主机 和访客虚拟机的操作系统,虚拟防火墙、API网关和高级安全服务,各项云服务,租户数据,以及身份账号和密钥管理等方面的安全配置。 《华为云安全白皮书》详细介绍华为云安全性的构建思路与措施,包括云安全战略、责任共担模型、合规与隐私、安全组织与人员、基础设施安全、租户服务与租户安全、工程安全、运维运营安全、生态安全。 图1 华为云安全责任共担模型 父主题: 安全
  • SMN权限 默认情况下,账号管理员创建的 IAM 用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得对应的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。 SMN部署时通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域(如华北-北京四)对应的项目(cn-north-4)中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问SMN时,需要先切换至授权区域。 权限根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。例如:针对SMN服务,管理员能够控制IAM用户仅能对某一类资源进行指定的管理操作。多数细粒度策略以API接口为粒度进行权限拆分,权限的最小粒度为API授权项(action),SMN支持的API授权项请参见《消息通知服务接口参考》中“策略及授权项说明”章节。 如表1所示,包括了SMN的所有系统权限。 表1 SMN系统权限 系统角色/策略名称 描述 类别 依赖关系 SMN Administrator 消息通知服务的管理员权限,拥有该权限的用户拥有消息通知服务所有执行权限。 系统角色 依赖Tenant Guest角色,需要在同项目中勾选依赖的角色。 SMN FullAccess 消息通知服务管理员权限,拥有该权限的用户可以操作并使用所有消息通知服务资源。 系统策略 无 SMN ReadOnlyAccess 消息通知服务的只读权限。 拥有该权限的用户仅能查看消息通知服务数据。 系统策略 无 表2列出了SMN常用操作与系统权限的授权关系,您可以参照该表选择合适的系统权限。 表2 常用操作与系统权限的关系 操作 IAM细粒度项 SMN Administrator SMN FullAccess SMN ReadOnlyAccess 创建主题 smn:topic:create √ √ × 更新主题 smn:topic:update √ √ × 删除主题 smn:topic:delete √ √ × 查询主题列表 smn:topic:list √ √ √ 订阅主题 smn:topic:update √ √ × 设置主题策略 smn:topic:update √ √ × 发布主题消息 smn:topic:publish √ √ × 添加订阅 smn:topic:update √ √ × 请求订阅 smn:topic:update √ √ × 删除订阅 smn:topic:update √ √ × 查询订阅者列表 smn:topic:list √ √ √ 创建消息模板 smn:template:create √ √ × 更新消息模板 smn:template:update √ √ × 删除消息模板 smn:template:delete √ √ × 查询消息模板 smn:template:list √ √ √ 添加标签 smn:tag:create √ √ × 更新标签 smn:tag:update √ √ × 删除标签 smn:tag:delete √ √ × 查询标签 smn:tag:list √ √ √
  • 约束与限制 当您通过消息通知服务SMN发送邮件、短信等消息时,您需要确保传输的内容符合当地法律法规要求。 SMN使用异步方式推送消息,不保证消息送达的时效性。如果业务要求消息准实时送达,请慎重考虑是否使用SMN服务。 SMN服务发送消息的邮箱地址和发送短信/语音的号码地址不固定,有切换的可能。请勿将邮箱地址和发送短信/语音的号码地址作白名单限制,否则可能导致无法接收到SMN消息。 SMN对外发送消息的源IP地址不固定,且有随时更换的可能。请勿将消息源IP地址作白名单限制,否则可能导致无法接收到SMN消息。 基于网络安全考虑,SMN默认不支持使用华为云内网地址接收消息。 消息通知服务SMN对某些具体指标进行了约束和规范,您在使用时注意不要超过相应的限制值,以免程序出现异常。 针对主题的限制项和限制值请参见表1。 表1 主题限制项及限制值 限制项 限制值 说明 主题名称 1-255字符 超过该限制,主题无法创建。 显示名 192字节或64个中文字 超过该限制,主题无法创建。 创建标签数 20个 超过该限制,主题无法创建。 标签的键长度 128字符 超过该限制,标签无法创建。 标签的值长度 256字符 超过该限制,标签无法创建。 发布文本消息标题 512字节 无 发布文本消息内容 256KB 如果消息超过1000个字符,系统向短信订阅者发送消息时,因运营商限制可能会发送失败。 发布json消息内容 256KB 无 发布模板消息内容 256KB 无 针对订阅的限制项和限制值请参见表2。 表2 订阅的限制项及限制值 限制项 限制值 说明 订阅终端数 10000个 无 订阅确认链接失效时间 48小时 订阅确认的链接在48小时内有效,用户需要及时在手机端、邮箱或其他协议终端确认订阅。
  • HTTP(S)取消订阅消息的格式 HTTP(S)订阅终端取消订阅确认后,终端将收到SMN推送的取消订阅确认消息,下面将描述HTTP Content信息,它是JSON串,具体字段说明如表4所示。 表4 HTTP(S)取消订阅消息的格式参数说明 参数 说明 type 消息类型,UnsubscribeConfirmation。 signature 签名信息。 签名字段包括message,message_id,subscribe_url、timestamp,topic_urn和type,具体签名信息校验,请参见校验消息签名。 topic_urn 主题的唯一标识,表示消息归属的主题。 message_id 消息唯一标识。 signature_version 签名的版本信息,目前是V1。 message 取消订阅确认消息的描述。 subscribe_url 再次订阅确认需要访问的URL。 signing_cert_url 用于消息签名的证书URL。 timestamp 消息第一次发送的时间戳。 HTTP(S)取消订阅消息样例如下: { "signature": "ViE96uGbBkl+S8eWqgebi5KdmRht2U8+Rs88yuyMHq1k4h3jUkcDZ6HCqTqdpJ8nrLcdqETyyEiOQyTszJdU05z+LhfE8jerCCdSbL4zeInVkydHh0kcCRWmORye0/EuQ/gLC1UIXwvUsqbUCPnBRhNFXOeXMOPPCzK+d04xjy4QHd1H/bHxgsY3AlTe0gCFT068Zru7OK6w9aQaY44mXnN3OWGmBmoHyFab5TRXLSQNz/9u/Vj646cQMMaI0PPQ30QzGYD0MtzgDZi12m8jMTHAnMkTEcbLaEgaqmaoEnATSpEcspFKNXv2skwk7rsVakMOISpMH3+qC6RzhE******", "topic_urn": "urn:smn:region01:0a419ac94f80f2c62f14c01e34******:test_******", "message_id": "d86c201092574e71a3ca85826652c58b", "signature_version": "v1", "type": "UnsubscribeConfirmation", "message": "You are unsubscribed from topic: urn:smn:region01:0a419ac94f80f2c62f14c01e34******:test_******. To subscribe to this topic again, please visit the subscribe_url included in this message. The subscribe_url is valid only within 48 hours.", "subscribe_url": "https://console.******.com/smn/subscription/confirm?token=0a419ac94f80f2c62f14c01e34ae5dfcf6b0b92ef46241218eaae5b4cb90d5d423cf104593284665a1f98691b1576976785114fb4408450e8de153b9f1******&topic_urn=urn:smn:region01:0a419ac94f80f2c62f14c01e34******:test_******®ion=region01®ion_id=region01", "signing_cert_url": "https://smn.region01.******.com/smn/SMN_region01_3190c26a56fb435f9882e3435b******.pem", "timestamp": "2024-07-10T11:45:00Z" }