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

[Feature]: Change communication direction #490

Open
freedbygrace opened this issue Jan 25, 2025 · 2 comments
Open

[Feature]: Change communication direction #490

freedbygrace opened this issue Jan 25, 2025 · 2 comments
Labels
enhancement New feature or request

Comments

@freedbygrace
Copy link

Describe the feature you would like to see

One thought I have though is that in order for this to be highly scalable, you will have to construct a proper internal network structure, or for remote hosts, you have to rely on things like Tailscale, Wireguard, etc in order to make all this happen because this appears to use Server initiated communication. So that client has to be reachable. What about clients in remote networks where you do not control the network structure, etc.?

My recommendation would be to use a client-initiated communication so that clients behind other firewalls/NATs would make outbound/reverse connections to the server that could be sitting in the cloud on VPS or self-hosted with reverse proxy etc. The clients would collect and monitor their information, then send it to the server or use something like Centrifugo, RTT, MTT, etc, in order to have like a consistent messaging communication from the agent to the server. Ultimately, the experience would be the same on the server, but the communication plumbing would be different.

This would make clients more secure also, because no ports need to be open on each individual client for server-initiated communication.

Along with that, at some point in the future, servers can be synchronized or function as replicas for load balancing situations!

Describe how you would like to see this feature implemented

Image

@freedbygrace freedbygrace added the enhancement New feature or request label Jan 25, 2025
@henrygd
Copy link
Owner

henrygd commented Jan 25, 2025

I just want to compliment your work here. I wish every feature request was this detailed!

We have a discussion going on this topic in #51. The current plan is to use NATS, but that's not finalized.

It's the next major feature on my list so it shouldn't be too long. Hopefully by the end of February.

@freedbygrace
Copy link
Author

I am glad to contribute! Thank you for making this type of thing a reality and reducing the barrier of entry! I look forward to the update!

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

No branches or pull requests

2 participants