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

Add support for node_exporter on MacOS #100

Open
zhan9san opened this issue May 9, 2023 · 7 comments
Open

Add support for node_exporter on MacOS #100

zhan9san opened this issue May 9, 2023 · 7 comments

Comments

@zhan9san
Copy link

zhan9san commented May 9, 2023

Hi,

Thanks for your great work on this project and I am very glad that the node_exporter Ansible role is active again.

Would it be possible to add support for node_exporter on MacOS?

Reference: https://github.com/devops37/ansible-node-exporter/pull/1/files

@gardar
Copy link
Member

gardar commented May 9, 2023

I don't have a problem with adding support for MacOS personally, but @SuperQ and @paulfantom might have other ideas.

But rather than adding support for just MacOS I would like to see the implementation done in a way that we can also support other non-systemd systems, preferably without adding many system specific workarounds, and of course we would need to be able to test everything in the CI.
(I actually proposed adding support for non-systemd service managers in the past.)

@zhan9san
Copy link
Author

zhan9san commented May 9, 2023

Thanks for your attention.

Do you have concerns if we perform a lift-shit migration of this PR, https://github.com/devops37/ansible-node-exporter/pull/1/files?

@SuperQ
Copy link
Contributor

SuperQ commented May 9, 2023

Previously we intended that the roles only supported systemd, as it was complicated to support multiple supervisors.

@gardar
Copy link
Member

gardar commented May 11, 2023

Before we increase the maintenance overhead by adding support for other supervisors (or do any other major changes) I'd like to merge some of the common tasks as proposed in #64
I've been experimenting with this a bit, just have to find some time to finish it.

@zhan9san
Copy link
Author

@SuperQ @gardar

Previously we intended that the roles only supported systemd, as it was complicated to support multiple supervisors.

I agree with you that it would make this project more complicated. But it's a real requirement for us.

Unlike sysvinit which is deprecated, Launchd is widely used on MacOS.

The systemd is only supported on Linux-like OS, I have many MacOS servers need monitoring.

If you don't mind, I'd like to submit a PR to add support for node_exporter on MacOS.

@SuperQ
Copy link
Contributor

SuperQ commented May 18, 2023

If we're going to support this, we need to commit to supporting launchd/MacOS on all modules for consistency.

For the launchd config files, I wonder if community.general.xml would be useful for the config.

@zhan9san
Copy link
Author

@SuperQ

Thanks for your attention.

I don't think it's a good idea to support all modules. Or we can support the rest modules gradually.

Currently, we only need to deploy node_exporter on MacOS, and hardly anyone will want to deploy prometheus/alertmanager on MacOS.

For the launchd config files, the easiest way to do it is by template engine. It follows what we have done in system unit files

It has been working well on my forked repo.

Let me know what you think.

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

No branches or pull requests

3 participants