搜索

1.26.3. 部署分布式追踪平台

download PDF

分布式追踪平台具有预定义的部署策略。您可以在 Jaeger 自定义资源 (CR) 文件中指定部署策略。当您创建分布式追踪平台实例时,Red Hat OpenShift distributed tracing Platform Operator 会使用此配置文件创建部署所需的对象。

Red Hat OpenShift distributed tracing Platform Operator 目前支持以下部署策略:

  • allInOne(默认)- 此策略旨在用于开发、测试和演示目的,它不用于生产环境。主要的后端组件 Agent、Collector 和 Query 服务都打包成单个可执行文件,(默认)配置为使用内存存储。您可以在 SMCP 中配置此部署策略。

    注意

    内存存储不是持久性的,这意味着如果 Jaeger 实例关闭、重启或被替换,您的 trace 数据将会丢失。此外,内存存储无法扩展,因为每个 Pod 都有自己的内存。对于持久性存储,您必须使用 productionstreaming 策略,这些策略使用 Elasticsearch 作为默认存储。

  • production - production 策略主要用于生产环境,在生产环境中,对 trace 数据进行长期存储非常重要,同时需要更容易扩展和高度可用的构架。因此,每个后端组件都会单独部署。Agent 可以作为检测应用程序上的 sidecar 注入。Query 和 Collector 服务被配置为使用一个受支持的存储类型 - 当前为 Elasticsearch。可以根据性能和恢复能力的需要提供每个组件的多个实例。您可以在 SMCP 中配置此部署策略,但为了完全自定义,您必须在 Jaeger CR 中指定您的配置,并链接到 SMCP。
  • streaming - streaming 策略旨在通过提供 Collector 和 Elasticsearch 后端存储之间的流功能来增强 production 策略。这样做的好处是在高负载情况下降低后端存储压力,并允许其他 trace 后处理功能直接从流传输平台 (AMQ Streams/ Kafka) 中利用实时 span 数据。您无法在 SMCP 中配置此部署策略 ; 您必须配置 Jaeger CR 并链接到 SMCP。
注意

streaming 策略需要额外的 AMQ Streams 订阅。

1.26.3.1. 默认分布式追踪平台部署

如果没有指定 Jaeger 配置选项,ServiceMeshControlPlane 资源将默认使用 allInOne Jaeger 部署策略。使用默认的 allInOne 部署策略时,请将 spec.addons.jaeger.install.storage.type 设置为 Memory。您可接受默认选项,也可以在 install 中指定附加配置选项。

control plane 默认 Jaeger 参数(Memory)

apiVersion: maistra.io/v2
kind: ServiceMeshControlPlane
metadata:
  name: basic
spec:
  version: v2.2
  tracing:
    sampling: 10000
    type: Jaeger
  addons:
    jaeger:
      name: jaeger
      install:
        storage:
          type: Memory

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.