Overview
Ansible Agnostic Deployer, AKA AAD, AKA AgnosticD, is a fully automated 2 Phase deployer for building and deploying everything from basic infrastructure to fully configured running application environments running on either public Cloud Providers or OpenShift clusters.
AgnosticD is not an OpenShift Deployer, though it can and does that, it is however also a deployer that just happens to be used to deploy a lot of OpenShift and OpenShift workloads, amongst other things.
Make your first Deployment
Check out this Video Introduction to deploying with Ansible AgnosticD!
Get started and use agnosticd to deploy on OpenStack with First OSP Environment Walkthrough.
There are many configs you can choose from, here are three that you can start with and modify to fit your needs:
-
Just a bunch of nodes - Simple, multi-cloud.
-
Three Tier App - Relatively simple environment, which deploys by default just a bunch of Linux hosts ready to be configured.
-
OCP4 Cluster - If a fully installed OpenShift Cluster is what you are looking for then take a look here. Deploys onto AWS, OpenStack, etc.
-
API as a Business demo Deployment - Want to deploy a workload onto your existing OpenShift Cluster? or local instance running on your laptop? 3Scale is an example of one of around 30 OpenShift workloads ready to go.
How AgnosticD Deploys
-
For OpenShift Workloads AgnosticD executes an ansible role against an existing OpenShift cluster. Roles can be found here and begin
ocp(4)-workload-*
, with or without4
depending on the OpenShift version active at the time of writing them. OpenShift Workloads are not necessarily version-dependent. You can find many workloads in our repository that were written for OpenShift 3 and continue to work in OpenShift 4. -
For Configs each contain 5 deployment playbooks and supporting files executed in sequence, which combined with Cloud Provider tools like awscli, deploy infrastructure components all the way through to fully configured applications.
Getting Started
The accompanying documentation explains how to achieve all this, extend it and add both your own environments, hereafter called configs and a lot lot more. Well designed configs, can be easily abstracted to allow deployment to multiple different Public and Private Clouds including AWS, Azure, and others.
-
The Documentation Set Start Here
-
./ansible The working ansible directory
-
main.yml The main entry point for
ansible-playbook
-
-
Roles directory Home to the
ocp-workload-*
roles -
Configs directory Home to the Configs
The Contributors Guides explore the relevant structures in significantly more detail: