1.4. 关于为 Jaeger 监控配置 Fuse Online


Jaeger 是用于在分布式服务间追踪事务的开源软件。它对于监控复杂微服务环境并进行故障排除特别有用。

当您安装 Fuse Online 时(可以从 OperatorHub 或使用命令行脚本)时,Fuse Online 安装会检测 OperatorHub 的存在,并使用 OperatorHub 的订阅功能安装 Jaeger。对于 OperatorHub 不可用的有限情况,Fuse Online 使用自己的安装功能来安装 Jaeger。

默认的 Fuse Online 环境配置所有必需的 Jaeger 组件。另外,您可以编辑 Fuse Online 自定义资源,以指定仅限客户端/独立的服务器配置或混合 Jaeger 客户端和 Jaeger Operator 配置。

默认 Jaeger 配置

basic, out-of-box 配置包含所有 Jaeger 组件。您可以通过试验其监控功能来开始了解 Jaeger 的工作原理。默认配置提供仅内存、有限的后端存储功能。

使用默认 Jaeger 配置安装 Fuse Online 具有以下结果:

  • Fuse 在线组件具有 Jaeger 通信 URL。
  • 已安装 Jaeger Operator。
  • Jaeger 自定义资源配置了活动监控的默认配置。

带有默认 Jaeger 配置的 Fuse Online 安装有以下 合成 自定义资源规格:

apiVersion: syndesis.io/v1beta2
kind: Syndesis
metadata:
  name: app
spec:
  addons:
    jaeger:
      enabled: true

clientOnlyoperatorOnly 未指定(默认设置为 false 时),Fuse Online 使用提供的 Jaeger 后端以及 Jaeger 服务器配置提供的默认仅内存存储。

仅客户端/独立于客户端的服务器配置

使用仅限客户端/独立于客户端的服务器配置,只有客户端 URL 连接配置为 Fuse Online 和外部配置的 Jaeger 后端之间的通信。Jaeger 后端的所有方面都是外部的,独立于 Fuse Online 环境,和 syndesis-operator。这包括 Jaeger Operator 和 Jaeger 自定义资源。

要安装仅限客户端的 Jaeger 配置,请在安装 Fuse Online 前编辑自定义资源,如下所示:

例如:

apiVersion: syndesis.io/v1beta2
kind: Syndesis
metadata:
  name: app
spec:
  addons:
    jaeger:
      enabled: true
      clientOnly: true
      queryUri: http://jaeger-query-hostname:443/api
      collectorUri: http://jaeger-collector-hostname:14268/api/traces

混合 Jaeger 客户端和 Operator 配置

使用混合 Jaeger 客户端和 Jaeger Operator 配置,Fuse Online 安装 Jaeger Operator 和 Jaeger 客户端功能。没有安装 Jaeger 自定义资源。您必须安装自己的 Jaeger 自定义资源,该资源定义 Jaeger 服务器配置。这可让您利用 Fuse Online 提供的功能,并为您自己的环境定制 Jaeger 配置,例如,您可以使用 Elasticsearch 或 Cassandra 进行数据存储。

安装混合 Jaeger 客户端和 Jaeger Operator 配置:

  • 在安装 Fuse Online 前编辑自定义资源,如下例所示:

    apiVersion: syndesis.io/v1beta2
    kind: Syndesis
    metadata:
      name: app
    spec:
      addons:
        jaeger:
          enabled: true
          operatorOnly: true
  • 将 Jaeger 自定义资源命名为 syndesis-jaeger,如下例所示:

    apiVersion: jaegertracing.io/v1
    kind: Jaeger
    metadata:
      name: syndesis-jaeger
      ...
    spec:
       ....

    注: 但是,如果要将不同的名称用于 Jaeger 自定义资源,请在 Syndesis 自定义资源中设置 queryUricollectorUri,如 Client-only/ independent server configuration 部分所述。

当创建带有 syndesis-jaeger 名称的 Jaeger 自定义资源时,Jaeger 实例会从 Fuse Online 集成收集数据。默认情况下,这个数据不会在 Fuse Online 活动日志中显示。要在 Fuse Online 活动日志中查看这些数据,请创建以下服务:

oc create -f - <<EOF
 apiVersion: v1
 kind: Service
 metadata:
   labels:
     app: syndesis
     syndesis.io/app: syndesis
     syndesis.io/type: infrastructure
     syndesis.io/component: jaeger
   name: noauth-syndesis-jaeger-query
 spec:
   ports:
     - name: query
       port: 443
       protocol: TCP
       targetPort: 16686
   selector:
     app: jaeger
     app.kubernetes.io/name: syndesis-jaeger
 EOF
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.