繁体   English   中英

Zabbix 6.0 Agent 不在 Kubernetes 中收集指标并且无法与服务器通信

[英]Zabbix 6.0 Agent doesn't collect metrics in Kubernetes and can't talk with server

在过去的几天里,我一直在 kubernetes 中设置 Zabbix Agent,但我一直坚持我认为最基本的事情。 我已经创建了一个全新的命名空间,在那里设置了 MySQL 并对其进行了配置,具有 zabbixUser、pass 和所有内容,我已经从这个Helm Chart 设置了 Zabbix Server。

这是它的值文件

zabbixserver:
  image:
    #repository: zabbix/zabbix-server-pgsql
    repository: "zabbix/zabbix-server-mysql" #https://hub.docker.com/r/zabbix/zabbix-server-pgsql
    tag: "ubuntu-6.0.3"

  DB_SERVER_HOST: "zabbix-mysql"
  DB_SERVER_PORT: "3306"

  # -- Extra environment variables. A list of additional environment variables. See example: https://github.com/cetic/helm-zabbix/blob/master/docs/example/kind/values.yaml
  #  taken from mysql config
  extraEnv:
    - name: "MYSQL_USER"
      value: "zabbixUser"
    - name: "MYSQL_PASSWORD"
      value: "zabbixPass"
    - name: "MYSQL_ROOT_PASSWORD"
      value: "dyEMnUK69d"
    - name: "MYSQL_DATABASE"
      value: "zabbix"

postgresql:
  enabled: false

zabbixproxy:
  enabled: false
    #  # The variable is used to specify debug level, from 0 to 5
    #  ZBX_DEBUGLEVEL: 3
    #  ZBX_PROXYMODE: 1
    #  ZBX_SERVER_HOST: 10.190.8.122

# Installs zabbix agent next on the same pod as server
zabbixagent:
  enabled: true
  env:
    - name: ZBX_DEBUGLEVEL
      value: 4


zabbixweb:
  image:
    repository: "zabbix/zabbix-web-nginx-mysql" #https://hub.docker.com/r/zabbix/zabbix-web-nginx-mysql
    #repository: zabbix/zabbix-web-nginx-psql #https://hub.docker.com/r/zabbix/zabbix-web-nginx-pgsql
    tag: "ubuntu-6.0.3"

# kubectl get services
  ZBX_SERVER_HOST: zabbix-server-zabbix-server
  DB_SERVER_HOST: zabbix-mysql
  DB_SERVER_PORT: 3306

  extraEnv:
    - name: "MYSQL_USER"
      value: "zabbixUser"
    - name: "MYSQL_PASSWORD"
      value: "zabbixPass"
    - name: "MYSQL_ROOT_PASSWORD"
      value: "dyEMnUK69d"
    - name: "MYSQL_DATABASE"
      value: "zabbix"

ingress:
  enabled: true
  hosts:
    - host: better-zabbix.genesis
      paths:
        - path: /
          pathType: Prefix
  ingressClassName: nginx-internal

注意:它托管在我公司的内部域中,MySQL 也用于测试目的,因此没有产品凭据。

我也配置了 DNS,所以一切如您所见。

在此处输入图像描述

现在我想从这个官方 helm chart 设置 Zabbix agent。

这里还有一个有用的链接,显示准备好的模板以帮助从 GKE 集群获取指标——但是,请注意,当您从 helm chart 设置 Zabbix 服务器时,他会内置它们。 所以我想如果你有一个旧版本并且在 VM 上,它会很有用。

这是代理的values.yaml

zabbixAgent:
  image:
    repository: zabbix/zabbix-agent
    tag: alpine-6.0.3
  env:
    - name: ZBX_SERVER_HOST
      value: 10.190.40.58 # after zabbix server was created, this is the IP of his pod
      #value: 127.0.0.1
      #value: "better-zabbix.genesis"

zabbixProxy:
  enabled: false
rbac:
  create: false
serviceAccount:
  create: false

现在我们来解决我遇到的问题

Every 2.0s: kubectl get pods -o wide                                                                                                       colgate.local: Sat Apr 16 15:54:05 2022

NAME                                               READY   STATUS    RESTARTS   AGE     IP             NODE                                 NOMINATED NODE   READINESS GATES
potato                                             1/1     Running   0          5h26m   10.190.4.102   gke-tools-single-nat-35d661ab-sf1c   <none>           <none>
zabbix-agent-7d4xv                                 1/1     Running   0          3h49m   10.222.0.59    gke-tools-single-nat-d4ec251a-hp7k   <none>           <none>
zabbix-agent-856lm                                 1/1     Running   0          3h46m   10.222.0.39    gke-tools-main-tools-bc42e123-6fpq   <none>           <none>
zabbix-agent-c5xtp                                 1/1     Running   0          3h47m   10.222.0.9     gke-tools-main-tools-bc42e123-ycgx   <none>           <none>
zabbix-agent-dn78k                                 1/1     Running   0          3h49m   10.222.0.98    gke-tools-single-nat-d4ec251a-i0a1   <none>           <none>
zabbix-agent-fbpzn                                 1/1     Running   0          3h49m   10.222.0.54    gke-tools-single-nat-d4ec251a-kxwn   <none>           <none>
zabbix-agent-gsvgt                                 1/1     Running   0          3h47m   10.222.0.51    gke-tools-main-tools-bc42e123-oc1i   <none>           <none>
zabbix-agent-h4bkn                                 1/1     Running   0          3h49m   10.222.0.50    gke-tools-single-nat-2dc0d382-1uv1   <none>           <none>
zabbix-agent-kube-state-metrics-5968c76968-6jb98   1/1     Running   0          3h59m   10.190.1.48    gke-tools-single-nat-d4ec251a-i0a1   <none>           <none>
zabbix-agent-pfs5s                                 1/1     Running   0          3h47m   10.222.0.55    gke-tools-single-nat-d4ec251a-4o43   <none>           <none>
zabbix-agent-plk7s                                 1/1     Running   0          3h46m   10.222.0.49    gke-tools-single-nat-35d661ab-xxsw   <none>           <none>
zabbix-agent-qm5c5                                 1/1     Running   0          3h48m   10.222.0.41    gke-tools-single-nat-35d661ab-m4ct   <none>           <none>
zabbix-agent-wk59p                                 1/1     Running   0          3h48m   10.222.0.5     gke-tools-single-nat-2dc0d382-zp2s   <none>           <none>
zabbix-agent-wl97k                                 1/1     Running   0          3h48m   10.222.0.88    gke-tools-main-tools-89255868-mxfl   <none>           <none>
zabbix-agent-z6vxh                                 1/1     Running   0          3h49m   10.222.0.46    gke-tools-single-nat-35d661ab-sf1c   <none>           <none>
zabbix-mysql-0                                     1/1     Running   0          3h59m   10.190.1.49    gke-tools-single-nat-d4ec251a-i0a1   <none>           <none>
zabbix-mysql-client                                1/1     Running   0          5h7m    10.190.0.215   gke-tools-single-nat-2dc0d382-zp2s   <none>           <none>
zabbix-server-zabbix-server-0                      2/2     Running   0          3h59m   10.190.2.99    gke-tools-single-nat-2dc0d382-1uv1   <none>           <none>
zabbix-server-zabbix-web-665c9b767-ssdt6           1/1     Running   0          3h59m   10.190.4.113   gke-tools-single-nat-35d661ab-sf1c   <none>           <none>

来自 zabbix-agent pod 的日志是这样的

3438519:20220416:135248.449 failed to accept an incoming connection: connection from "10.222.0.54" rejected, allowed hosts: "10.190.40.58"

那是什么意思呢? 在 zabbix-agent values.yaml我写到 zabbix server host 是

    - name: ZBX_SERVER_HOST
      value: 10.190.40.58

但是 zabbix-agent 字面上说它自己的 IP 不能被列入白名单? 这是什么意思呢?

另外,这些是来自 zabbix 服务器的日志

   208:20220416:135600.044 [ Kubernetes discovery ] ERROR: Incorrect JSON. Check debug log for more information.
   208:20220416:135600.045 [ Kubernetes discovery ] ERROR: Incorrect JSON. Check debug log for more information.
   226:20220416:135600.045 [ Kubernetes ] ERROR: Error: cannot get URL: Couldn't connect to server.
   208:20220416:135600.047 [ Kubernetes discovery ] ERROR: Incorrect JSON. Check debug log for more information.
   208:20220416:135600.048 [ Kubernetes discovery ] ERROR: Incorrect JSON. Check debug log for more information.
   226:20220416:135600.049 [ Kubernetes ] ERROR: Error: cannot get URL: Couldn't connect to server.
   208:20220416:135600.051 [ Kubernetes discovery ] ERROR: Incorrect JSON. Check debug log for more information.
   208:20220416:135600.052 [ Kubernetes discovery ] ERROR: Incorrect JSON. Check debug log for more information.

我在 zabbix-server 上设置的自动注册有效在此处输入图像描述

我们可以看到主机在此处输入图像描述

但问题仍然存在,代理无法从节点获取指标/数据在此处输入图像描述

我要补充一点,我用token配置了模板在此处输入图像描述

正如在页面底部的 Zabbix Setup 中说明中所写的那样。 另外,我更不知道的是这里的 Zabbix 配置部分 所有这些在此处输入图像描述 {$KUBE.API.ENDPOINT.URL}它们应该指向什么?

你们会给我任何提示让我开心,比如为什么看不到节点,为什么代理显然不能与服务器对话,以及我是否应该更改{$KUBE.API.ENDPOINT.URL}或保留它具有默认值。

{$KUBE.API.ENDPOINT.URL}这应该指向https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_SERVICE_PORT

我从正在运行的 pod 中获取值。 但是,我没有尝试在 Zabbix 中作为 env 值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM