Skip to content

wikitops/ansible_swarm

Repository files navigation

Ansible : Playbook Swarm

The aim of this project is to deploy a Docker Swarm cluster on Vagrant instances.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

What things you need to run this Ansible playbook :

  • Vagrant must be installed on your computer
  • Update the Vagrant file based on your computer (CPU, memory), if needed
  • Update the operating system to deploy in the Vagrant file (default: Ubuntu)
  • Download the Ansible requirements:
$ ansible-galaxy install -r requirements.yml

Usage

A good point with Vagrant is that you can create, update and destroy all architecture easily with some commands.

Be aware that you need to be in the Vagrant directory to be able to run the commands.

Deployment

To deploy Docker Swarm cluster on Vagrant instances, just run this command :

$ vagrant up

If everything run as expected, you should be able to list the virtual machine created :

$ vagrant status

Current machine states:

swarm01                   running (virtualbox)
swarm02                   running (virtualbox)
swarm03                   running (virtualbox)

If everything run as expected, you should have a Docker Swarm cluster up and running on the Vagrant instances :

$ vagrant@swarm01:~$ docker node ls
ID                            HOSTNAME            STATUS              AVAILABILITY        MANAGER STATUS      ENGINE VERSION
jmt9f8n5y7sgtsv9c9575n0et *   swarm01             Ready               Active              Leader              18.09.0
mors1e0f2ru6x9xw8kxisz5n3     swarm02             Ready               Active                                  18.09.0
8huolkgiv7f21ldqfurikiavq     swarm03             Ready               Active                                  18.09.0

Destroy

To destroy the Vagrant resources created, just run this command :

$ vagrant destroy

How-To

This section list some simple command to use and manage the playbook and the Vagrant hosts.

Update with Ansible

To update the Docker Swarm cluster configuration with Ansible, you just have to run the Ansible playbook swarm.yml with this command :

$ ansible-playbook swarm.yml

Update with Vagrant

To update the Docker Swarm cluster configuration with Vagrant, you just have to run provisioning part of the Vagrant file :

$ vagrant provision

Connect to Vagrant instance

To be able to connect to a Vagrant instance, you should use the CLI which is configured to automatically use the default SSH key :

$ vagrant ssh swarm01

Author

Member of Wikitops : https://www.wikitops.io/

Licence

This project is licensed under the Apache License, Version 2.0. For the full text of the license, see the LICENSE file.

About

Ansible playbook to deploy a Swarm cluster on Linux Vagrant instances.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages