简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

在 Kubernetes 上配置代理

Cloud Insights 使用 "Telegraf" 作为收集集成数据的代理。Telegraf 是一种插件驱动的服务器代理,可用于收集和报告指标,事件和日志。输入插件用于通过直接访问系统 /OS ,调用第三方 API 或侦听已配置的流(例如 Kafka , statsD 等)。输出插件用于将收集的指标,事件和日志从代理发送到 Cloud Insights 。

Cloud Insights 的当前Telegraf版本为*。1.22.3*。

注 为了准确地进行审核和报告数据,强烈建议使用 * 网络时间协议( NTP ) * 或 * 简单网络时间协议( SNTP ) * 同步 Agent 计算机上的时间。
注 如果要在安装代理之前验证安装文件,请阅读关于 [Verifying Kubernetes Checksums]

基于操作员的安装还是基于脚本的安装?

Cloud Insights 构建了一个Kubernetes操作员、用于监控客户的Kubernetes集群。与脚本安装的监控方法相比、NetApp Kubernetes监控操作员(NKMO)有所改进、因为它可以更灵活地配置可从Cloud Insights 进行控制的监控、并减少客户驱动的配置干预、同时还可以增加监控K8s集群中运行的其他软件的机会。

NKMO继续 使用底层的电报软件收集数据、转换数据并将其传送到Cloud Insights。自定义资源定义和自定义资源增强了此功能、可为每个K8s集群定制监控。

安装代理

如果您要安装服务数据收集器,但尚未配置代理,则系统会提示您先为相应的操作系统安装代理。本主题介绍如何在以下操作系统上安装 Telegraf 代理:

要安装代理,必须先执行以下操作:

  1. 登录到要用于代理的主机。

  2. 登录到 Cloud Insights 站点并转到 * 管理员 > 数据收集器 * 。

  3. 单击 * + Data Collector* 并选择要安装的数据收集器。

  4. 为主机选择 Kubernetes 平台

  5. 请按照其余步骤进行操作。

要在 Windows , Linux 或 Mac 上安装代理,请按照 "这些说明"

注 在主机上安装代理后,无需在该主机上重新安装代理。
提示 在服务器 /VM 上安装代理后, Cloud Insights 除了从您配置的任何数据收集器收集数据之外,还会从该系统收集指标。这些指标将作为收集 "" 节点 " 指标"
注 如果您使用的是代理,请在安装 Telegraf 代理之前阅读适用于您的平台的代理说明。

在 Kubernetes 上安装代理

Kubernetes 提供了两种数据收集方式:

  • NetApp Kubernetes 监控操作员配置。这是为 Kubernetes 建议的安装方法。

  • 基于脚本的传统代理安装(不建议)

安装说明因您选择的不同而异。

Kubernetes 安装选项

前提条件:
  • Kubernetes 1.17 或更高版本支持安装 NetApp Kubernetes 监控操作员。与 Docker 容器运行时结合使用时, Cloud Insights 可以显示 NFS 和 iSCSI 的 POD 到 PV 到存储映射;其他运行时仅显示 iSCSI 。

  • 如果您运行的是 OpenShift 4.6 - 4.8 ,则除了确保满足这些前提条件之外,还必须遵循下面的 * OpenShift 指令 * 。

  • 必须提供以下命令: cURL , _sudo (对于基于脚本的安装不需要), _opensslsha256sumkubectl 。为获得最佳结果,请将这些命令添加到路径中。

  • 必须安装 Kube-state-metrics 。有关详细信息,请参见下文。Kube-state-metrics 会随基于操作员的安装自动安装。

  • 如果您使用的是代理,请按照 * 为 Kubernetes 配置代理支持 * 一节中的说明进行操作。

  • 如果您运行的 Kubernetes 变体需要安全上下文约束,请按照 * 配置代理以从 Kubernetes 收集数据 * 一节中的说明进行操作。基于操作员的安装可为您安装此软件。

  • 您必须具有创建 Kubernetes 集群角色和角色绑定的权限。

监控仅安装在 Linux 节点上

Cloud Insights 通过指定 Kubernetes 节点选择器来在这些平台上查找以下 Kubernetes 标签,支持监控运行 Linux 的 Kubernetes 节点:

平台 标签

Kubernetes v1.17 及更高版本

Kubernetes 。 io/OS = Linux

Rancher + catt.io 作为流程编排 /Kubernetes 平台

catt.io/OS = Linux

安装 NetApp Kubernetes 监控操作员

基于操作员的安装

在 Kubernetes 上安装 NetApp Kubernetes 监控操作员代理的步骤:
  1. 输入集群名称和命名空间。

  2. 输入这些内容后,您可以复制 Agent 安装程序代码片段

  3. 单击按钮将此片段复制到剪贴板。

  4. 将此代码片段粘贴到 bash 窗口中并执行。

  5. 安装将自动进行。完成后,单击 complete Setup 按钮。

OpenShift 说明

如果您运行的是 OpenShift 4.6- 4.8 ,则必须更改 " 特权模式 " 设置。运行以下命令以打开代理进行编辑。如果您使用的命名空间不是 "netapp-monitoring" ,请在命令行中指定此命名空间:

 kubectl edit agent agent-monitoring-netapp -n netapp-monitoring
在文件中,将 _privileged-mode : false_ 更改为 _privileged-mode : tru_

为 NetApp Kubernetes 监控操作员配置代理支持

要为监控操作员配置代理,请执行以下步骤。

首先,打开 agent-monitoring-netapp 文件进行编辑:

 kubectl -n netapp-monitoring edit agent agent-monitoring-netapp
在此文件的 _spec: _ 部分中,添加以下代码块:
spec:
  proxy:
    isAuProxyEnabled: <true or false>
    isTelegrafProxyEnabled: <true or false>
    isFluentbitProxyEnabled: <true or false>
    password: <password for proxy, optional>
    port: <port for proxy>
    server: <server for proxy>
    username: <username for proxy, optional>
    noProxy: <comma separated list of IPs or resolvable hostnames that should bypass a proxy>

使用自定义 / 私有 Docker 存储库

如果使用自定义 Docker 存储库,请执行以下操作:

获取 Docker 密钥:

 kubectl -n netapp-monitoring get secret docker -o yaml
复制 / 粘贴上述命令输出中的值 _.dockerconfigjson : _ 。

对 Docker 密钥进行解码:

 echo <paste from _.dockerconfigjson:_  output above> | base64 -d
此命令的输出将采用以下 json 格式:
{ "auths":
  {"docker.<cluster>.cloudinsights.netapp.com" :
    {"username":"<tenant id>",
     "password":"<password which is the CI API key>",
     "auth"    :"<encoded username:password basic auth key. This is internal to docker>"}
  }
}

登录到 Docker 存储库:

docker login docker.<cluster>.cloudinsights.netapp.com (from step #2) -u <username from step #2>
password: <password from docker secret step above>

从 Cloud Insights 中提取操作员 Docker 映像:

 docker pull docker.<cluster>.cloudinsights.netapp.com/netapp-monitoring:<version>
使用以下命令查找 <version> 字段:
 kubectl -n netapp-monitoring get deployment monitoring-operator | grep "image:"
根据您的企业策略,将操作员 Docker 映像推送到您的私有 / 本地 / 企业 Docker 存储库。

将所有开源依赖项下载到您的私有 Docker 注册表中。需要下载以下开源映像:

docker.io/telegraf:1.21.4
gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
k8s.gcr.io/kube-state-metrics/kube-state-metrics:v2.3.0

如果启用了 flual-bit ,请同时下载:

docker.io/fluent-bit:1.8.12
docker.io/kubernetes-event-exporter:0.10

编辑代理 CR 以反映新的 Docker repo 位置,禁用自动升级(如果已启用)。

kubectl -n netapp-monitoring edit agent agent-monitoring-netapp
enableAutoUpgrade: false
docker-repo: <docker repo of the enterprise/corp docker repo>
dockerRepoSecret: <optional: name of the docker secret of enterprise/corp docker repo, this secret should be already created on the k8s cluster in the same namespace>

spec_ 部分中,进行以下更改:

spec:
  telegraf:
    - name: ksm
      substitutions:
        - key: k8s.gcr.io
          value: <same as "docker-repo" field above>

从基于脚本的K8s监控升级到基于操作员的监控

如果您已安装基于脚本的Kubernetes监控、请按照以下步骤升级到基于操作员的监控:

升级步骤

  1. 从基于脚本的监控安装中保留ConfigMap:

     kubectl --namespace ci-monitoring get cm -o yaml > /tmp/telegraf-configs.yaml
    . 保存K8s集群名称、以便在安装K8s基于操作员的监控解决方案 期间使用、以确保数据连续性。

    如果您不记得CI中K8s集群的名称、可以使用以下命令行从已保存的配置中提取此集群:

     cat /tmp/telegraf-configs.yaml | grep kubernetes_cluster | head -2
    . 删除基于脚本的监控

    要卸载 Kubernetes 上基于脚本的代理,请执行以下操作:

    如果监控命名空间仅用于 Telegraf :

    kubectl --namespace ci-monitoring delete ds,rs,cm,sa,clusterrole,clusterrolebinding -l app=ci-telegraf
    kubectl delete ns ci-monitoring

    如果除了 Telegraf 之外,监控命名空间还用于其他目的:

    kubectl --namespace ci-monitoring delete ds,rs,cm,sa,clusterrole,clusterrolebinding -l app=ci-telegraf

适用于Kubernetes操作员的图块

基于脚本的安装

注 已弃用基于脚本的安装。请使用基于Kubernetes操作员的收集功能监控Kubernetes集群。

基于脚本的安装

在 Kubernetes 上安装基于脚本的代理的步骤:
  1. 选择代理访问密钥。

  2. 单击安装对话框中的 * 复制代理安装程序 Snippet* 按钮。如果要查看命令块,您可以选择单击 +reveal Agent Installer Snippet 按钮。

  3. 将命令粘贴到 bash 窗口中。

  4. 或者,您也可以在 install 命令中覆盖命名空间或提供集群名称,方法是修改命令块,在最终的 ./$installerName 之前添加以下一项或两项

    • cluster_name=< 集群名称 >

    • namespace=< 命名空间 >

      命令块中已安装此命令:

      installerName=cloudinsights-kubernetes.sh ... && CLUSTER_NAME=<cluster_name> NAMESPACE=<new_namespace> sudo -E -H ./$installerName --download --install
      提示 cluster_name 是 Cloud Insights 收集指标的 Kubernetes 集群的名称,而 _namespace_是 要将 Telegraf 代理部署到的命名空间。如果指定的命名空间尚不存在,则会创建该命名空间。
  5. 准备好后,执行命令块。

  6. 此命令将下载相应的代理安装程序并进行安装,然后设置默认配置。如果尚未明确设置 namespaces ,系统将提示您输入此名称。完成后,此脚本将重新启动代理服务。此命令具有唯一的密钥,有效期为 24 小时。

  7. 完成后,单击 * 完成设置 * 。

为 Kubernetes 配置代理支持—基于脚本

注 以下步骤概述了设置 http_proxy/https_proxy_environment 变量所需的操作。对于某些代理环境,用户可能还需要设置 _no_proxy environment 变量。

对于驻留在代理后面的系统,请执行以下操作,为当前用户 * 先前 * 设置 https_proxy 和 / 或 http_proxy 环境变量,以安装 Telegraf 代理:

 export https_proxy=<proxy_server>:<proxy_port>
* 安装 Telegraf 代理之后,将适当的 _https_proxy_ 和 / 或 _http_proxy_ 环境变量添加并设置为 _telecraf-DS_ emonset 和 _telecraf-RS_ replicaset 。
kubectl edit ds telegraf-ds
…
       env:
       - name: https_proxy
         value: <proxy_server>:<proxy_port>
       - name: HOSTIP
         valueFrom:
           fieldRef:
             apiVersion: v1
             fieldPath: status.hostIP
…
kubectl edit rs telegraf-rs
…
       env:
       - name: https_proxy
         value: <proxy_server>:<proxy_port>
       - name: HOSTIP
         valueFrom:
           fieldRef:
             apiVersion: v1
             fieldPath: status.hostIP
…

然后,重新启动 Telegraf :

kubectl delete pod telegraf-ds-*
kubectl delete pod telegraf-rs-*

DemonSet , ReplicaSet 以及停止 / 启动代理

将在 Kubernetes 集群上创建 DemonSet 和 ReplicaSet ,以运行所需的 Telegraf 代理 / Pod 。默认情况下,这些 Telegraf 代理 / Pod 将同时计划在主节点和非主节点上。

为了便于停止和重新启动代理,请使用以下命令生成 Telegraf DemonSet YAML 和 ReplicaSet YAML 。请注意,这些命令使用的是默认命名空间 "CI-monitoring" 。如果您已设置自己的命名空间,请在以下命令和所有后续命令和文件中替换此命名空间:

如果您已设置自己的命名空间,请在以下命令和所有后续命令和文件中替换此命名空间:

kubectl --namespace ci-monitoring get ds telegraf-ds -o yaml > /tmp/telegraf-ds.yaml
kubectl --namespace ci-monitoring get rs telegraf-rs -o yaml > /tmp/telegraf-rs.yaml

然后,您可以使用以下命令停止和启动 Telegraf 服务:

kubectl --namespace ci-monitoring delete ds telegraf-ds
kubectl --namespace ci-monitoring delete rs telegraf-rs
kubectl --namespace ci-monitoring apply -f /tmp/telegraf-ds.yaml
kubectl --namespace ci-monitoring apply -f /tmp/telegraf-rs.yaml

配置代理以从 Kubernetes 收集数据

注意:基于脚本的安装的默认命名空间为 _cI-monitoring-.对于基于操作员的安装,默认命名空间为 _netapp-monitoring-.在涉及命名空间的命令中,请务必为您的安装指定正确的命名空间。

运行代理的 Pod 需要能够访问以下内容:

  • HostPath

  • 配置映射

  • 机密

这些 Kubernetes 对象会在 Cloud Insights UI 中提供的 Kubernetes 代理安装命令中自动创建。Kubernetes 的某些变体(例如 OpenShift )实施了更高的安全级别,可能会阻止对这些组件的访问。SecurityContextConstrent 不是在 Cloud Insights UI 中提供的 Kubernetes 代理安装命令中创建的,必须手动创建。创建后,重新启动 Telegraf Pod 。

    apiVersion: v1
    kind: SecurityContextConstraints
    metadata:
      name: telegraf-hostaccess
      creationTimestamp:
      annotations:
        kubernetes.io/description: telegraf-hostaccess allows hostpath volume mounts for restricted SAs.
      labels:
        app: ci-telegraf
    priority: 10
    allowPrivilegedContainer: true
    defaultAddCapabilities: []
    requiredDropCapabilities: []
    allowedCapabilities: []
    allowedFlexVolumes: []
    allowHostDirVolumePlugin: true
    volumes:
    - hostPath
    - configMap
    - secret
    allowHostNetwork: false
    allowHostPorts: false
    allowHostPID: false
    allowHostIPC: false
    seLinuxContext:
      type: MustRunAs
    runAsUser:
      type: RunAsAny
    supplementalGroups:
      type: RunAsAny
    fsGroup:
      type: RunAsAny
    readOnlyRootFilesystem: false
    users:
    - system:serviceaccount:ci-monitoring:monitoring-operator
    groups: []

安装 Kube-state-metrics 服务器

注 基于操作员的安装可处理 Kube-state-metrics 的安装。如果要执行基于操作员的安装,请跳过此部分。
注 强烈建议使用 Kube-state-metrics 2.0 或更高版本,以利用完整的功能集,包括将 Kubernetes 永久性卷(永久性卷)链接到后端存储设备的功能。另请注意,对于 Kube-state-metrics 2.0 及更高版本,默认情况下不会导出 Kubernetes 对象标签。要配置 Kube-state-metrics 以导出 Kubernetes 对象标签,必须指定指标标签 "allow" 列表。请参见中的 -metric-labks-allowlist 选项 "Kube-state-metrics 文档"

按照以下步骤安装 Kube-state-metrics 服务器(如果正在执行基于脚本的安装,则需要此服务器):

步骤
  1. 创建一个临时文件夹(例如, //tmp/Kube-state-yamal-files/_ ),然后从复制 .yaml 文件 https://github.com/kubernetes/kube-state-metrics/tree/master/examples/standard 到该文件夹。

  2. 运行以下命令以应用安装 Kube-state-metrics 所需的 .yaml 文件:

    kubectl apply -f /tmp/kube-state-yaml-files/

卸载代理

请注意,这些命令使用的是默认命名空间 "CI-monitoring" 。如果您已设置自己的命名空间,请在这些命令和所有后续命令和文件中替换该命名空间。

要卸载 Kubernetes 上基于脚本的代理,请执行以下操作:

如果监控命名空间仅用于 Telegraf :

 kubectl --namespace ci-monitoring delete ds,rs,cm,sa,clusterrole,clusterrolebinding -l app=ci-telegraf
 kubectl delete ns ci-monitoring
如果除了 Telegraf 之外,监控命名空间还用于其他目的:
 kubectl --namespace ci-monitoring delete ds,rs,cm,sa,clusterrole,clusterrolebinding -l app=ci-telegraf
对于基于操作员的安装,请运行以下命令:
kubectl delete ns netapp-monitoring
kubectl delete agent agent-monitoring-netapp
kubectl delete crd agents.monitoring.netapp.com
kubectl delete role agent-leader-election-role
kubectl delete clusterrole agent-manager-role agent-proxy-role agent-metrics-reader
kubectl delete clusterrolebinding agent-manager-rolebinding agent-proxy-rolebinding agent-cluster-admin-rolebinding

如果先前为基于脚本的 Telegraf 安装手动创建了安全上下文限制:

kubectl delete scc telegraf-hostaccess

升级代理

请注意,这些命令使用的是默认命名空间 "CI-monitoring" 。如果您已设置自己的命名空间,请在这些命令和所有后续命令和文件中替换该命名空间。

要升级电报代理,请执行以下操作:

  1. 备份现有配置:

    kubectl --namespace ci-monitoring get cm -o yaml > /tmp/telegraf-configs.yaml
  2. 卸载代理(有关说明,请参见上文)

  3. "安装新代理"

验证 Kubernetes 校验和

Cloud Insights 代理安装程序会执行完整性检查,但某些用户可能希望在安装或应用下载的项目之前执行自己的验证。要执行仅下载操作(与默认的下载和安装操作相反),这些用户可以编辑从 UI 获取的代理安装命令并删除尾随的 "install" 选项。

请按照以下步骤操作:

  1. 按照说明复制 Agent 安装程序代码片段。

  2. 请将代码片段粘贴到文本编辑器中,而不是将其粘贴到命令窗口中。

  3. 从命令中删除尾随的 "-install" ( Linux/Mac )或 "-install" ( Windows )。

  4. 从文本编辑器复制整个命令。

  5. 现在,将其粘贴到命令窗口(在工作目录中)并运行。

非 Windows (这些示例适用于 Kubernetes ;实际脚本名称可能有所不同):

  • Download and install (下载并安装)(默认):

     installerName=cloudinsights-kubernetes.sh … && sudo -E -H ./$installerName --download –-install
    * 仅下载:
    installerName=cloudinsights-kubernetes.sh … && sudo -E -H ./$installerName --download

仅下载命令会将所有所需的项目从 Cloud Insights 下载到工作目录。这些项目包括但不限于:

  • 安装脚本

  • 环境文件

  • YAML 文件

  • 签名校验和文件( SHA256.signed )

  • 用于签名验证的 PEM 文件( netapp_cert.pem )

安装脚本,环境文件和 YAML 文件可以通过目视检查进行验证。

可以通过确认 PEM 文件的指纹为以下内容来验证 PEM 文件:

 E5:FB:7B:68:C0:8B:1C:A9:02:70:85:84:C2:74:F8:EF:C7:BE:8A:BC
更具体地说,
  • 非 Windows :

     openssl x509 -fingerprint -sha1 -noout -inform pem -in netapp_cert.pem
    * Windows
    Import-Certificate -Filepath .\netapp_cert.pem -CertStoreLocation Cert:\CurrentUser\Root

可以使用 PEM 文件验证签名校验和文件:

  • 非 Windows :

     openssl smime -verify -in sha256.signed -CAfile netapp_cert.pem -purpose any
    * Windows (通过上述 Import-Certificate 安装证书后):
    Get-AuthenticodeSignature -FilePath .\sha256.ps1 $result = Get-AuthenticodeSignature -FilePath .\sha256.ps1 $signer = $result.SignerCertificate Add-Type -Assembly System.Security [Security.Cryptography.x509Certificates.X509Certificate2UI]::DisplayCertificate($signer)

在对所有项目进行满意的验证后,可以通过运行以下命令启动代理安装:

非 Windows :

 sudo -E -H ./<installation_script_name> --install
Windows
.\cloudinsights-windows.ps1 -install

对 Kubernetes Agent 安装进行故障排除

在设置代理时遇到问题时要尝试的一些操作:

问题: 请尝试以下操作:

对于 etcd 不是 Kubernetes 集群数据存储库的集群,您将在 telraf RS Pod 中看到以下消息: inputs.prometheus] 插件错误:无法加载密钥类型 /etc/Kubernetes /PKI/etcd/server.crt : /etc/Kubernetes /PKI/etcd/server.key :打开 /etc/Kubernetes /netcd/server.key

Cloud Insights 仅支持将 etcd 作为 K8s 数据存储库进行监控。您可以按照以下说明更改配置来修改代理,以避免收集 etcd 数据: kubectl -n netapp-monitoring edit agent agent-monitoring-netapp 在该文件中,删除以下部分: - name : Prometheus_etcd run-mode : - ReplicaSet

我已使用 Cloud Insights 安装代理

如果您已在主机 /VM 上安装了代理,则无需重新安装该代理。在这种情况下,只需在 Agent 安装屏幕中选择适当的平台和密钥,然后单击 * 继续 * 或 * 完成 * 。

我已安装代理,但未使用 Cloud Insights 安装程序安装代理

删除先前的代理并运行 Cloud Insights 代理安装,以确保正确的默认配置文件设置。完成后,单击 * 继续 * 或 * 完成 * 。

我未看到 Kubernetes 永久性卷与相应后端存储设备之间的超链接 / 连接。我的 Kubernetes 永久性卷使用存储服务器的主机名进行配置。

按照以下步骤卸载现有的 Telegraf 代理,然后重新安装最新的 Telegraf 代理。您必须使用 Telegraf 2.0 或更高版本。

我在日志中看到类似以下内容的消息: E0901 15 : 21 : 39.962145 1 个 trirror.go : 178] K8s.io/Kube-state-metrics/internal/store/builer.go : 352 :无法列出 * 。 MutatingWebhookConfiguration :服务器找不到请求的资源 E091.IO/Kube-state-metrics :内部 /8.171.Go :无法找到服务器

如果您运行的是 Kube-state-metrics 版本 2.0.0 或更高版本以及 Kubernetes 版本 1.17 或更低版本,则可能会出现这些消息。要获取 Kubernetes 版本: kubectl version 以获取 Kube-state-metrics 版本: kubectl get deploy/Kube-state-metrics -o jsonpath="" { ..image } ' 要防止发生这些消息,用户可以修改其 Kube-state-metrics 部署以禁用以下租约: mutatingwebconfigurations _webhook ,具体可以使用以下参数: resources=certificatesigningrequests , configmaps , cronjobs , demonsets ,部署,端点,水平 podautoscalers , ingeses ,作业,限制范围,命名空间,网络策略,节点,复制卷,持久性卷, poddis中断 预算, Pod ,证书集,资源控制器,资源等,网络,存储器,卷,存储器,卷,存储器,存储器,存储器,卷,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,卷,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,卷,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,存储器,卷,存储器,存储器,存储器,存储器,存储器,存储器, 验证 webhookconfigurations , volumeattachments

我在 Kubernetes 上安装或升级了 Telegraf ,但 Telegraf Pod 未启动。Telegraf ReplicaSet 或 DemonSet 报告了类似以下内容的故障:创建时出错: Pod "telaf-RS- " is foreged" :无法针对任何安全上下文限制进行验证: [spec.volumes_2 :无效值: "hostPath" :不允许使用 hostPath 卷 ]

如果还不存在安全上下文限制,请创建此限制(请参见上文 " 配置代理以从 Kubernetes 收集数据 " 一节)。确保为安全上下文限制指定的命名空间和服务帐户与 Telegraf ReplicaSet 和 DemonSet 的命名空间和服务帐户匹配。kubectl describe scc talaf-hostaccess

grep serviceaccount kubectl -n ci-monitoring -describe RS talaf-RS

grep -i "Namespace" kubectl -n ci-monitoring describe RS tengraaf-RS

grep -i "service account" : kubectl -n ci-monitoring -describe DS ci-ds-ds-ds-ds"

我看到来自 Telegraf 的错误消息如下所示,但 Telegraf 确实启动并运行: Oct 11 14 : 23 : 41 IP-172-31-39-47 systemd1* :启动了插件驱动的服务器代理,以便向 InfluxDB 报告指标。Oct 11 14 : 23 : 41 IP-172-31-39-47 cailaf[1827] : time="2021-10-11T14 : 23 : 41Z" level=error msg="failed to create cache directory" 。/etc/celaf/.cache/snowvelc ,错误: mkdir /etc/tengraf/.ca ChE :权限被拒绝。ignored\n" func="gosnowchelf.( * defaultLogger ) .Errorf" fil="log.go : 120" Oct 11 14 : 23 : 41 IP-172-31 : 39-47 celaf[1827] : time="2021-10-11T14 : 23 : 41Z" level=error msg="failed to open.已忽略。打开 /etc/celaf/.cache/snowlife/OCSP_response_cache.json : no such file or directory\n" func="gosnowchlafe.( * defaultLogger ) .Errorf" fil="log.go : 120" Oct 11 14 : 23 : 41 IP-172-31-39-47 craaf[1827] : I-41Z-2021 :启动 Telegraf 1.19.3

这是一个已知的问题描述。请参见 "此 GitHub 文章" 有关详细信息:只要 Telegraf 启动并运行,用户就可以忽略这些错误消息。

在 Kubernetes 上,我的 Telegraf Pod 报告以下错误: " 处理 mountstats 信息时出错:无法打开 mountstats 文件: /hostfs/proc/1/mountstats ,错误: open /hostfs/proc/1/mountstats :权限被拒绝 "

如果启用并强制实施 SELinux ,则可能会阻止 Telegraf Pod 访问 Kubernetes 节点上的 /proc/1/mountstats 文件。要放宽此限制,请执行以下操作之一:•对于基于脚本的安装,编辑 crainf DS (kubectl edit DS crainaf-DS ),并将 "privileged : false" 更改为 "privileged : true" •对于基于操作员的安装,编辑代理(kubectl edit agent agent-monitoring-netapp ),然后将 "privileged-mode : false" 更改为 "privileged-mode :

在 Kubernetes 上,我的 Telegraf ReplicaSet Pod 报告以下错误: inputs.prometheus] 插件错误:无法加载密钥类型 /etc/Kubernetes , PKI/etcd/server.crt : /etc/Kubernetes , crt/etcd/server.key :打开 /etc/Kubernetes , pki/etcd/server.key : open /etc/Kubernetes , pki/etcd/server.key : no 此类文件或目录

可以从找到追加信息 "支持" 页面或中的 "数据收集器支持列表"