New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build a Snap package from source #17328
base: master
Are you sure you want to change the base?
Conversation
This build takes cues from `contrib/debian` and also directly adjusts the prefix to `/snap/netdata/current` and adjusts the default config to only the needed changes to point to `/var/snap/netdata/common` for config and `/current` for everything that goes into `/var`. Additionally, a lot of runtime dependencies are taken from snapcraft hints.
For testing this out: Initial install
Note This uses Installing the Snap package automatically runs the Agent as a systemd service Granting additional permissionsAs Snap packages run in a tightly controlled confinement environment, the agent needs to be granted additional permissions in order to access certain system resources. This is done through so-called connections. The below script enables all currently available connections. There are some comments in the #!/bin/sh
sudo snap connect netdata:hardware-observe
sudo snap connect netdata:docker-support
sudo snap connect netdata:kubernetes-support
sudo snap connect netdata:log-observe
sudo snap connect netdata:login-session-observe
sudo snap connect netdata:mount-observe
sudo snap connect netdata:network-bind
sudo snap connect netdata:network-observe
sudo snap connect netdata:network-setup-observe
sudo snap connect netdata:system-observe
sudo snap connect netdata:time-control After changing connections, the Agent may have to be restarted to take full effect: sudo systemctl restart snap.netdata.agent ConfigurationUpon install, the initial configuration from the package is populated into Data filesData files are stored in |
- -DENABLE_PLUGIN_PERF=On | ||
- -DENABLE_PLUGIN_SLABINFO=On | ||
- -DENABLE_PLUGIN_SYSTEMD_JOURNAL=On | ||
- -DENABLE_PLUGIN_XENSTAT=On |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don’t think it’s possible for a Snap package to access the required interfaces for this plugin to work, no matter what connections are made, so we should probably just disable it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You mean Xen specifically? Yeah, I haven't gotten to testing that and will indeed disable it if that is indeed the case.
Fortunately, many things do work. I'm currently trying to get eBPF working properly, but here too, some interfaces don't appear to be exposed and may require putting in a ticket with snapd.
No description provided.