#No quota data in nabox
1 messages · Page 1 of 1 (latest)
Hi Lorne, Zapi or Rest? Quota is one of the few templates that is different between Zapi and Rest. Most templates use the same name, but Quota is slightly different. The ZAPI template was created a long time ago and did two things: collected qtree and quota metrics.
When we started building a Rest template, we decided to separate those metrics into their respective templates because that is clearer and allows customers to collect one without the other
I'm running 9.15.1p3, so I'd prefer rest.
can you grab a support bundle and upload to https://upload.nabox.org/goby-vinu-besy ?
Support bundle uploaded.
BTW, I did create a quota.yaml file at /etc/nabox/harvest/user/rest/9.12.0/ but still no quota details on the dashboard.
thanks, we'll take a look
you should not need to create a quota.yaml file, unless you are trying to modify the default template - the default exists at /data/packages/harvest/conf/rest/9.12.0/quota.yaml
Ah, looks like you did modify the original to filter on type=tree|user. Your template is also missing volume.uuid as shown in the screenshot, but that missing counter will cause a different issue, not the one you are seeing.
I can see from the log files that the Rest:Quota collector is running fine for both pollers. The collector logs "no instances, entering standby"
From a machine that has curl installed, please run the following replacing $user, $pass, and $ip with the appropriate values and upload the quota.json file to the same share.
curl -s -k -u $user:$pass 'https://$ip/api/storage/quota/reports?return_records=true&return_unmatched_nested_array_objects=true&max_records=1000000&return_timeout=120&&type=tree|user&fields=qtree.name,volume.name,svm.name,index,type,space,files' | tee quota.json
json file has been uploaded
thanks! all of those quotas are of type=user. I don't think your template is being used. Let's fix that.
Please add the line I mentioned above to your template, etc/nabox/harvest/user/rest/9.12.0/quota.yaml
- ^^volume.uuid => volume_uuid
Then you need to tell Harvest to use your template. You want to add the following line to your etc/nabox/harvest/user/rest/custom.yaml
Quota: quota.yaml similar to what you already have for NFSClients and Volume
Do I need to restart harvest?
yes, after make those template changes. Restart by typing dc restart havrest
Still no data in the dashboard. I beleive 20 minutes have elapsed since I restarted harvest.
can you grab another support bundle and upload? It will include the startup sequence and we'll be able to see which templates are loaded
bundle has been uploaded.
thanks
I see the problem - your etc/nabox/harvest/user/restperf/custom.yaml has a mistake that causes nabox to fail to merge templates. Even though the bug is in the restperf template, the rest template will also not be merged. I can see that the out-of-the-box Quota template is being loaded, not your custom one.
246741:{"log":"time=2025-05-19T18:14:55.451Z level=ERROR source=havrest.go:49 msg="unable to merge config" error="yaml: unmarshal errors:\n line 4: cannot unmarshal !!seq into string"\n","stream":"stdout","time":"2025-05-19T18:14:55.452426978Z"}
try removing or moving etc/nabox/harvest/user/restperf/custom.yaml out of the way, then do another dc restart havrest then wait 5m and you should see your rest template load
I renamed custom.yaml to custom.yaml.orig, restarted, waited 5 minutes, and still no data. I just uploaded a new support bundle.
thanks!
your custom quota.yaml is still not being load. let's try a full restart with dc restart, wait 5 minutes and then check
Still no luck. Support bundle uploaded.
Let's try this. Rename your etc/nabox/harvest/user/rest/9.12.0/quota.yaml to etc/nabox/harvest/user/rest/9.12.0/custom-quota.yaml
and then edit your etc/nabox/harvest/user/rest/custom.yaml file to match the new name. So it should look like
objects:
NFSClients: nfs_clients.yaml
Volume: custom_volume_flexgroup.yaml
Quota: custom-quota.yaml
# CIFSSession: cifs_session.yaml
Then dc restart havrest and wait 5m 🤞
Success!! Thank you for the help.
Your welcome. This is something that we'll talk to @civic onyx about improving. Nabox's confpath order should be reversed. Today, it is not possible to override a built-in template if you name your custom template the same as the built-in one
I need this file to enable another feature. Can you tell me where's the mistake that you mentioned?
Here's the file contents:
collector: RestPerf
objects:
Volume:
- custom_volume_flexgroup.yaml
- custom_volume.yaml
It should have a similar shape as your etc/nabox/harvest/user/rest/custom.yaml.
objects:
NFSClients: nfs_clients.yaml
Volume: custom_volume_flexgroup.yaml
Quota: quota.yaml
Which template are you trying to enable in RestPerf?
Enable top clients/files - https://github.com/NetApp/harvest/discussions/3130
The instructions linked there for nabox4 should work for you
Yes, but yesterday you said there was a mistake in my restperf/custom.yaml file. The instructions call for this file, so I'd like to correct the mistake before moving forward. The file is currently renamed and not used.
understood - your restperf custom.yaml was never used because it has a list where a map is expected. Given that it was never used, it's fine to remove it and start over with what the Top Clients documentation suggests.