Awesome NomadDemo and Learning Resources

nairnavin/practical-nomad-consul

⭐ 61 HCL added to this list on 2024-12-11 repository created 2021-08-04

This project is a comprehensive tutorial and practical guide for setting up a realistic multi-tier application using HashiCorp Nomad and Consul. It leverages the classic Spring Boot Petclinic application to demonstrate how to deploy and manage a multi-tier architecture within a Nomad cluster integrated with Consul service mesh capabilities. The tutorial covers various advanced features such as service mesh with Envoy sidecars, ingress and terminating gateways, load balancing with Fabio, and secure service-to-service communication using mTLS and Consul intentions. The project is divided into multiple parts, starting with setting up an Nginx server with AngularJS content, a Spring Boot REST API, and a PostgreSQL database external to the Nomad cluster. It includes detailed instructions for deploying these components on Nomad with Envoy sidecars to enable service mesh and secure communication. The tutorial also guides on configuring terminating gateways to route traffic outside the cluster and ingress gateways for internal load balancing and secure communication. Further parts of the tutorial introduce continuous deployment pipelines using Jenkins and JFrog, monitoring and autoscaling with Prometheus and Grafana, managing application configurations with Consul KV store, and setting up a high-availability RabbitMQ cluster within Nomad. The project emphasizes practical, hands-on learning with a focus on realistic infrastructure setup using Vagrant and VirtualBox for local development environments, though it can be adapted for cloud deployments. This repository is valuable for developers and DevOps engineers looking to gain practical experience with Nomad and Consul in deploying and managing complex applications with service mesh, secure communication, and scalable infrastructure. It also provides insights into integrating various tools and technologies to build a robust, production-like environment for microservices applications.

https://github.com/nairnavin/practical-nomad-consul

autoscalingconsulconsul-kv-storecontinuous-deploymentenvoyfabiografanahashicorp-nomadingress-gatewayjenkinsjfrogload-balancermonitoringmtlsmulti-tier-applicationnomadpetclinicpostgresqlprometheusrabbitmqservice-meshspring-bootterminating-gatewayvagrantvirtualbox

Also in Demo and Learning Resources

thangchung/go-coffeeshop

go-coffeeshop is an event-driven microservices demo application built with Golang, deployed using HashiCorp Nomad, Consul Connect, Vault, and Terraform, demonstrating modern microservices architecture and deployment practices.

star3am/hashiqube

HashiQube is an all-in-one hands-on DevOps lab that runs all HashiCorp products including Nomad, providing a versatile environment for learning, practicing, and demonstrating infrastructure and security tools in cloud or local setups.

fhemberger/nomad-demo

A Vagrant-based demo environment for running and exploring HashiCorp Nomad, Consul, and Vault with integrated service discovery, workload orchestration, and monitoring tools.

thangchung/coffeeshop-on-nomad

A .NET microservices coffeeshop application deployed and orchestrated on HashiCorp Nomad with Consul Connect for service mesh and Docker containers.