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

Make Harness work with load balancer #129

Open
pferrel opened this issue Jan 21, 2019 · 1 comment
Open

Make Harness work with load balancer #129

pferrel opened this issue Jan 21, 2019 · 1 comment
Milestone

Comments

@pferrel
Copy link
Collaborator

pferrel commented Jan 21, 2019

Synchronize Harness server means that all must know when one has updated the metastore. I think this means minimally:

  • one Harness server needs to know all others. maybe by one being the temp master who maintains the db of all others? Is there a simpler way? Like using Etcd or Consul?
  • load balancing handled by Kubernetes or regular load balancer but sync handled by the Harness cluster
  • Harness could have a sync REST API, which tells Harness to re-sync with the metastore
  • sync sent to all harness servers when:
    • any server executes harness add, harness update, harness delete, or ???

Not sure of what else should be done. Any cluster of Harness needs to keep track if all others so probably a master voting structure like ES, where one keeps the DB of all other server, and if the master is not available another is voted to take over.

This seems pretty complicated so is there an easier solution?

Are there signaling DBs that will notify listeners when something changes?

@pferrel pferrel added this to the 0.5.2 milestone Apr 17, 2020
@pferrel pferrel modified the milestones: 0.5.2, 1.0.0 Sep 4, 2020
@pferrel
Copy link
Collaborator Author

pferrel commented Sep 4, 2020

we have a branch where this is working by using Etcd for pubsub of engine changes. This allows multiple Harness instances to coordinate the only REST operation that changes Harness state -- namely harness add, harness update, harness delete.

This is being moved to the Harness v 1.0 release, coming after the 0.6.0 release.

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

No branches or pull requests

1 participant