云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

云服务器_阿里数据库服务器_新注册优惠

小七 141 0

第7层可观测性与consur服务网格

这是博客系列的第二篇文章,重点介绍了consur服务网格的新功能。»介绍你可能听说过"可观测性"这个词,但它到底是什么意思?是仅仅是监视重新命名,还是有更多的可观察性?我们正在发布一系列博客文章来讨论服务网格的核心用例。在本博客中,我们将更深入地了解可观测性,以及如何启用consurconnect最新发布的L7可观测性特性,这些特性包括在最新的consul1.5版本中。首先,让我们回顾一个熟悉的概念:监视。»监控监视意味着使用内部或外部工具检测应用程序和系统,以确定它们的状态。例如,您可能有一个外部健康检查来探测应用程序的状态或确定其当前的资源消耗。您还可能有内部统计信息,用于报告特定代码块的性能,或执行某个数据库事务所需的时间。»可观测性可观测性来自于工程和控制理论界。控制理论指出,可观测性本身就是一种度量,它描述了"从外部输出的知识中可以推断出系统内部状态的程度"。与你所做的监视不同,可观测性是一个系统的属性。如果外部输出、日志记录、度量、跟踪、健康检查等允许您了解其内部状态,则系统是可观察的。可观测性对于具有频繁发布的现代分布式应用程序尤为重要。与组件通过进程内调用进行通信的单片体系结构相比,微服务体系结构在服务交互过程中会出现更多的故障,因为这些调用发生在可能不可靠的网络上。随着为测试创建真实的生产环境变得越来越困难,在客户之前检测生产中的问题变得越来越重要。查看这些服务调用有助于团队及早发现故障、跟踪故障并进行恢复性设计。使用模块化和独立部署(micro)服务,很难实现对这些服务的可见性。单个用户请求可以流经多个服务,这些服务由不同的团队独立开发和部署。由于不可能预测系统中可能发生的每个潜在故障或问题,所以您需要构建一个易于调试的系统部署。洞察进入网络对于理解这些高度分布式系统的流程和性能至关重要。»服务网格服务网格是一种利用"侧车"代理进行微服务部署的网络基础设施。由于sidecar代理存在于每个网络跃点,它同时捕获上游和下游通信。因此,服务网格提供了所有服务的外部性能的完整可见性。采用服务网格的一个关键好处是,sidecar代理的车队对所有服务流量都有完全的可见性,并且可以以一致的方式公开度量,而不考虑不同的编程语言和框架。为了深入了解应用程序的内部性能,仍然需要对应用程序进行检测。»控制平面传统上,服务网格由两个主要组件组成:控制平面和数据平面。控制平面为网格中所有正在运行的数据平面提供策略和配置。数据平面通常是一个本地代理,作为应用程序的侧车运行。数据平面根据控制平面中的策略和服务图终止所有TLS连接和管理授权。consur构成了服务网格的控制平面,简化了sidecar代理的配置,以实现安全通信和度量收集。consur的构建是为了支持各种各样的代理作为侧车,并且目前已经记录在案,为特使提供一流的支持,这是因为它的轻量级占用空间和可观测性支持而选择的。领事用户界面显示特使侧车代理及其上游服务consur1.5引入了使用consurconnect特使命令立即为consulconnect中的所有特使代理配置度量集合的功能。在新的发现阶段,此命令从本地consur代理获取集中存储的代理配置,并使用其值引导特使代理。当通过consur Connect配置特使引导时,支持一些不同级别的定制。更高级别的配置是最简单的配置,它涵盖了从特使那里获取指标所需的一切。集中配置可以通过创建配置文件来创建,例如。kind="代理默认值"name="全局"配置{#(dog)UDP或Unix套接字上的statsd侦听器。#特使\u statsd_url="udp://127.0.0.1:9125英寸特使_dogstatsd_url="udp://127.0.0.1:9125英寸#IP:暴露/metrics端点以进行抓取的端口。#普罗米修斯绑定地址="0.0.0.0:9102"#刷新间隔(秒)。使臣悻统计悻悻间隔=10}可以使用conv config write命令将此配置写入consur。上面文件中的config部分通过告诉特使将度量发送到何处来启用度量收集。目前,consur Connect通过集中配置支持以下公制输出格式:StatsD:一种网络协议,允许客户端报告指标,如计数器和计时器DogStatsD:StatsD协议的扩展,支持直方图和度量标记普罗米修斯:公开一个端点,普罗米修斯可以从中获取指标DogStatsD sink比statsd更受欢迎,因为它允许标记度量,这对于在Grafana中正确过滤它们至关重要。一旦支持了特使1.10并发出了柱状图,普罗米修斯端点将是大多数用户的一个好选择。consur将使用该配置来生成jenger设置代理和配置适当的stats接收器所需的引导配置。一旦特使代理启动,它将开始发射指标。您可以在像Prometheus这样的timeseries存储中捕获这些度量,并在Grafana这样的工具中查询它们或者将它们发送到托管监视解决方案。下面是一个Prometheus查询的示例,您可以根据生成的度量来编写Prometheus查询,该查询将所有请求时间带到上游的"emojifyapi"集群,然后按分位数对它们进行分组。#emojify api上游的响应时间,#按分位数分类sum(enjogent_cluster_upstream_rq_time{enjogent_cluster_name="emojify api"}>0)by(分位数)显示请求时间分位数的结果图根据其配置方式,特使会发出大量的统计数据。一般有三类统计数据:与传入连接/请求相关的下游统计信息。与传出连接/请求相关的上游统计信息。描述特使服务器实例执行情况的服务器统计信息。