在高流量下的节点解决方案中,如何保证最低的SLA和问题跟踪效率以及闭环建设,如果透明请求流量和业务运营的透明度得到保证?下面是百度网盘的工作原理。难点保证千万级PV下节点运维的可用性,保证最低SLA99.98%的问题跟踪和闭环构建流量透明,运营透明解决方案我们将整个运维方案分为6个步骤,我们的目的:流量透明,运营透明。Step1:TrafficTracking为了解决微服务带来的分布式流量链路问题,我们借鉴了springcloud的思想。traceid和tracecode两个tracking字段,用于跟踪落地容器整个流链路中的节点信息,通过每个请求的ResponseHeader中的标识信息来跟踪定位流。Step2:在灰度发布中,大流量下的服务必须提供灰度和AB测试解决方案,结合in-router和BNS(命名服务)节点的上游配置能力,将用户流量划分为白名单、内网和外网,部署级别分为single、single和full,以实现流量控制。术语解释:in-router:ngxclusterBNS:baidunamingservice,专门对节点流量进行负载处理,通过虚拟域名逻辑排列IDC或集群,方便流量定位和处理。Step3:日志分类整个日志系统分为4个级别,每个级别记录不同的信息,详细记录【何时、何地、谁、犯了什么错误、造成了什么问题】,对于node.实现了事件循环的lagTime监控,用于监控节点服务器的压力。日志级别:业务日志、业务框架日志、守护进程日志、脚本日志(包括:环境日志)第四步:告警分类日志经分析服务处理后,将数据发送至监控平台,进行分类处理阈值用于确定是否应触发警报。报警方式分为:邮件、短信、电话等。第五步:染色处理值班人员接到报警后,从监控平台获取具体信息。如果是复杂问题,通过cookie染色指定流量链接和操作,可以跟踪定位大部分问题。第六步:流量溯源为了更好的判断用户的流量方向,通过traceid和tracecode,配合requestid,我们可以复现用户的流量方向和内部逻辑操作。最后:闭环建设最后,通过这六个步骤的整合,将每个部分进行连接和改造,将整个链路串联起来,从而达到透明运维流量和运营的目的。满足网盘高性能节点应用和最低SLA建设要求,以及对流量和运营的透明要求。本文给出节点大流量下的运维方案思路,主要起到吸纳新思路的作用。具体细节需要自己去深入体验和理解;不是科普文章,需要一定的运维基础。更好地理解文章中的内容。如果您对节点运维有需求,那么希望本文能给您一些启发和参考。
