【云顾问-混沌演练】欢乐互娱:新游上线混沌演练实践

2024-03-13 17:01:01 浏览数 (2)

一、 引言

欢乐互娱(上海)科技股份有限公司(以下简称“欢乐互娱”),是一家全球游戏研发和发行公司,聚焦于MMORPG和MMOACT两大品类,成功出品了众多知名游戏如《街机三国》、《龙之谷》和《英雄杀》等。2023年4月,欢乐互娱重磅新游大作《RO仙境传说》计划在东南亚发行,该项目开服规模大、影响用户范围广,做好游戏上线前的容灾准备以保障上线后的稳定性至关重要。

欢乐互娱使用腾讯云提供的IAAS和PAAS层的云架构和服务。为确保新游顺利上线,欢乐互娱与腾讯云混沌演练平台展开紧密合作,共同针对三大核心业务场景的可用性进行了大规模容灾演练,最终保障了新游的顺利发行上线。

二、 新游上线的稳定性挑战

随着云计算技术以及全球游戏市场的快速发展,游戏业务逻辑及分布式架构的复杂程度不断增长,游戏系统运行过程中如今面临着更复杂的故障场景考验,如服务器宕机、数据库故障、网络延迟等。这些故障可能会导致游戏中断、数据丢失或者性能下降,进而严重影响用户体验,造成巨大的经济损失。具体而言,游戏行业可用性通常面临以下可用性挑战:

挑战1:面临高并发压力

游戏行业的资源需求具有高度波动性,尤其是在新游戏开服、游戏活动、突发事件等场景下,大量在线玩家同时访问,用户量在短时间内激增,往往会给服务器、网络和数据库资源带来巨大的高并发压力。在这种情况下,系统需要具备良好的弹性伸缩能力,实时调整资源分配,满足游戏的可用性需求。

挑战2:网络稳定性要求高

由于游戏用户对实时交互体验的要求较高,延迟、丢包等网络问题将会严重影响游戏体验。在云上部署游戏时,如何保证网络稳定性,确保玩家在不同的硬件和网络条件下都能获得较低延迟的连接,是游戏行业面临的重要挑战。

挑战3:复杂的容灾场景

游戏行业对于高可用性和业务连续性的要求较高,云服务需要拥有强大的容灾能力,确保在发生故障时能够迅速恢复。因此,游戏服务需要建立单点故障切换恢复机制、完善的业务监控告警体系和故障应急SOP等,确保游戏业务运行的稳定性。

为了给玩家提供稳定性高、体验优质的游戏产品,企业对云服务稳定性的建设需求也愈发迫切。为了应对上述可用性挑战,引入混沌工程实践就成为了一种有效且必要的手段。

三、 混沌故障演练过程

在新游上线的背景下,欢乐互娱携手腾讯云混沌演练平台,通过梳理游戏行业痛点问题,结合业务背景,重点提炼出了服务器、网络、数据库等场景下的故障容灾演练,以充分评估新游戏产品的稳定性表现,有助于提前发现潜在的故障风险,为新游上线保驾护航。

1. 制定演练计划

  1. 明确演练目标:在新加坡新游上线前,通过注入模拟的重大故障验证业务稳定性,保障用户的三个核心业务场景具备分钟级别告警感知能力、不超过15min的应急恢复能力。
  2. 设计演练场景:在明确演练目标后,腾讯云混沌专家团队及高可用服务团队针对游戏行业通用故障痛点和业务特性,为业务定制化设计三大故障模拟场景:接入层负载均衡容灾能力、逻辑层虚拟机容灾能力、数据层CDB容灾能力
  3. 人员安排及角色分工:本次演练计划需结合开发、运维、测试和等团队的力量,进行跨部门的协作,安排参与人员及角色分工,制定整体演练流程和相应的安全兜底措施,确保演练过程的顺利进行
  4. 演练实施和复盘总结

2. 实施故障演练注入

此次演练涉及腾讯云CLB、CVM、CDB、EIP等多个云产品。腾讯云混沌团队依托内部实践经验和对行业痛点的深刻洞察,提供针对性的故障场景方案与故障动作编排,实现低成本、高效率的混沌演练,此次欢乐互娱新游演练包含以下核心演练场景:

1. 逻辑层:模拟虚拟机CPU内存高负载、虚拟机IO HANG等场景,应对高并发访问带来的资源压力。

2. 数据层:模拟数据库主从切换、连接数满、内存丢包等场景,应对数据读写不稳定问题。

3. 接入层:模拟弹性公网EIP被封堵/被攻击场景,验证系统在短时间内的故障感知与恢复能力。

在腾讯云混沌演练平台(CFG)上,业务团队可以轻松完成实例选取、演练场景动作编排、可视化故障注入和演练报告等全流程演练。深度定制的故障场景与可视化操作降低了客户成本投入,也确保演练针对性和效果更优。

图1 混沌演练平台-选择游戏演练模板图1 混沌演练平台-选择游戏演练模板
图2 混沌演练平台-故障场景编排图2 混沌演练平台-故障场景编排

3. 演练效果观测

在演练过程中,演练实施人员通过观察提前配置的实时监控指标和告警策略,来观测故障注入后系统稳态指标的表现,以判断系统的可用性和可靠性是否符合预期。

本次演练过程中的效果观测手段主要有四种:演练日志、业务指标监控、运维告警消息和产品页面业务表现。从观测结果可以看出,故障动作成功注入对象,真实模拟出了实际运行中的故障场景,充分检验了系统的可用性情况和应急机制是否有效。

图3 运维告警图3 运维告警
图4 执行过程演练日志图4 执行过程演练日志
图5 故障后游戏掉线界面图5 故障后游戏掉线界面

四、 演练成果与收益

欢乐互娱在与腾讯云混沌演练平台的联合演练中,成功应对了一系列关键业务的容灾挑战,并对系统的整体可用性和可靠性进行了全面验证,达到演练目标"三个核心业务场景具备分钟级别内的告警感知能力、15min内的应急恢复能力"。

此次演练还发现并解决了一些重要问题,如监控告警能力和单点服务恢复能力等。优化后,故障感知效率得到显著提高,排障速度加快,故障恢复时长大幅缩短,从而显著提升了系统的稳定性和可靠性。通过这次实践,欢乐互娱业务运维团队更了解了关键服务的容灾能力和故障时系统切换流程,进一步增强了对自身产品稳定性和可用性的信心。最终,新游在东南亚区顺利上线,并在上线首日一举夺得五国畅销榜第一。

五、 腾讯云混沌演练平台

腾讯云混沌演练平台(Chaotic Fault Generator)是一款结合了腾讯内部实践的针对腾讯云上资源进行混沌工程实践的SaaS产品。平台整体遵循混沌工程理念,能够为游戏行业提供全面的故障模拟与演练服务,帮助企业发现并解决稳定性相关问题,及时优化系统,实现业务高可用性和高韧性,提升游戏公司产品的高可用能力,从而打造用户口碑,提升产品竞争力。

图6 混沌平台产品特性图6 混沌平台产品特性

● 演练前,平台提供演练计划功能,帮助用户快速组织GameDay活动,对IaaS至PaaS产品100余种故障动作进行灵活编排组合;

● 演练中,平台支持用户进行可视化故障注入和自动恢复、稳态指标全方位监控,减少了人为干预的风险;

● 演练后,平台支持用户一键导出演练报告,回溯问题。

此外,平台从腾讯云内外部实践中提炼总结了包括游戏行业在内的7类行业经验库模板,支持用户可以快速复用行业经验模板来创建演练任务,提高演练效率。

图7 混沌平台演练模板图7 混沌平台演练模板
图8 游戏场景下演练模板图8 游戏场景下演练模板

附:

公有云产品体验:

混沌演练平台-腾讯云产品控制台

故障演练操作指南:

腾讯云文档中心-混沌演练平台-故障动作库

案例介绍文档:

腾讯云文档中心-混沌体验营

高可用服务:

高可用服务 - 腾讯云客户支持

0 人点赞