Last active
July 5, 2018 16:35
-
-
Save versionsix/d94582541875a4638d37ef19c82b13a8 to your computer and use it in GitHub Desktop.
Vagrant 2 machines and ansible
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
- hosts: all | |
become: true | |
tasks: | |
- name: upgrade all packages | |
yum: | |
update_cache: yes | |
name: '*' | |
state: latest | |
- name: ensure apache is at the latest version | |
yum: | |
name: httpd | |
state: latest | |
- name: Start webserver | |
service: | |
name: httpd | |
state: started | |
- name: open the http port | |
firewalld: | |
service: http | |
permanent: true | |
state: enabled | |
zone: public | |
- name: start the firewalld service | |
service: | |
name: firewalld | |
state: restarted | |
# Run tasks for machine-a | |
- hosts: machine-a | |
become: true | |
tasks: | |
- name: Create example index page | |
copy: | |
dest: "/var/www/html/index.html" | |
content: | | |
machine-a <br /> | |
deployed by ansible | |
# Run tasks for machine-b | |
- hosts: machine-b | |
become: true | |
tasks: | |
- name: Create example index page | |
copy: | |
dest: "/var/www/html/index.html" | |
content: | | |
machine-b <br /> | |
deployed by ansible |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Ansible config see https://www.vagrantup.com/docs/provisioning/ansible_common.html#extra_vars | |
Vagrant.configure(2) do |config| | |
config.vm.define "machine-a" do |subconfig| | |
subconfig.vm.box = "generic/centos7" | |
subconfig.vm.hostname = "machine-a.local" | |
subconfig.vbguest.auto_update = false | |
subconfig.vm.network :private_network, ip: "192.168.199.101" | |
subconfig.vm.provider :virtualbox do |vb| | |
vb.memory = 1024 | |
vb.cpus = 2 | |
vb.linked_clone = true | |
end | |
subconfig.vm.synced_folder ".", "/vagrant", disabled: false | |
end | |
config.vm.define "machine-b" do |subconfig| | |
subconfig.vm.box = "generic/centos7" | |
subconfig.vm.hostname = "machine-b.local" | |
subconfig.vbguest.auto_update = false | |
subconfig.vm.network :private_network, ip: "192.168.199.102" | |
subconfig.vm.provider :virtualbox do |vb| | |
vb.memory = 1024 | |
vb.cpus = 2 | |
vb.linked_clone = true | |
end | |
subconfig.vm.synced_folder ".", "/vagrant", disabled: false | |
end | |
# Ansible provisioning | |
config.vm.provision :ansible do |ansible| | |
ansible.playbook = "playbook.yml" | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment