page-fault-in-nonpaged-area / nomadic

One-click Consul+Nomad cluster builder

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Nomadic

Nomadic is an all-in-one Consul+Nomad cluster builder. Nomadic produces minimal clusters ideal for testing and experiments with Nomad as a low end, low maintenance kubernetes alternative.

At this time Nomadic is not 100% compliant with the reference architectures for Consul or Nomad. High-availability is not available. Not suitable for production. Use with caution.

DISCLAIMER: Please read LICENSE. Nomadic and its authors are NOT responsible for damages or data losses of any kind as a result of modifying or using this tool.

Prerequisites:

What you need:

Local:

One (1) Mac or Linux box with:

Cluster:

  • At least 5 machines, virtual or physical:
    • Has publicly IP
    • Has internal IP (dependent on your cloud provider)
    • All 5+ reachable with one another
    • Root login permitted
  • .ssh/id_rsa.pub of local machine on the 5+ machines.

How to use:

  1. Fill in config.yml (config.example.yml provided)
  2. Run install.sh
  3. Run ui.sh (preconfigured hashi-ui command) to see your Nomad cluster in action!

How it works:

Events happen in this approximate order:

  • Bootstrapper:
    1. Reset machine to base image (hetzner example included)
    2. Install common tools.
  • Build consul cluster
    1. Install specific tools.
    2. Approximately follow the deployment guide.
    3. Transfer certs, keys, outputs to local.
  • Build Nomad cluster
    1. Install specific tools.
    2. Approximately follow the deployment guide.
    3. Transfer certs, keys, outputs to local.
    4. Enable Consul Connect.
    5. Install and configure weavenet.

NOTE: The output folder contains certs and keys with read/write access to your cluster.

Q&A's:

Why Weave?

Weave makes it flexible to run apps that require fixed and/or independent IPs per docker container. For example, typesense in high availability.

Why not terraform?

Insufficient time and resources to make compatible with minor differences across different cloud providers (you can help me change that!). Terraform can provision nomadic with virtual or physical machines. When ready, template your terraform outputs into config.yml and run install.sh.


Made with ❤️ in Toronto, Canada.

If you like what you see, feel free to tip me a few Dogecoins 🐶🚀 !

Dogecoin

DAygAquUdp6KxQ2bzzudto4TrXzXLqtjbF

About

One-click Consul+Nomad cluster builder

License:MIT License


Languages

Language:Shell 100.0%