Awesome NomadAutomation and Infrastructure Management

cosmonic-labs/netreap

⭐ 142 Go added to this list on 2024-12-11 repository created 2023-05-02

Netreap is a specialized controller designed to manage Cilium networking within a Nomad cluster environment, providing functionality similar to the Cilium Operator used in Kubernetes but tailored for non-Kubernetes setups. It was initially created to clean up orphaned Cilium Endpoints, hence the name "Netreap," but has since expanded to include broader cluster management capabilities. The project addresses the limitation that the official Cilium Operator is deeply integrated with Kubernetes, making it unsuitable for use with Nomad. Netreap helps maintain cluster health by cleaning up nodes that no longer exist from the key-value store and deleting endpoints that no longer have associated services. Netreap requires a running Nomad cluster, a Consul cluster or server (though etcd can also be used as a KV store), and Cilium versions 1.12.x or 1.13.x. It also requires the installation of CNI plugins alongside Cilium. Due to Nomad's current fingerprinting method, Cilium cannot be run as a system job to provide the CNI plugin, so it must be manually configured and run on each agent node, typically using systemd with Docker to run the Cilium agent container. Proper iptables configuration on the host is necessary for network functionality. The project includes detailed instructions for setting up the CNI configuration, ensuring no IP CIDR conflicts with Docker, and deploying Netreap as a system job within Nomad. Netreap uses leader election to allow multiple instances to run concurrently for high availability. It also supports integration with Nomad and Consul ACLs for secure operation. A key feature of Netreap is syncing Cilium network policies across all nodes in the mesh, which is essential since Nomad does not support Kubernetes CRDs used by Cilium for policy management. Netreap watches for changes in policy stored in Consul and applies them cluster-wide, enabling effective network security and policy enforcement in Nomad environments. Overall, Netreap fills a critical gap for users running Cilium networking in Nomad clusters by providing essential cluster management and policy synchronization capabilities outside of Kubernetes, making it a valuable tool for cloud-native networking in Nomad-based infrastructures.

https://github.com/cosmonic-labs/netreap

ciliumcilium-cluster-meshcilium-operatorcilium-policiescloud-native-networkingcluster-managementcni-pluginsconsulconsul-aclscosmonicdockeretcdiptableskv-storeleader-electionnetreapnetwork-policiesnetwork-securitynomadnomad-aclsorphaned-endpointssystemd

Also in Automation and Infrastructure Management

ansible-community/ansible-nomad

Ansible-Nomad is an Ansible role that automates the installation, configuration, and management of HashiCorp Nomad clusters, supporting both development and production environments.

mr-karan/homelab

Hydra is an infrastructure-as-code project for managing a personal home server using HashiCorp Nomad, Consul, and other tools to automate and orchestrate various services.

astro/skyflake

Skyflake is a NixOS-based hyperconverged infrastructure solution that uses HashiCorp Nomad to manage dynamic virtual machines, enabling GitOps-style deployments and cluster management.

seatgeek/nomad-helper

nomad-helper is a set of tools designed to simplify and enhance the management and operational tasks of HashiCorp Nomad clusters at scale.

nomad-ops/nomad-ops

Nomad-Ops is a GitOps operator for HashiCorp Nomad that reconciles running jobs with Git repositories to automate and simplify Nomad job management.

jonasvinther/nomad-gitops-operator

Nomoporator is a GitOps operator that automates the deployment and synchronization of HashiCorp Nomad jobs using Git repositories or local file systems, supporting secure and flexible configuration.

tristanpemble/nix-nomad

nix-nomad is a tool to generate and manage HashiCorp Nomad job JSON files using NixOS modules, enabling modular and scalable deployment of Nomad jobs across multiple environments.

dsaidgovsg/terraform-modules

A collection of reusable Terraform modules to provision and manage HashiCorp Nomad, Consul, and Vault clusters on AWS, enabling secure and scalable cloud infrastructure deployment.