检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
韧性支柱 韧性支柱简介 基本概念 设计原则 问题和检查项 高可用设计 故障全面检测 故障快速恢复 过载控制 变更防差错 参考架构 云服务可靠性介绍
客户责任:客户可以从华为云选择合适的产品并进行可靠性配置以符合应用韧性目标,并参考本白皮书中的设计原则与最佳实践,充分考虑各种异常场景的检测和恢复能力,来构建高可用应用系统。 父主题: 基本概念
备份 应用数据被破坏的情况下的恢复能力 容灾 在Region/AZ/IDC或其他云站点发生灾难的情况下的恢复能力 监控告警 应用系统故障后的检测和告警能力 弹性扩缩容 应用容量不足时的自动恢复能力 变更防差错 变更对应用业务中断的影响 应急恢复处理 应用在故障情况下的应急恢复能力 父主题:
在后端节点故障的情况下,需要自动将业务分发给其他健康节点处理,以避免业务失败。 相关云服务和工具 弹性负载均衡 ELB:支持业务负载均衡处理,还支持后端服务器健康状态检测,自动隔离异常状态的ECS。 父主题: RES13 过载保护
负载均衡健康检查”方式来做健康检查。如果将多个负载均衡器添加到伸缩组,则只有在所有负载均衡器均检测到云服务器状态为正常的情况下,才会认为该弹性云服务器正常。否则只要有一个负载均衡器检测到云服务器状态异常,伸缩组会将该弹性云服务器移出伸缩组。 以上两种健康检查方式,检查的结果均是将
负载状态及资源故障切换等的监控,在负载超过阈值或状态异常时告警。 弹性扩缩容 支持自动弹性伸缩;针对ECS,通过ELB实现ECS实例的故障检测与负载均衡,并可通过AS监控负载随时添加和移除ECS实例来扩展应用系统的服务能力;针对RDS for MySQL,可根据负载监控情况,自动扩缩规格或增删只读节点。
非资源必须接收来自公网的网络流量,否则不要将资源放置在VPC的公有子网中。 对于入站和出站流量,应采用深度防御方法。例如对入站流量进行入侵检测、防范恶意的网络攻击。对出站的流量使用NAT网关配置仅出站的单向连接。 流量过滤。使用防火墙、ACL控制内部和外部网络之间的访问流量以及内
有请求都不能处理的情况。 RES13-01 采用自动弹性扩缩容 RES13-02 应用系统负载均衡,避免流量不均匀 RES13-03 过载检测与流量控制 RES13-04 支持主动扩容 RES13-05 资源自动扩容考虑了配额限制 RES13-06 压力负载测试 父主题: 过载控制
使用基于日志调用链框架:这些框架具备日志生成、日志格式化、日志上下文关联分析登能力。 通过框架引入到代码库中,可以在运行时采集相关的性能数据。 自定义检测:仅当平台指标不足时,才建议开发人员可以添加自定义代码采集独有的性能指标。 使用业界可观测的标准。请考虑使用围绕业界标准构建的工具,例如OpenTelemetry。
状态显示正常,但Pod中的应用程序异常的情况。 Kubernetes提供了三种健康检查的探针: 存活探针:livenessProbe,用于检测容器是否正常,类似于执行ps命令检查进程是否存在。如果容器的存活检查失败,集群会对该容器执行重启操作;若容器的存活检查成功则不执行任何操作。
优先使用临时凭证并定期轮换凭证:定期更改账号的密码,并定期更新MFA设备。这有助于减少被猜测或盗用的风险。 启用审计日志:启用审计日志功能,以监控账号的活动。审计日志可以帮助检测异常行为并及时采取措施。 多账号管理场景:需指定一个账号作为中央账号(企业主账号),由这个账号再添加成员账号(企业子账号)。优先保证中央账号的安全,再考虑成员账号。
据(状态)外置,以实现业务节点(含资源)无状态,按需快速增加或减少,从而实现系统业务处理能力的伸缩。 当节点故障或资源不足时,系统需要自动检测和扩展节点,以实现自动横向扩缩容,自动增加资源容量,解决业务处理能力不足的问题,无需人工干预。 华为云提供AS弹性伸缩服务,可以根据伸缩组
将弹性云服务器迁移至正常的物理机,保障业务受到的影响最小,该过程会导致云服务器重启。详见“物理机故障时,弹性云服务器是否会自动恢复”。 当检测到弹性云服务所在的硬件出现亚健康时,系统会自动化将弹性云服务器热迁移到其他物理服务器上继续运行,迁移过程中会导致业务处理性能下降,业务中断时间小于1s。
流量负载均衡,在单个AZ故障时自动将业务流量切换到另一AZ。 应用层(负载均衡器、应用软件及容器):对于无状态应用,通过负载均衡器进行故障检测与负载均衡,并可通过容器进行弹性伸缩。 中间件层:每个可用区各部署一套DCS、DMS Kafka集群。 数据层:每个可用区各部署一套RDS
靠性、时间合理性、流程合规性。 风险评估:基于场景规则、流程规则、业务规则对变更进行管控,提前识别和拦截变更风险;通过变更日历实现变更冲突检测,降低服务间变更依赖导致的变更风险。 实施保障:按预定方案执行变更,变更步骤标准化、可观测,变更异常及时介入处理,实现变更实施全过程可控、可视、可管。
9%,则关键依赖组件SLO目标要求达到99.99%。 应用系统SLO分解:综合系统SLO、故障频次、云服务SLA,分解得出应用组件的中断时长要求,进一步分解得出故障检测、人工介入、干预恢复的时长要求。 针对应用系统内薄弱环节进行增强: 当云服务SLA无法满足要求时,需要应用层进行额外的保护和增强。 通过冗
到华为云;API网关支持流量纠正,以便将业务路由到正确单元。 应用层(负载均衡器、应用软件及容器):对于无状态应用,通过负载均衡器进行故障检测与负载均衡,并可通过容器进行弹性伸缩。 中间件层:Redis、Kafka集群跨可用区高可用部署。 数据层:MySQL数据库跨可用区高可用,
IDC/其他云故障时手工将业务流量切换到华为云。 应用层(负载均衡器、应用软件及虚拟机或物理主机):对于无状态应用,通过负载均衡器进行故障检测与负载均衡,在华为云上可通过AS弹性伸缩服务监控负载进行弹性伸缩;对于有状态应用,通过SDRS服务实现跨云的虚拟机数据复制与容灾切换,并可通过CBR服务进行自动数据备份。
状态进行监控,在资源过载时需要告警。 弹性扩缩容 针对内部用户场景,资源足够,无需自动弹性伸缩;针对ECS,通过ELB实现ECS实例的故障检测与负载均衡,并可根据ECS监控情况随时添加和移除ECS实例来扩展应用系统的服务能力;针对RDS,可根据RDS负载监控情况,在维护时段更改实例类型或增加只读节点。
典型业务的调优 优化代码逻辑:在进行Spark参数调优之前,要进行相应的规划设计,优化代码逻辑。 Spark任务跑的比较慢,cpu利用率低:检测室executor线程不能全部吃满,此时应减少每个executor的core数量,增加executor个数,同事增加partition个数。