Host (running Veeam) sending of piggyback data times out

Hi,

we are running Checkmk Enterprise 2.1.0p19 on Debian 11.4.0 and have the problem that during the nightly Veeam backup, the sending of piggyback data from the Veeam host (for the VMs being backed up) is timing out (sometimes, not every night).

The exact message is: “[piggyback] Successfully processed from source ‘vCenter-Host’, Source ‘Veeam-Host’ not sending piggyback data, Missing monitoring data for plugins: veeam_clientWARN , execution time 0.0 sec”.

I guess that during the actual backup process the load of the Veeam host is (sometimes) quite high and therefore the host is not sending the data to Checkmk quickly enough.

What I tried to do is creating a rule “Processing of Piggybacked Host Data” with a custom “Period for outdated piggybacked host data” increased from 1 minute to 7 mins.The condition of the rule restricts it to explicit hosts vCenter-Host and Veeam-Host.

Still the messages are generated, first a “OK → WARN”-, one minute later a “WARN → OK”-, some time later a “Started Flapping”- and some more time later a “Stopped Flapping”-message. This leads to several hundred messages/mails.

Is there any way to configure this better?

Best regards,
UT2019

The plugin sometimes runs into timeout on busy servers. Try and cache that plugin (“Set cache age for plugins and local checks”), 5mins should be OK.

ttr

Thank you for the hint!

I added a rule “Set cache age for plugins and local checks” restricted to the explicit host “Veeam-Host” and configured it this way:
Type: Plugin
Script Pattern (required): veeam_client
Max Cache Age: 300 Seconds

But sadly it did not change anything.

So I guess I configured it the wrong way?

Change script pattern to veeam_
After activation you have to bake a new agent for the host. If not using autoupdater: install manually on host. Then you should be fine.

ttr

I changed the script pattern to “veeam_”, applied the changes, baked a new agent and installed the agent for the “Veeam-Host” (Agent bakery shows that 300 seconds cache age for veeam_-script pattern are correctly configured for that host).

But this night another >400 messages were generated as described in the first post :frowning:

Best regards,
UT2019

Try and run the plugin on the host manually, check output and runtime. I this is OK, inspect agent data:

cmk -d

and search for plugin data.

ttr

Thanks for your support!

I executed “powershell.exe .\veeam_backup_status.ps1” in the plugin-directory on the Veeam-Host. The output looks fine, the execution took approximately 65 seconds (there was no load on the Veeam-Host).

Executing “cmk -d Veeam-Host” on the checkmk-server shows valid data from the backup jobs.

So the communication itself seems to be working correctly?

Best regards,
UT2019

Hi @UT2019

as @ttr already mentioned the Veeam plugin execution can be very slow depending on the size of the Veeam information.

I would suggest to skip the bakery and head straight to the C:\ProgramData\checkmk\agent\check_mk.user.yml :wink:

There you should configure the following in the plugin section:

plugins:
    enabled: yes
    execution:
        - pattern: $CUSTOM_PLUGINS_PATH$\veeam_backup_status.ps1
          async: yes
          timeout: 120
          cache_age: 300
          retry_count: 2

The most important part is the async:yes

After saving the changes to the user.yml you need to restart the checkmk service on the host.
If you still run into issues after your changes you should check the agent config with the following command:

"C:/Program Files (x86)/checkmk/service/check_mk_agent.exe" showconfig

In case you can’t find your user settings in there you have to check your config again. YAML can be annoying sometimes. :slight_smile:

I hope this fixes your problem.

Regards
Norm

Hi,

I edited check_mk.user.yml as described by you. I added the pattern-block above the existing pattern-block for 'CUSTOM_PLUGINS_PATH$\*.*'.

Before and after restarting the service I executed check_mk_agent.exe showconfig to view the new configuration, but it did not change. I removed the changes and added all the changes by using the commented lines above, copying, uncommenting and changing them to make sure the parsing does not fail because of illegal blanks, tabs, etc.

I expected that showconfig shows differences, but it does not. The change with veeam_backup_status.ps1 does not exist in the config shown.

Is there a log which shows what went wrong during parsing of the yaml-file?

Best regards,
UT2019

Hi @UT2019
if you added it to the existing config please make sure that the _ is removed infront of the _plugins: section in the yaml. Otherwise it won’t work. :slightly_smiling_face:

If you already made that change and it’s still not working please provide the user.yaml here.

Regards
Norm

Hi @Norm,

oh I am sorry, I was actually blind. The configuration file contained _execution instead of execution. I changed it to execution and now showconfig shows the changes actually.

I will report back tomorrow after the backup is run :wink:

Best regards,
UT2019

1 Like

Finally it seems to work, yay! There were no (unnecessary) mails from checkmk this night.

Thanks for your help!

Best regards,
UT2019

Good to hear!

You can mark the post as a solution to help people in the future.

Happy Monitoring! :grinning_face_with_smiling_eyes: