Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def puppetize(node)
- node.puppet_install.puppet_version = '3.7.3'
- node.vm.synced_folder '../../hiera', '/tmp/hiera', type: 'rsync'
- node.vm.provision 'puppet' do |puppet|
- puppet.facter = {
- 'vagrant' => true,
- 'host' => node.vm.hostname,
- }
- puppet.synced_folder_type = 'rsync'
- puppet.manifests_path = '..'
- puppet.manifest_file = 'site.pp'
- puppet.module_path = ['../../puppet/modules', 'puppet-modules.local']
- puppet.hiera_config_path = '../hiera.yaml'
- puppet.options = ['--verbose']
- # Allow for machine specific overrides
- yield puppet
- end
- end
- def guest(config, role, serial=nil)
- name = role
- if serial then
- name += "-#{serial}"
- end
- config.vm.define name do |guest|
- guest.vm.hostname = name
- guest.ssh.proxy_command = "ssh -W %h:%p #{USER}@#{HOST}"
- guest.vm.provider 'managed' do |managed|
- guest.vm.box = 'tknerr/managed-server-dummy'
- managed.server = name
- end
- guest.vm.provider :libvirt do |domain, override|
- override.vm.box = 'centos-6.6'
- domain.driver = 'xen'
- domain.uri = "xen+ssh://#{USER}@#{HOST}/system?socket=/var/run/libvirt/libvirt-sock"
- domain.storage_pool_name = 'vagrant'
- yield domain
- end
- puppetize(guest) do |puppet|
- puppet.facter['role'] = role
- puppet.facter['serial'] = serial
- end
- end
- end
- Vagrant.configure('2') do |config|
- # SNIP
- guest(config, 'logstash') do |domain|
- domain.memory = 1024
- domain.cpus = 2
- end
- guest(config, 'kibana') do |domain|
- domain.memory = 256
- domain.cpus = 2
- end
- guest(config, 'es-master') do |domain|
- domain.memory = 512
- domain.cpus = 2
- end
- guest(config, 'es-data', 1) do |domain|
- domain.memory = 2048
- domain.cpus = 2
- end
- guest(config, 'es-data', 2) do |domain|
- domain.memory = 2048
- domain.cpus = 2
- end
- guest(config, 'haproxy') do |domain|
- domain.memory = 256
- domain.cpus = 1
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement