管理 Amazon Distro for OpenTelemetry Operator - Amazon EKS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

管理 Amazon Distro for OpenTelemetry Operator

Amazon Distro for OpenTelemetry (ADOT) Operator 作为 Amazon EKS 附加组件提供。安装 ADOT Operator 后,您可以将 ADOT 收集器配置为指定部署类型和接收应用程序指标或跟踪数据的服务。本主题介绍如何管理 ADOT 附加组件。

要安装 ADOT 收集器,请参阅部署 Amazon Distro for OpenTelemetry 收集器或者,借助 Amazon EKS 附加组件的高级配置功能,您可以在附加组件创建或附加组件更新期间安装 ADOT 收集器。有关更多信息,请参阅 使用高级配置部署 Amazon Distro for OpenTelemetry 收集器

安装 Amazon Distro for OpenTelemetry (ADOT) Operator

安装 ADOT 附加组件包括 ADOT Operator,该组件反过来会部署 ADOT 收集器。ADOT Operator 是一个自定义控制器,它通过 CustomResourceDefinition(CRD) 引入了一种名为 OpenTelemetryCollector 的新对象类型。当 ADOT Operator 检测到存在 OpenTelemetryCollector 资源时,将会安装 ADOT 收集器。

先决条件
  • 您已满足 ADOT 先决条件

  • 已安装了 kubectl

  • 必要时,使用以下命令更新您的 kubeconfig

    aws eks update-kubeconfig --name my-cluster --region region-code
  • 已安装了 eksctl

  • 您的设备或 Amazon CloudShell 上安装并配置了 2.11.3 版或更高版本,或 1.27.93 版或更高版本的 Amazon CLI。您可以使用 aws --version | cut -d / -f2 | cut -d ' ' -f1 检查您的当前版本。软件包管理器(如 yumapt-get 或适用于 macOS 的 Homebrew)通常比 Amazon CLI 的最新版本落后几个版本。要安装最新版本,请参阅《Amazon Command Line Interface 用户指南》中的安装、更新和卸载 Amazon CLI使用 aws configure 进行快速配置。Amazon CloudShell 中安装的 Amazon CLI 版本也可能比最新版本落后几个版本。要对其进行更新,请参阅《Amazon CloudShell 用户指南》中的将 Amazon CLI 安装到您的主目录

  • 现有 版 Amazon EKS 集群。

  • 现有 Amazon EKS 服务 IAM 角色。如果您没有角色,则可以按照 创建 IAM 角色 中的步骤创建一个。

Amazon Web Services Management Console

使用以下步骤将 ADOT Amazon EKS 附加组件安装到 Amazon EKS 集群中:

  1. 从以下位置打开 Amazon EKS 控制台:https://console.aws.amazon.com/eks/home#/clusters

  2. 在左侧窗格中,选择 Clusters(集群),然后在 Clusters(集群)页面上选择集群的名称。

  3. 选择 Add-ons(附加组件)选项卡。

  4. 单击 Add new(新增),然后从下拉列表中选择 Amazon Distro for OpenTelemetry

  5. 默认版本将在 Version(版本)下拉列表中选择。如果部署 ADOT 收集器,请确保版本为 v0.62.1-eksbuild.1 或更高版本。

  6. 如果已在没有 IAM 角色的集群中创建服务账户,则选择 Override existing configuration for this add-on on the cluster(覆盖集群上此附加组件的现有配置)。

  7. (可选)如果部署 ADOT 收集器,请提供与您的收集器部署使用案例匹配的配置值。在 Configuration values(配置值)字段的 Optional configuration settings(可选配置设置)下拉列表中执行此操作。Add-on configuration schema(附加组件配置架构)为您的配置值提供了可用选项。

  8. 单击 Add (添加)

Amazon CLI
  1. 将 ADOT Amazon EKS 附加组件安装到 Amazon EKS 集群中。(可选)可以在附加组件安装期间添加 --configuration-values 标志以部署 ADOT 收集器。您也可以使用此标志配置其他可用值。

    aws eks create-addon --addon-name adot --cluster-name my-cluster --configuration-values my-configuration-values

    在完成前,status 字段值将为 CREATING

  2. 确认 ADOT 已安装并且正在运行。

    aws eks describe-addon --addon-name adot --cluster-name my-cluster

    当创建完成时,您将看到 "status": "ACTIVE"

更新 Amazon Distro for OpenTelemetry (ADOT) Operator

Amazon EKS 不会自动更新您的集群上的 ADOT。您必须启动更新,然后 Amazon EKS 会为您更新 Amazon EKS 附加组件。

使用 Amazon CLI 更新 ADOT Amazon EKS 附加组件
  1. 检查 ADOT 附加组件的当前版本。将 my-cluster 替换为您的集群名称。

    aws eks describe-addon --cluster-name my-cluster --addon-name adot --query "addon.addonVersion" --output text
  2. 确定集群版本支持的 ADOT 版本是否可用。

    aws eks describe-addon-versions --addon-name adot --kubernetes-version 1.23 \ --query "addons[].addonVersions[].[addonVersion, compatibilities[].defaultVersion]" --output text

    输出示例如下。

    v0.58.0-eksbuild.1 True v0.56.0-eksbuild.2 False

    下方使用 True 的版本是创建附加组件时部署的默认版本。创建附加组件时部署的版本可能并非最新可用版本。在之前的输出中,创建附加组件时已部署最新的版本。

  3. 更新 ADOT 版本。将 my-cluster 替换为您的集群名称并将 v0.58.0-eksbuild.1 替换为所需的版本。(可选)可以在附加组件安装期间添加 --configuration-values 标志以部署 ADOT 收集器。您也可以使用此标志配置其他可用值。

    aws eks update-addon --cluster-name my-cluster --addon-name adot --addon-version v0.58.0-eksbuild.1 --resolve-conflicts PRESERVE --configuration-values my-configuration-values

    PRESERVE(保留)选项将保留您为附加组件设置的任何自定义设置。有关此设置的其他选项的更多信息,请参阅《Amazon EKS 命令行参考》中的更新附加组件。有关 Amazon EKS 附加组件配置管理的更多信息,请参阅 Kubernetes 字段管理

删除 Amazon Distro for OpenTelemetry (ADOT) Operator

  • 您必须将 ADOT 收集器资源与 ADOT 收集器分开删除。在此命令中,指定用于部署 ADOT 收集器的 YAML 文件:

    kubectl delete -f collector-config.yaml
  • 您可以通过 Amazon CLI 或 eksctl 删除 ADOT Operator。如果删除 ADOT Operator,则必须再次遵循安装说明重新安装:

    CLI

    aws eks delete-addon --addon-name adot --cluster-name my-cluster

    eksctl

    eksctl delete addon --cluster my-cluster --name adot