2023-11-02 14:28:15 79阅读
为了确保应用系统具备足够的健壮性,通常需要设计容灾方案进行部署,在容灾方案落地实行之前通常需要进行故障的模拟,以达到:
故障类型 | 举例 |
---|---|
服务故障 | 超时/不可用 |
中间件故障 | 超时/不可用 |
基础设施故障 | 数据库超时/不可用、DNS超时/不可用 |
机器故障 | CPU满载、网络中断、机器宕机、机房断点、磁盘空间满载 |
异常流量 | 入口流量激增、流量掉零 |
个人思考:目前存在的灾备故障模拟工具,例如阿里的ChaosBlade,k8s开源社区的ChaosMesh等都具备了比较强大的混沌实验能力,能够模拟多个场景下常见的系统故障,但是故障的粒度一般来说比较大,比如基础资源宕机、应用服务崩溃等导致服务直接不可用。这些工具没有适配用户的应用系统,同时代码级的故障也无能为力。 个人感觉故障演练和测试团队或者安全领域模糊测试有异曲同工之妙,有可能这个不在故障演练的范畴内,属于用户安全渗透团队的业务范围,但如果故障演练可以包含更细粒度的故障测试,就可以提高灾备能力,应对更多更复杂的故障场景,进一步提高系统的健壮性。
2023-11-02 14:28:15 79阅读
为了确保应用系统具备足够的健壮性,通常需要设计容灾方案进行部署,在容灾方案落地实行之前通常需要进行故障的模拟,以达到:
故障类型 | 举例 |
---|---|
服务故障 | 超时/不可用 |
中间件故障 | 超时/不可用 |
基础设施故障 | 数据库超时/不可用、DNS超时/不可用 |
机器故障 | CPU满载、网络中断、机器宕机、机房断点、磁盘空间满载 |
异常流量 | 入口流量激增、流量掉零 |
个人思考:目前存在的灾备故障模拟工具,例如阿里的ChaosBlade,k8s开源社区的ChaosMesh等都具备了比较强大的混沌实验能力,能够模拟多个场景下常见的系统故障,但是故障的粒度一般来说比较大,比如基础资源宕机、应用服务崩溃等导致服务直接不可用。这些工具没有适配用户的应用系统,同时代码级的故障也无能为力。 个人感觉故障演练和测试团队或者安全领域模糊测试有异曲同工之妙,有可能这个不在故障演练的范畴内,属于用户安全渗透团队的业务范围,但如果故障演练可以包含更细粒度的故障测试,就可以提高灾备能力,应对更多更复杂的故障场景,进一步提高系统的健壮性。