服务治理
随着服务的规模越来越大,服务之间变得独立分散且分布式进化,服务之间的调用愈加复杂,随之带来的服务运维成本越来越高,服务治理变得势在必行。
简述
服务治理关注于整个系统的性能及服务的健康度,打通基础层,中间件层,应用层的监控数据,从整体的角度进行治理。其主要关注于以下几个方面:
全栈监控
整合基础层,中间件层,应用层的监控指标,从总体的角度去了解观察系统和服务的运行状况。
服务健康报告
所谓服务的健康度,就是在服务运行的关键指标的集合,包括响应时间和调用成功率等。通过关注各个服务的健康度,可以了解服务质量,及时发现异常。
调用链路追踪
梳理内部服务之间的关系,感知服务上下游形态。追踪一次请求的流量从哪个服务来,最终落到哪个服务去,中间的过程是怎么样。
设计
服务治理遵循以下的设计原则
- 使用主流的技术 我们希望使用的技术是大多数的工程师团队都熟悉并可以运维的。
- 分布式&高扩展 随着服务规模的扩张,所有组件都可以按需进行扩展,并且通过分布式部署保证高可用。
- 组件可以被替换和裁剪 不同的场景有不同的需求和业务形态,所以需要有足够的灵活度来容易地替换或裁剪一部分组件。
- 引导工程能力 服务治理致力于帮助工程师做两件事 1.快速地定位故障,2.容易做出工程上的决定。
- 自动化驱动 优秀的服务治理可以与现有的集群控制工具整合,实现自动化运维。如:自动化扩展,或是自动化的资源或流量调度。
架构图
