|
| 1 | +# Ansible-based Kubernetes cluster example |
| 2 | + |
| 3 | +This is an example Kubernetes cluster built and managed with Ansible. The example is explained in more detail in Chapter 13 of [Ansible for DevOps](https://www.ansiblefordevops.com/). |
| 4 | + |
| 5 | +## Quick Start Guide |
| 6 | + |
| 7 | +### 1 - Install dependencies (VirtualBox, Vagrant, Ansible) |
| 8 | + |
| 9 | + 1. Download and install [VirtualBox](https://www.virtualbox.org/wiki/Downloads). |
| 10 | + 2. Download and install [Vagrant](http://www.vagrantup.com/downloads.html). |
| 11 | + 3. [Mac/Linux only] Install [Ansible](http://docs.ansible.com/intro_installation.html). |
| 12 | + |
| 13 | +Note for Windows users: *This guide assumes you're on a Mac or Linux host. Windows hosts are unsupported at this time.* |
| 14 | + |
| 15 | +### 2 - Build the Virtual Machine |
| 16 | + |
| 17 | + 1. Download this project and put it wherever you want. |
| 18 | + 2. Open Terminal, cd to this directory (containing the `Vagrantfile` and this REAMDE file). |
| 19 | + 3. Run `ansible-galaxy install -r requirements.yml` to install required Ansible roles. |
| 20 | + 4. Type in `vagrant up`, and let Vagrant do its magic. |
| 21 | + |
| 22 | +Note: *If there are any errors during the course of running `vagrant up`, and it drops you back to your command prompt, just run `vagrant provision` to continue building the VM from where you left off. If there are still errors after doing this a few times, post an issue to this project's issue queue on GitHub with the error.* |
| 23 | + |
| 24 | +### 3 - Configure your host machine to access the VM. |
| 25 | + |
| 26 | + 1. [Edit your hosts file](http://www.rackspace.com/knowledge_center/article/how-do-i-modify-my-hosts-file), adding the line `192.168.84.3 cluster.k8s.test` so you can connect to the VM. |
| 27 | + 2. Open your browser and access [http://cluster.k8s.test](http://cluster.k8s.test). |
| 28 | + |
| 29 | +## Notes |
| 30 | + |
| 31 | + - To shut down the virtual machine, enter `vagrant halt` in the Terminal in the same folder that has the `Vagrantfile`. To destroy it completely (if you want to save a little disk space, or want to rebuild it from scratch with `vagrant up` again), type in `vagrant destroy`. |
| 32 | + |
| 33 | +## About the Author |
| 34 | + |
| 35 | +This project was created by [Jeff Geerling](https://www.jeffgeerling.com/) as an example for [Ansible for DevOps](https://www.ansiblefordevops.com/). |
0 commit comments