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

安装或升级NetApp Kubernetes Monitoring Operator 之前

贡献者 netapp-alavoie

在安装或升级之前请阅读此信息"Kubernetes 监控操作员"

组件 需求

Kubernetes 版本

Kubernetes v1.20 及以上版本。

Kubernetes 发行版

AWS Elastic Kubernetes Service (EKS) Azure Kubernetes Service (AKS) Google Kubernetes Engine (GKE) Red Hat OpenShift Rancher Kubernetes Engine (RKE) VMware Tanzu

Linux 操作系统

Data Infrastructure Insights不支持以 Arm64 架构运行的节点。网络监控:必须运行Linux内核4.18.0或以上版本。不支持 Photon OS。

标签

Data Infrastructure Insights支持监控运行 Linux 的 Kubernetes 节点,通过指定 Kubernetes 节点选择器来查找这些平台上的以下 Kubernetes 标签:Kubernetes v1.20 及以上版本:Kubernetes.io/os = linux Rancher + cattle.io 作为业务流程/Kubernetes 平台:cattle.io/os = linux

命令

curl 和 kubectl 命令必须可用;为了获得最佳效果,请将这些命令添加到 PATH。

连接

kubectl cli 配置为与目标 K8s 集群通信,并与您的Data Infrastructure Insights环境建立 Internet 连接。如果您在安装过程中使用了代理,请按照"配置代理支持"操作员安装部分。为了准确审计和数据报告,请使用网络时间协议 (NTP) 或简单网络时间协议 (SNTP) 同步代理计算机上的时间。

其他

如果您在 OpenShift 4.6 或更高版本上运行,则必须遵循"OpenShift 说明"除了确保满足这些先决条件之外。

API 令牌

如果您正在重新部署 Operator(即您正在更新或替换它),则无需创建新的 API 令牌;您可以重新使用以前的令牌。

开始之前需要注意的重要事项

如果你正在跑步代理人,有一个自定义存储库或正在使用OpenShift,请仔细阅读以下章节。

另请参阅权限

配置代理支持

您可以在租户的两个地方使用代理来安装NetApp Kubernetes 监控操作员。这些可能是相同或独立的代理系统:

  • 执行安装代码片段(使用“curl”)期间需要代理,以将执行代码片段的系统连接到您的Data Infrastructure Insights环境

  • 目标 Kubernetes 集群与您的Data Infrastructure Insights环境进行通信所需的代理

如果您对其中一个或两个都使用代理,则要安装NetApp Kubernetes 操作监视器,您必须首先确保您的代理配置为允许与您的Data Infrastructure Insights环境进行良好的通信。例如,从您希望安装 Operator 的服务器/虚拟机,您需要能够访问Data Infrastructure Insights并能够从Data Infrastructure Insights下载二进制文件。

对于用于安装NetApp Kubernetes Operating Monitor 的代理,在安装 Operator 之前,请设置 http_proxy/https_proxy 环境变量。对于某些代理环境,您可能还需要设置 no_proxy environment 变量。

要设置变量,请在安装NetApp Kubernetes Monitoring Operator*之前*在系统上执行以下步骤:

  1. 为当前用户设置 https_proxy 和/或 http_proxy 环境变量:

    1. 如果正在设置的代理没有身份验证(用户名/密码),请运行以下命令:

       export https_proxy=<proxy_server>:<proxy_port>
      .. 如果正在设置的代理确实具有身份验证(用户名/密码),请运行以下命令:
      export http_proxy=<proxy_username>:<proxy_password>@<proxy_server>:<proxy_port>

对于用于 Kubernetes 集群与Data Infrastructure Insights环境通信的代理,请在阅读所有这些说明后安装NetApp Kubernetes 监控操作员。

在部署NetApp Kubernetes Monitoring Operator 之前,请配置 operator-config.yaml 中 AgentConfiguration 的代理部分。

agent:
  ...
  proxy:
    server: <server for proxy>
    port: <port for proxy>
    username: <username for proxy>
    password: <password for proxy>

    # In the noproxy section, enter a comma-separated list of
    # IP addresses and/or resolvable hostnames that should bypass
    # the proxy
    noproxy: <comma separated list>

    isTelegrafProxyEnabled: true
    isFluentbitProxyEnabled: <true or false> # true if Events Log enabled
    isCollectorsProxyEnabled: <true or false> # true if Network Performance and Map enabled
    isAuProxyEnabled: <true or false> # true if AU enabled
  ...
...

使用自定义或私有的 Docker 仓库

默认情况下, NetApp Kubernetes 监控操作员将从Data Infrastructure Insights存储库中提取容器镜像。如果您有一个 Kubernetes 集群用作监控目标,并且该集群配置为仅从自定义或私有 Docker 存储库或容器注册表中提取容器映像,则必须配置对NetApp Kubernetes 监控操作员所需容器的访问权限。

从NetApp Monitoring Operator 安装图块运行“Image Pull Snippet”。此命令将登录Data Infrastructure Insights存储库,为操作员提取所有图像依赖项,并退出Data Infrastructure Insights存储库。出现提示时,输入提供的存储库临时密码。此命令下载操作员使用的所有图像,包括可选功能。请参阅下文了解这些图像的用途。

核心 Operator 功能和 Kubernetes 监控

  • netapp-监控

  • kube-rbac-代理

  • kube 状态指标

  • 电讯报

  • distroless-root 用户

事件日志

  • 流利位

  • kubernetes 事件导出器

网络性能和地图

  • ci-net-观察者

根据您的公司政策将操作员 docker 镜像推送到您的私有/本地/企业 docker 存储库。确保存储库中这些图像的图像标签和目录路径与Data Infrastructure Insights存储库中的一致。

编辑 operator-deployment.yaml 中的 monitoring-operator 部署,并修改所有镜像引用以使用您的私有 Docker 存储库。

image: <docker repo of the enterprise/corp docker repo>/kube-rbac-proxy:<kube-rbac-proxy version>
image: <docker repo of the enterprise/corp docker repo>/netapp-monitoring:<version>

编辑 operator-config.yaml 中的 AgentConfiguration 以反映新的 docker repo 位置。为您的私有存储库创建一个新的 imagePullSecret,有关更多详细信息,请参阅 https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/

agent:
  ...
  # An optional docker registry where you want docker images to be pulled from as compared to CI's docker registry
  # Please see documentation for link:task_config_telegraf_agent_k8s.html#using-a-custom-or-private-docker-repository[using a custom or private docker repository].
  dockerRepo: your.docker.repo/long/path/to/test
  # Optional: A docker image pull secret that maybe needed for your private docker registry
  dockerImagePullSecret: docker-secret-name

OpenShift 说明

如果您在 OpenShift 4.6 或更高版本上运行,则必须编辑 operator-config.yaml 中的 AgentConfiguration 以启用 runPrivileged 设置:

# Set runPrivileged to true SELinux is enabled on your kubernetes nodes
runPrivileged: true

Openshift 可能会实施额外的安全级别,从而阻止对某些 Kubernetes 组件的访问。

权限

如果您正在监控的集群包含没有 ClusterRole 的自定义资源,"要查看的聚合" ,您将需要手动授予操作员访问这些资源的权限,以便使用事件日志对其进行监控。

  1. 在安装之前编辑 operator-additional-permissions.yaml,或者在安装之后编辑资源 ClusterRole/<namespace>-additional-permissions

  2. 使用动词 ["get", "watch", "list"] 为所需的 apiGroups 和资源创建新规则。请参阅 \ https://kubernetes.io/docs/reference/access-authn-authz/rbac/

  3. 将更改应用到集群