megabyte-labs / install.doctor

A glorious combination of application / theme settings and a performant cross-platform, desktop-oriented software suite.
https://megabyte.space
Other
99 stars 22 forks source link

Nomad / Consul Research #81

Open ProfessorManhattan opened 1 year ago

ProfessorManhattan commented 1 year ago

💡 Feature/Idea

Research how we can leverage Nomad, Vault and Consul in our system. I do not know much about them but I believe Consul can be used for service discovery (instead of having to rely on DNS records in CloudFlare) and Nomad can be used for task delegation. Please do research and report how we can integrate these services fully.

Use ChatGPT, along with normal research, to research / report on this.

:thumbsup: Can you contribute?

No response

enggnr commented 1 year ago

Consul is a service networking solution that has service discovery, service mesh among other capabilities. Consul can also provide basic DNS services.

Using these features, Consul and Terraform can be used for Network Infra Automation (using Consul-Terraform-Sync). This uses Terraform to make infra changes in response to changes in services' state.

Nomad is a workload orchestrator capable of managing contianerized as well as non-containerized workloads. Nomad can be used as an alternative to Kubernetes or alongside Kubernetes.

Nomad can be integrated with Consul to consume Service discovery offered by Consul. In this case, consul needs to be installed alongside Nomad.

Both of these tools have ways to execute commands. This can be used to execute commands to join, say, GlusterFS nodes to form a cluster.

The above can be beneficial in case of an application that is micro-services based. For a use case similar to ours - performing (initial) configuration - these are overkill. The effort to setup and maintain the tools far outweighs the benefits. For e.g., the system requirements for Nomad is high for the use case. In addition to this, the changes to the infra we are deploying is not very frequent, the system will be underutilized.

Configuring Nomad and Consul as part of our automation can be something that can be looked at. It may help if a user wants these features specifically.