Commit 66e3eb33 authored by Daniel Buøy-Vehn's avatar Daniel Buøy-Vehn

Update README

parent 2e3d2c73
.PHONY: all
all: README.pdf
README.pdf: README.md head.tex
pandoc -o $@ \
-f markdown+table_captions+pipe_tables+multiline_tables+footnotes+header_attributes+auto_identifiers \
--dpi 300 \
--toc \
-N \
-H head.tex \
$<
......@@ -10,13 +10,15 @@ This branch contains the playbooks for setting up the default Ansible Tower Serv
---
# TL;DR (Setup)
# TL;DR
## Setup
1. Import required keys into OpenStack
2. `./openstack_create_environment.sh --tower_setup`
3. `./openstack_create_environment.sh --client_setup`
4. `ansible-playbook -i rl-inventory.yml playbooks/rl_ansible_tower_server.yml
# TL;DR (Reset)
## Reset
1. Delete tower01 and ac0[1..4] instances in openstack
2. `./openstack_create_environment.sh --tower_setup`
......@@ -24,18 +26,45 @@ This branch contains the playbooks for setting up the default Ansible Tower Serv
---
## Requirements
# Requirements
In order to get this to work, these requirements must be in place and properly configured.
If you're just maintaining the demo platform, the requirements should be already in place. You might need to import the keys into your OpenStack configuration, but you should be fine otherwise.
### Gitlab
## Gitlab
A SCM source needs to be configured to allow Ansible Tower to retrieve the code for the playbooks.
### Repository
The Ansible Tower Demo platform expects to find two branches within the destination repository:
* origin/demo_project_a
* origin/demo_project_b
All Ansible configuration within those branches will be imported into the Demo platform and used for the demonstration.
The actualy repository is configured in `./ansible/group_vars/all.yml` in the section
* TBD
`tower_config.organization['demo'].projects`.
### Openstack
### Keys
This repository contains two pairs of keys for the SCM authenticaction:
* `./ansible/files/ssh_keys/demo_project_a`
* `./ansible/files/ssh_keys/demo_project_a.pub`
* `./ansible/files/ssh_keys/demo_project_b`
* `./ansible/files/ssh_keys/demo_project_b.pub`
The public keys needs to be used to configure repository access for the Ansible Tower Demo Platform. The platform will be setup with the private keys to retrieve the stored code from that source.
## Openstack
**Hosts:**
......@@ -46,7 +75,7 @@ If you're just maintaining the demo platform, the requirements should be already
These hosts are automatically configured and connected for accessing from the Ansible Tower instance on the fist host.
#### Keys
### Keys
The demo project contains some keys in the Ansible directory structure:
......@@ -70,9 +99,9 @@ ansible_tower_demo_tower_access | ansible_tower_access.pub
The scripts to setup the Ansible Tower instance and clients will use these keys to create and manage the demo platform.
#### Project
### Project
![Setup overview](./docs/images/setup.png "Setup overview")
![Setup overview](./docs/images/setup.png "Setup overview"){width=80%}
The repository provides a bash script to create
......@@ -80,7 +109,7 @@ The repository provides a bash script to create
2. Four Ansible Tower clients
##### Ansible Tower host
#### Ansible Tower host
In order to create the Ansible Tower host in OpenStack, change to the subdirectory `/openstack` and execute the script with the parameter `--tower_setup`.
......@@ -95,7 +124,7 @@ This will setup a host `tower01.tower.demo.redpill-linpro.com` in the current pr
The imported key `ansible_tower_demo_tower_access` is required to be in the project in order to work.
#### Ansible Tower nodes
### Ansible Tower nodes
In order to create the Ansible Tower nodes in OpenStack, change to the subdirectory `/openstack` and execute the script with the parameters `--client_setup`.
......@@ -107,9 +136,8 @@ cd openstack
The imported key `ansible_tower_demo_client_acess` is required to be in the project in order to work.
---
#### Cloud-init
### Cloud-init
The cloud init part of the project will alter the default image deployment in order to work with th Ansible playbooks for further deployment.
......@@ -121,7 +149,7 @@ The following changes are made:
---
### Ansible
## Ansible
For the deployment ansible will require a user and a SSH key in place. This is done by the cloud-init procedure during the openstack deployment.
......
No preview for this file type
\let\oldtoc\tableofcontents
\renewcommand{\tableofcontents}{\oldtoc\newpage}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment