每个模块都可以在出错后自动恢复: 每个模块都要有自我修复的能力, 保证不会因为连接不到其他模块而自我崩溃.
每个模块都可以在必要时优雅地降级服务....这是对系统鲁棒性的要求, 保证基本功能不会依赖高级功能.
对传统雪崩故障的思考¶¶
对于传统故障的思考, 也让我愈发觉得K8S的设计之精妙....另外, 为了做到部署在其上的应用的快速恢复, 至少有以下几项措施:
部署在K8S上的应用(deployment)刚开始会配置一个期望的副本数(通过RC控制) – 出现故障导致副本数降低, RC会自动启动运行新的...存储¶
当今, 假如发生存储故障, 可能会导致:
OS卷异常;
中间件/数据库卷异常, 进而服务异常;
应用实例/微服务实例的日志存储卷\配置存储卷\持久化存储卷异常, 进而业务异常....这样, PV和PVC可以将pod和数据卷解耦, pod不需要知道确切的文件系统或者支持它的持久化引擎.
在发生故障时, 首先可以通过查看PV状态, 知道存储故障的范围.