Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nunchistudio/hashibox
Simulate a highly-available Cloud Platform with Consul, Nomad, and Vault. OSS & Enterprise versions supported.
https://github.com/nunchistudio/hashibox
bolt cloud cloud-platform consul consul-connect devops docker hashicloud hashicorp hashistack hcp localstack nomad platform-engineering puppet-bolt vagrant vault waypoint
Last synced: 7 days ago
JSON representation
Simulate a highly-available Cloud Platform with Consul, Nomad, and Vault. OSS & Enterprise versions supported.
- Host: GitHub
- URL: https://github.com/nunchistudio/hashibox
- Owner: nunchistudio
- License: mit
- Created: 2022-01-13T09:12:26.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-02-14T17:08:03.000Z (9 months ago)
- Last Synced: 2024-08-03T19:09:26.467Z (3 months ago)
- Topics: bolt, cloud, cloud-platform, consul, consul-connect, devops, docker, hashicloud, hashicorp, hashistack, hcp, localstack, nomad, platform-engineering, puppet-bolt, vagrant, vault, waypoint
- Language: Shell
- Homepage: https://nunchi.studio/hashibox
- Size: 12.2 MB
- Stars: 86
- Watchers: 5
- Forks: 18
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# HashiBox
HashiBox is a local environment to simulate a highly-available cloud with
[Consul](https://www.consul.io/), [Nomad](https://www.nomadproject.io/), and
[Vault](https://www.vaultproject.io/). OSS and Enterprise versions of each
product are supported. Consul Connect is enabled and uses Vault as CA provider.It also installs [Docker](https://www.docker.com/) for running Nomad's jobs inside
containers.It leverages [Vagrant](https://www.vagrantup.com/) for virtualization, and
[Bolt](https://puppet.com/docs/bolt/) for maintenance automation across nodes.The main goal of HashiBox is to provide a local setup respecting environment
parity for simulating a Cloud Platform from end-to-end before going in production.**Useful links:**
- [Get started](https://nunchi.studio/hashibox)**Vagrant providers supported:**
- `parallels`
- `virtualbox`
- `vmware_desktop`**Architectures supported:**
- `amd64`
- `arm64`**Notes about the environment:**
- ACLs are enabled and automatically bootstrapped in Consul and Nomad. To simplify
the setup, the bootstrapped tokens are used in favor of scope-defined ones.
- To simplify the setup, TLS across Consul, Nomad, and Vault is not configured.
- Only Vault *server* is leveraged. Vault agents in *client* mode are not setup
since we don't use it. Feel free to make a pull request to support it.
- We could have leveraged Vagrant's *sync folders* instead of Bolt for file
sharing with machines. Bolt is a better choice for *production-practices*
but also for automating scripts across nodes.## Summary schema
## Screenshots
Consul
![Consul Services](./assets/screenshots/consul-services.png)
![Consul Nodes](./assets/screenshots/consul-nodes.png)
![Consul Tokens](./assets/screenshots/consul-tokens.png)
![Consul Policies](./assets/screenshots/consul-policies.png)Nomad
![Nomad Jobs](./assets/screenshots/nomad-jobs.png)
![Nomad Clients](./assets/screenshots/nomad-clients.png)
![Nomad Servers](./assets/screenshots/nomad-servers.png)
![Nomad Tokens](./assets/screenshots/nomad-tokens.png)
![Nomad Topology](./assets/screenshots/nomad-topology.png)Vault
![Vault Secrets](./assets/screenshots/vault-secrets.png)
![Vault Access](./assets/screenshots/vault-access.png)
## License
Repository licensed under the [MIT License](./LICENSE.md).