grafana / grafana-zabbix

Zabbix plugin for Grafana dashboard
http://play.grafana-zabbix.org
Apache License 2.0
2.07k stars 458 forks source link

Grafana-Zabbix App fails to install when using helm chart #1615

Open MaxDiOrio opened 1 year ago

MaxDiOrio commented 1 year ago

Not sure if this is a helm issue or a plugin issue.

What happened:

I have added the plugins we use into the helm chart for Grafana as a first step to moving to IaC. After upgrading the helm chart with the new values file, the deployed pod gives the following error for the alexanderzobnin-zabbix-app plugin. Other plugins in the config.yaml work fine: grafana-synthetic-monitoring-app grafana-worldmap-panel grafana-oncall-app

grafana ✔ Downloaded and extracted grafana-oncall-app vv1.2.7 zip successfully to /var/lib/grafana/plugins/grafana-oncall-app grafana grafana Please restart Grafana after installing plugins. Refer to Grafana documentation for instructions if necessary. grafana │ grafana Error: ✗ failed to extract plugin archive: unlinkat /var/lib/grafana/plugins/alexanderzobnin-zabbix-app/.nfs0000000000037ff20090c9b3: device or resource busy

What you expected to happen:

Grafana would download and extract the plugin and continue loading the pod.

If I do not attempt to add the plugin into the values file and instead deploy normally and manually install the plugin in the Grafana UI, it installs fine.

How to reproduce it (as minimally and precisely as possible): Add the following to the helm values file:

plugins:

Anything else we need to know?:

Environment:

Grafana version: 9.4.3
Data source type & version: Zabbix 4.3.1
OS Grafana is installed on: Helm deployed
User OS & Browser:
Grafana plugins: Zabbix 4.3.1
Others:
MaxDiOrio commented 1 year ago

This issue appears to only happen when upgrading a pod with this app already installed in Grafana and you switch over to having it install via helm. Scaling down to zero pods, then upgrading via helm works. I'm guessing the files are in use in the existing pod and aren't being released.

Why this works for the other plugins I'm not sure though.