From a94de56ddde0f4d1247b14ac7569649f4550e577 Mon Sep 17 00:00:00 2001 From: Scott Lowe Date: Fri, 2 Dec 2016 13:25:52 -0700 Subject: [PATCH] Update Consul learning environment Remove references to personally-maintained Vagrant boxes. Update setup script to use newer version of Consul (0.7.1). Signed-off-by: Scott Lowe --- consul/Vagrantfile | 31 +++++++++++++++++++++---------- consul/consul.sh | 6 +++--- consul/machines.yml | 6 +++--- 3 files changed, 27 insertions(+), 16 deletions(-) diff --git a/consul/Vagrantfile b/consul/Vagrantfile index 05e7d5d..ce85764 100644 --- a/consul/Vagrantfile +++ b/consul/Vagrantfile @@ -20,6 +20,8 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| # Iterate through entries in YAML file to create VMs machines.each do |machine| + + # Configure the VMs per details in machines.yml config.vm.define machine['name'] do |srv| # Don't check for box updates @@ -27,25 +29,27 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| # Specify hostname and Vagrant box srv.vm.hostname = machine['name'] + + # Specify the Vagrant box to use (use VMware box by default) srv.vm.box = machine['box']['vmw'] + # Configure default synced folder (disable by default) + if machine['sync_disabled'] != nil + srv.vm.synced_folder '.', '/vagrant', disabled: machine['sync_disabled'] + else + srv.vm.synced_folder '.', '/vagrant', disabled: true + end #if machine['sync_disabled'] + # Assign an additional static private network srv.vm.network 'private_network', ip: machine['priv_ip'] - # Specify default synced folder; requires VMware Tools - srv.vm.synced_folder '.', '/vagrant', disabled: true - - # Copy in the Consul configuration files - srv.vm.provision 'file', source: 'server.json', destination: '/home/vagrant/config.json' - srv.vm.provision 'file', source: 'consul.conf', destination: '/home/vagrant/consul.conf' - - # Provision consul to the VMs - srv.vm.provision 'shell', path: 'consul.sh' - # Configure VMs with RAM and CPUs per settings in machines.yml (Fusion) srv.vm.provider 'vmware_fusion' do |vmw| vmw.vmx['memsize'] = machine['ram'] vmw.vmx['numvcpus'] = machine['vcpu'] + if machine['nested'] == true + vmw.vmx['vhv.enable'] = 'TRUE' + end #if machine['nested'] end # srv.vm.provider 'vmware_fusion' # Configure VMs with RAM and CPUs per settings in machines.yml (VirtualBox) @@ -54,6 +58,13 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| vb.cpus = machine['vcpu'] override.vm.box = machine['box']['vb'] end # srv.vm.provider 'virtualbox' + + # Copy in the Consul configuration files + srv.vm.provision 'file', source: 'server.json', destination: '/home/vagrant/config.json' + srv.vm.provision 'file', source: 'consul.conf', destination: '/home/vagrant/consul.conf' + + # Provision consul to the VMs + srv.vm.provision 'shell', path: 'consul.sh' end # config.vm.define end # machines.each end # Vagrant.configure diff --git a/consul/consul.sh b/consul/consul.sh index b9637d2..979e762 100644 --- a/consul/consul.sh +++ b/consul/consul.sh @@ -17,11 +17,11 @@ fi if [[ ! -e /usr/local/bin/consul ]];then # Download Consul - curl -kLO https://releases.hashicorp.com/consul/0.5.2/consul_0.5.2_linux_amd64.zip + curl -kLO https://releases.hashicorp.com/consul/0.7.1/consul_0.7.1_linux_amd64.zip # Decompress and remove Consul download - unzip consul_0.5.2_linux_amd64.zip - rm consul_0.5.2_linux_amd64.zip + unzip consul_0.7.1_linux_amd64.zip + rm consul_0.7.1_linux_amd64.zip # Move Consul binary to location in path sudo mv consul /usr/local/bin/ diff --git a/consul/machines.yml b/consul/machines.yml index c33d189..182a7d1 100644 --- a/consul/machines.yml +++ b/consul/machines.yml @@ -1,21 +1,21 @@ --- - name: "consul-01" box: - vmw: "slowe/ubuntu-trusty-x64" + vmw: "bento/ubuntu-14.04" vb: "ubuntu/trusty64" ram: "512" vcpu: "1" priv_ip: "192.168.100.101" - name: "consul-02" box: - vmw: "slowe/ubuntu-trusty-x64" + vmw: "bento/ubuntu-14.04" vb: "ubuntu/trusty64" ram: "512" vcpu: "1" priv_ip: "192.168.100.102" - name: "consul-03" box: - vmw: "slowe/ubuntu-trusty-x64" + vmw: "bento/ubuntu-14.04" vb: "ubuntu/trusty64" ram: "512" vcpu: "1"