Ansible
A versatile orchestration engine that can automate systems and apps. Instead of a custom scripting language or code, it is very simple and shell based. It is also agent-less, so you can just start using it right away and get things done
linux open-source provisioning config-mgmt orchestration python
argo-cd
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes.
open-source cd virt kubernetes cloud go
Basebox-Packer
A comprehensive set of Packer definitions. It has quite a collection of 64 bit and 32 bit images for Vagrant VirtualBox and VMWare. A good place to learn Packer definitions.
linux open-source virt shell
Batou
Batou makes it easy to perform automated deployments. It combines Fabric's simplicty and SSH automation, with Puppet's declarative syntax and idempotence
linux open-source provisioning python
Bento
A modularized collection of Packer definitions for building machine images. A good place to start with Packer.
linux windows osx open-source virt ruby
Berkshelf
A cookbook source structure manager for Chef, similar to Bundler for Ruby. Each Chef cookbook can be structured as an individual entity and can be pulled into your main Chef workflows.
linux windows osx open-source scm ruby
Bolt
Bolt is an open source orchestration tool that automates the manual work it takes to maintain your infrastructure. Use Bolt to automate tasks that you perform on an as-needed basis or as part of a greater orchestration workflow. For example, you can use Bolt to patch and update systems, troubleshoot servers, deploy applications, or stop and restart services. Bolt can be installed on your local workstation and connects directly to remote targets with SSH or WinRM, so you are not required to install any agent software.
linux open-source provisioning config-mgmt orchestration ruby
Boxen
Boxen automates the entire process of setting up a Mac development environment. It can clone your project, install toolchains, apply security policies, clone your dotfiles and much more.
osx open-source provisioning ruby
Boxstarter
Repeatable, reboot resilient windows environment installations made easy using Chocolatey packages. When its time to repave either bare metal or virtualized instances, locally or on a remote machine, Boxstarter can automate both trivial and highly complex installations. Compatible with all Windows versions from Windows 7/2008 R2 forward.
windows open-source virt packaging provisioning powershell
Capistrano
The Ruby equivalent of Fabric, Capistrano is a Ruby framework to configure and run deployment or system administration tasks on local or remote machines. It extends the Rake DSL to define tasks, and can group tasks by Roles.
linux osx open-source provisioning orchestration ruby
Chef
Configuration management tool which uses a pure-Ruby, domain-specific language (DSL) for writing system configuration recipes. Supports Linux, UNIX, Windows, and AIX as first-class citizens for management.
linux windows open-source provisioning config-mgmt ruby
Chocolatey
Chocolatey is like apt-get for Windows. It can install packages and dependencies over the command line.
windows open-source packaging provisioning powershell
ConDep
ConDep is a open source infrastructure configuration and deployment DSL (Domain Specific Language) specifically targeted to (but not limited to) the Windows Server platform. If your familiar with tools like Chef and Puppet, ConDep does very much the same, but with native support for Windows.
windows open-source ci provisioning config-mgmt net
Deliver
A pure bash-based deployment tool with virtually no dependencies except the shell.
linux open-source provisioning ruby
Deployinator
A simple, rack-based deployment framework
linux open-source provisioning orchestration ruby
Docker
Docker uses LXC to create and manage native, sandboxed virtual containers. LXC containers acts like a separate OSes, can install their own packages without affecting anything else, and overall have almost the same flexibility of VMs but without any of the virtualization overhead! Docker adds a ton of features, like an elegant configuration file that automates many things (like port forwarding, disk/directory mounting, networking, etc), a way to create and share readymade images that can be distributed as appliances, etc.
linux open-source virt cloud-paas provisioning go
Fabric8
fabric8 is an end to end development platform spanning ideation to production for the creation of cloud native applications and microservices
linux windows osx open-source free cloud-paas virt go
Flynn
From the creator of Dokku, Flynn is a full fledged, open source PaaS platform built on top of Docker. You just push code with a Procfile, and that’s it, Flynn immediately picks it up, provisions a Docker container and deploys the latest code! Its tagged as “the product that ops gives to developers”
linux open-source virt cloud-paas go
Foreman
A complete lifecycle management tool for servers, both self-hosted and in the cloud. It allows you to create and manage instances, build and deploy images, view and audit hosts, and much more! It works with Puppet or Chef, and has multiple interaction facilities like a web frontend, CLI and a RESTful API.
linux open-source virt config-mgmt provisioning monitoring cloud-paas ruby
GitLab
GitLab is an open-source, fully featured git web frontend developed using Ruby on Rails. You can host this in your own server, create projects, repositories and teams, manage fine grained access permissions, add wikis, collaborate, raise and merge pull requests, and do much more through the web! (Note: GitLab acquired Gitorious, another open source git management system, in March 2015)
linux open-source vcs ruby
Gogs
A self-hosted Git service written in Go. Gogs(Go Git Service) is a painless self-hosted Git Service written in Go. The goal of this project is to make the easiest, fastest and most painless way to set up a self-hosted Git service. With Go, this can be done in independent binary distribution across ALL platforms that Go supports, including Linux, Mac OS X, and Windows.
linux open-source git go scm
ĵeto
Streamline your web projects from development from production. Jeto is a web interface for several ReST APIs (nginx-api, vagrant-worker and htpasswd-api). With Ĵeto you add and manage (start/stop/provision) vagrant projects on the fly via a nice and easy to use web interface.
linux open-source cloud cloud-paas paas ci cd virt provisioning orchestration python
Kubernetes
Kubernetes is a system for managing containerized applications across multiple hosts, providing basic mechanisms for deployment, maintenance, and scaling of applications
linux open-source virt orchestration go
Librarian-Puppet
Librarian-Puppet is a source structure and dependency manager for Puppet modules, similar to bundler for Ruby. Each Puppet module can be managed as a separate source repository with individual versioning, and can then be pulled into your Puppetfile.
linux windows osx open-source scm ruby
LXD
LXD is a next generation system container manager. It offers a user experience similar to virtual machines but using Linux containers instead. It's image based with pre-made images available for a wide number of Linux distributions and is built around a very powerful, yet pretty simple, REST API.
linux open-source virt cloud-paas provisioning go
Nebula
Nebula is a Docker orchestration tool designed to manage massive scale distributed clusters
linux open-source virt orchestration python
Nomad
Nomad is a lightweight workload orchestrator. It offers client instance scaling as well as workload scaling.
linux windows osx open-source virt orchestration go
Opskeleton
Bootstrap a DevOps infrastructure with some opinionated defaults (vagrant, puppet, librarian-puppet, git, etc), standard development guidelines, etc. Makes it very quick to get a DevOps team up and running
linux open-source scm virt config-mgmt provisioning orchestration ruby
Orc
A model driven orchestration tool for deployment of application clusters
linux windows osx open-source provisioning orchestration ruby
OSV
An operating system for lightweight virtual machines, designed from ground-up to run a single application, similar to CoreOS
linux open-source virt python
Packer
Packer is a tool for creating identical machine images for multiple platforms (like VirtualBox, VMWare, EC2, DigitalOcean, etc) from a single configuration file.
linux windows osx open-source virt cloud-paas go
Poni
A system management and provisioning tool, with centralized configuration management
linux open-source config-mgmt provisioning orchestration python
Razor
Razor is next generation provisioning software that handles bare metal hardware and virtual server provisioning
linux open-source provisioning ruby
Review Board
Review Board is a feature packed code review tool for multiple SCM systems (like git, bzr, cvs, subversion, etc).
linux open-source commercial scm python
SaltStack
Salt is a powerful and different approach to infrastructure management, by focusing on high speed communications between large number of systems, and can perform orchestration, remote code execution and much more.
linux windows osx open-source commercial config-mgmt provisioning orchestration python
ShutIt
ShutIt is an automation platform. It makes it easy to create simple modular automation scripts that handle differing output, install software, log in and out of servers, capture output etc.. ShutItFiles are an extension to make it even easier for people to develop automation scripts.
linux open-source config-mgmt provisioning python
Soloist
Soloist lets you quickly and easily converge Chef recipes using chef-solo.
linux windows osx open-source provisioning ruby
StackStorm
A platform for event-driven automation. StackStorm allows you to integrate and automate across services and tools. It ties together your existing infrastructure and application environment so you can more easily automate that environment -- with a particular focus on taking actions in response to events.
automation cd provisioning cloud orchestration config-mgmt orchestration python linux open-source apache2
Sunzi
A shell-based pure provisioning tool which doesn’t try to do anything else. Has no dependencies other than the shell
linux open-source provisioning shell
Supervisor
Supervisor can manage application processes. It can start and stop a group of processes, restart processes if any of them terminate (keep-alive), start multiple instances of the same process (process pooling), automatically manage PID files, and much more! Very useful if you need to manage multiple processes for your application.
linux osx open-source process-mgmt python
tsuru
tsuru is an extensible and open source Platform as a Service (PaaS) that makes application deployments faster and easier. Its built upon Docker and allows you easily manage and scale your applications.
linux open-source virt cloud-paas go
Vagrant Cachier
A Vagrant plugin that helps you reduce the amount of coffee you drink while waiting for boxes to be provisioned by sharing a common package cache among similiar VM instances.
linux windows osx open-source virt artifacts ruby
Vagrant
Vagrant is a cross platform tool to create, boot, configure and destroy development environments. It provides a simple configuration-based approach to take a base image, boot it up, provision it (using any other provisioners), SSH, port forward, and much more. It automates the process of booting up and configuring virtual machines. It supports various providers like VirtualBox, VMWare, AWS, LXC, etc.
linux windows osx open-source virt provisioning ruby
Veewee
veewee is a great tool for building Virtual Machine images (aka base boxes). It automates most of the steps and allows you to easily create readymade images for VirtualBox/Vagrant, VMWare Fusion, KVM and Parallels. No longer need to shy away from building custom VM images!
linux osx windows open-source virt packaging ruby
Weave
Weave creates a virtual network that connects Docker containers deployed across multiple hosts. Services provided by application containers on the weave network can be made accessible to the outside world, regardless of where those containers are running. Similarly, existing internal systems can be exposed to application containers irrespective of their location.
linux open-source virt cloud-paas orchestration service-discovery go
werf
werf is CI/CD tool for building Docker images and delivering them to Kubernetes using a GitOps approach. It integrates with any existing CI systems including GitLab CI, GitHub Actions, etc.
linux windows osx open-source ci kubernetes virt go