SE Hangout

Solutions Engineering Hangout: Up and running with heterogeneous apps on Nomad

Whether you're working with a legacy app or a new one, Nomad can run it easily, efficiently, and reliably. See how simple it is to try out Nomad.

Speakers

Nomad is an open source cluster scheduler that handles resource management and node failures across server fleets that range into the thousands. The number of containers it can deploy exceeds one million. It handles any workload, from containers to VMs.

In this hangout, HashiCorp solutions engineer Jake Lundberg will show you how to use another HashiCorp open source tool—Terraform—to automate the provisioning of a full Nomad cluster using a pre-configured Terraform Module. The module is one of HashiCorp's Nomad Guides, which allows users to easily get started with Nomad without having to worry about the different ways to configure it yet.

On the Nomad cluster, Lundberg will launch a heterogeneous application with both containerized and non-containerized microservices on this cluster.

What you'll learn:

  • Brief overview of Nomad
  • Discussion of nomad-guides
  • Launching the Nomad quick start guide with Terraform
  • Launching a “legacy” Tomcat application with Nomad
  • Launching a containerized Fabio application with Nomad
  • Various GUI components and web application with Nomad
  • Destroying a Nomad cluster

Outline

0:00 — Intro to Nomad

5:53 — Demo: Nomad quick start on AWS

19:02 — Q&A

Questions asked during this hangout

  • How did you route the hello world page to the Consul load balancer address/helloworld/index.html? Consul DNS doesn't seem to allow a port lookup that's routable in a browser.
  • When you fire up a new Docker container that is running some service and you want it to be advertised in Consul, is that possible only through Nomad without having to run the Consul agent in the container with SupervisorD?
  • Do we have access to the demo scripts?
  • If we are doing a post request to a microservice in Nomad, do we need to close that post request or will it take multiple post requests?
  • Does Consul Connect work with raw_exec too?
  • Kubernetes has the concept of services to load-balance between multiple pods. How is load-balancing handled in Nomad? Is that built-in or are we expected to use a third-party load-balancer?
  • Do you know if there is a usergroup in OC/ LA area for HashiCorp or a related group with a following of your products?

Demo repository

https://github.com/hashicorp/nomad-guides/tree/master/operations/provision-nomad

https://github.com/grove-mountain/nomad-up-and-running

Slides

More resources like this one

  • 3/15/2023
  • Presentation

Advanced Terraform techniques

  • 2/3/2023
  • Case Study

Automating Multi-Cloud, Multi-Region Vault for Teams and Landing Zones

  • 2/1/2023
  • Case Study

Should My Team Really Need to Know Terraform?

  • 1/20/2023
  • Case Study

Packaging security in Terraform modules