Skip to content
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

Support using DaemonSets #1103

Open
hifi opened this issue Sep 16, 2024 · 4 comments
Open

Support using DaemonSets #1103

hifi opened this issue Sep 16, 2024 · 4 comments
Labels
question Further information is requested

Comments

@hifi
Copy link

hifi commented Sep 16, 2024

It would be very useful to be able to run at least some of the components as DaemonSets instead of scaling them manually. We have dedicated nodes for vmstorage for example and a DaemonSet would allow automatically scaling when adding a new node.

If this is already possible I couldn't find it from the docs.

Thanks!

@f41gh7 f41gh7 added the question Further information is requested label Sep 16, 2024
@f41gh7
Copy link
Collaborator

f41gh7 commented Sep 16, 2024

Hello, currently it's not possible and we don't have such plans.

I'd recommend to take look at affinity rules for pod scheduling. It's possible to schedule pod per node with it.

@zekker6
Copy link
Contributor

zekker6 commented Jan 30, 2025

Support of using DaemonSets might be helpful for vmagent and vmauth for cases of reducing inter-AZ traffic.
For example, vmagent can scrape metrics only from targets within the same AZ (by using relabeling + propagation of properties via downward API) and than route metrics to the destination via vmauth running on the same node.

@f41gh7
Copy link
Collaborator

f41gh7 commented Jan 30, 2025

Support of using DaemonSets might be helpful for vmagent and vmauth for cases of reducing inter-AZ traffic. For example, vmagent can scrape metrics only from targets within the same AZ (by using relabeling + propagation of properties via downward API) and than route metrics to the destination via vmauth running on the same node.

It's already possible to get rid of cross-AZ traffic with labels. See https://tanmay-bhat.medium.com/reducing-inter-az-traffic-in-victoriametrics-with-zonekeeper-3bd7e1526796

Also I'd not recommend to run vmagent as daemonset if it uses non-local service-discovery. Like kubernetes_sd_configs. It may have significant impact on Kubernetes api-servers and probably lead to whole cluster downtime ( like chatGPT had).

@zekker6
Copy link
Contributor

zekker6 commented Jan 31, 2025

@f41gh7 There is another use-case where applications are pushing metrics. In this case apps could push to a local address and vmagent would push the data to the receiver after applying compression.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants