Sample configurations of HashiCorp tools
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
ansible
.gitignore
LICENSE
README.md
Vagrantfile

README.md

hashicorp-sample

Sample configuration of HashiCorp tools

How to Deploy

$ git clone https://github.com/muziyoshiz/hashicorp-sample.git
$ cd hashicorp-sample
$ echo "your github token" > ./github_token
$ echo "your atlas token" > ./atlas_token
$ echo "your atlas infra name" > ./atlas_infra
$ vagrant up

Overview

The goal of this sample configuration is to evaluate the usefulness of HashiCorp tools in practical situations. The current version uses only a part of HashiCorp tools:

  • Vagrant
  • Consul
  • Atlas

By using this configuration, four or more VMs are deployed automatically on local machine by Ansible. Consul agents run on these VMs and join one Consul cluster through the Consul server or Atlas.

  • manager1, manager2, ...
  • mariadb1
    • MariaDB server
    • This server allows connection from manager[1..] only
  • consul1
    • Consul server
    • When Atlas-integration is enabled, the server requires "atlas_token" file which contains Atlas token
  • cdh-quickstart
    • Cloudera QuickStart VM
    • This configuration includes Impala service definition for Consul

The IP address of each VM, the number of sample web applications and some software configurations are customizable. Please read the beginning of Vagrantfile for more information about the configurations.

System Requirements

The following software must be installed for deploying VMs by this configuration:

  • VirtualBox
  • Vagrant
  • Ansible

This configuration requires more than 10 GB memory. It was tested in the following environment:

  • MacBook Pro (Retina, 15-inch, Mid 2014)
    • CPU: 2.2 GHz Intel Core i7
    • Memory: 16 GB 1600 MHz DDR3
  • OS X Yosemite 10.10.5
  • VirtualBox 5.0.10
  • Vagrant 1.8.1
  • Ansible 2.0.1

References

License

The MIT License (MIT)