diff --git a/Days/Configmgmt/ansible-scenario4/playbook4.yml b/Days/Configmgmt/ansible-scenario4/playbook4.yml
new file mode 100644
index 0000000..2034293
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/playbook4.yml
@@ -0,0 +1,15 @@
+- hosts: webservers
+ become: yes
+ vars:
+ http_port: 8000
+ https_port: 4443
+ html_welcome_msg: "Hello 90DaysOfDevOps - Welcome to Day 66!"
+ roles:
+ - common
+ - apache2
+
+- hosts: proxy
+ become: yes
+ roles:
+ - common
+ - nginx
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/.travis.yml b/Days/Configmgmt/ansible-scenario4/roles/apache2/.travis.yml
new file mode 100644
index 0000000..36bbf62
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/.travis.yml
@@ -0,0 +1,29 @@
+---
+language: python
+python: "2.7"
+
+# Use the new container infrastructure
+sudo: false
+
+# Install ansible
+addons:
+ apt:
+ packages:
+ - python-pip
+
+install:
+ # Install ansible
+ - pip install ansible
+
+ # Check ansible version
+ - ansible --version
+
+ # Create ansible.cfg with correct roles_path
+ - printf '[defaults]\nroles_path=../' >ansible.cfg
+
+script:
+ # Basic role syntax check
+ - ansible-playbook tests/test.yml -i tests/inventory --syntax-check
+
+notifications:
+ webhooks: https://galaxy.ansible.com/api/v1/notifications/
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/README.md b/Days/Configmgmt/ansible-scenario4/roles/apache2/README.md
new file mode 100644
index 0000000..225dd44
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/README.md
@@ -0,0 +1,38 @@
+Role Name
+=========
+
+A brief description of the role goes here.
+
+Requirements
+------------
+
+Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
+
+Role Variables
+--------------
+
+A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
+
+Dependencies
+------------
+
+A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
+
+Example Playbook
+----------------
+
+Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
+
+ - hosts: servers
+ roles:
+ - { role: username.rolename, x: 42 }
+
+License
+-------
+
+BSD
+
+Author Information
+------------------
+
+An optional section for the role authors to include contact information, or a website (HTML is not allowed).
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/defaults/main.yml b/Days/Configmgmt/ansible-scenario4/roles/apache2/defaults/main.yml
new file mode 100644
index 0000000..118c758
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/defaults/main.yml
@@ -0,0 +1,2 @@
+---
+# defaults file for roles/apache2
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/handlers/main.yml b/Days/Configmgmt/ansible-scenario4/roles/apache2/handlers/main.yml
new file mode 100644
index 0000000..ff3da8d
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/handlers/main.yml
@@ -0,0 +1,4 @@
+- name: restart apache
+ service:
+ name: apache2
+ state: restarted
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/meta/main.yml b/Days/Configmgmt/ansible-scenario4/roles/apache2/meta/main.yml
new file mode 100644
index 0000000..c572acc
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/meta/main.yml
@@ -0,0 +1,52 @@
+galaxy_info:
+ author: your name
+ description: your role description
+ company: your company (optional)
+
+ # If the issue tracker for your role is not on github, uncomment the
+ # next line and provide a value
+ # issue_tracker_url: http://example.com/issue/tracker
+
+ # Choose a valid license ID from https://spdx.org - some suggested licenses:
+ # - BSD-3-Clause (default)
+ # - MIT
+ # - GPL-2.0-or-later
+ # - GPL-3.0-only
+ # - Apache-2.0
+ # - CC-BY-4.0
+ license: license (GPL-2.0-or-later, MIT, etc)
+
+ min_ansible_version: 2.1
+
+ # If this a Container Enabled role, provide the minimum Ansible Container version.
+ # min_ansible_container_version:
+
+ #
+ # Provide a list of supported platforms, and for each platform a list of versions.
+ # If you don't wish to enumerate all versions for a particular platform, use 'all'.
+ # To view available platforms and versions (or releases), visit:
+ # https://galaxy.ansible.com/api/v1/platforms/
+ #
+ # platforms:
+ # - name: Fedora
+ # versions:
+ # - all
+ # - 25
+ # - name: SomePlatform
+ # versions:
+ # - all
+ # - 1.0
+ # - 7
+ # - 99.99
+
+ galaxy_tags: []
+ # List tags for your role here, one per line. A tag is a keyword that describes
+ # and categorizes the role. Users find roles by searching for tags. Be sure to
+ # remove the '[]' above, if you add tags to this list.
+ #
+ # NOTE: A tag is limited to a single word comprised of alphanumeric characters.
+ # Maximum 20 tags per role.
+
+dependencies: []
+ # List your role dependencies here, one per line. Be sure to remove the '[]' above,
+ # if you add dependencies to this list.
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/tasks/apache2_install.yml b/Days/Configmgmt/ansible-scenario4/roles/apache2/tasks/apache2_install.yml
new file mode 100644
index 0000000..c75b06b
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/tasks/apache2_install.yml
@@ -0,0 +1,18 @@
+- name: ensure apache is at the latest version
+ apt: name=apache2 state=latest
+
+- name: write the apache2 ports.conf config file
+ template: src=templates/ports.conf.j2 dest=/etc/apache2/ports.conf
+ notify: restart apache
+
+- name: write a basic index.html file
+ template:
+ src: templates/index.html.j2
+ dest: /var/www/html/index.html
+ notify:
+ - restart apache
+
+- name: ensure apache is running
+ service:
+ name: apache2
+ state: started
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/tasks/main.yml b/Days/Configmgmt/ansible-scenario4/roles/apache2/tasks/main.yml
new file mode 100644
index 0000000..6024204
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/tasks/main.yml
@@ -0,0 +1,3 @@
+---
+# tasks file for roles/apache2
+- import_tasks: apache2_install.yml
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/templates/index.html.j2 b/Days/Configmgmt/ansible-scenario4/roles/apache2/templates/index.html.j2
new file mode 100644
index 0000000..acdefbe
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/templates/index.html.j2
@@ -0,0 +1,5 @@
+
+
+
{{ html_welcome_msg }}
+
+
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/templates/ports.conf.j2 b/Days/Configmgmt/ansible-scenario4/roles/apache2/templates/ports.conf.j2
new file mode 100644
index 0000000..1793522
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/templates/ports.conf.j2
@@ -0,0 +1,16 @@
+
+# If you just change the port or add more ports here, you will likely also
+# have to change the VirtualHost statement in
+# /etc/apache2/sites-enabled/000-default.conf
+
+Listen {{ http_port }}
+
+
+ Listen {{ https_port }}
+
+
+
+ Listen {{ https_port }}
+
+
+# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/tests/inventory b/Days/Configmgmt/ansible-scenario4/roles/apache2/tests/inventory
new file mode 100644
index 0000000..878877b
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/tests/inventory
@@ -0,0 +1,2 @@
+localhost
+
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/tests/test.yml b/Days/Configmgmt/ansible-scenario4/roles/apache2/tests/test.yml
new file mode 100644
index 0000000..716bef3
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/tests/test.yml
@@ -0,0 +1,5 @@
+---
+- hosts: localhost
+ remote_user: root
+ roles:
+ - roles/apache2
diff --git a/Days/Configmgmt/ansible-scenario4/roles/apache2/vars/main.yml b/Days/Configmgmt/ansible-scenario4/roles/apache2/vars/main.yml
new file mode 100644
index 0000000..d34faf4
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/apache2/vars/main.yml
@@ -0,0 +1,2 @@
+---
+# vars file for roles/apache2
diff --git a/Days/Configmgmt/ansible-scenario4/roles/common/defaults/main.yml b/Days/Configmgmt/ansible-scenario4/roles/common/defaults/main.yml
new file mode 100644
index 0000000..28cf403
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/common/defaults/main.yml
@@ -0,0 +1,2 @@
+---
+# defaults file for roles/common
diff --git a/Days/Configmgmt/ansible-scenario4/roles/common/handlers/main.yml b/Days/Configmgmt/ansible-scenario4/roles/common/handlers/main.yml
new file mode 100644
index 0000000..d29b8e9
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/common/handlers/main.yml
@@ -0,0 +1,2 @@
+---
+# handlers file for roles/common
diff --git a/Days/Configmgmt/ansible-scenario4/roles/common/meta/main.yml b/Days/Configmgmt/ansible-scenario4/roles/common/meta/main.yml
new file mode 100644
index 0000000..c572acc
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/common/meta/main.yml
@@ -0,0 +1,52 @@
+galaxy_info:
+ author: your name
+ description: your role description
+ company: your company (optional)
+
+ # If the issue tracker for your role is not on github, uncomment the
+ # next line and provide a value
+ # issue_tracker_url: http://example.com/issue/tracker
+
+ # Choose a valid license ID from https://spdx.org - some suggested licenses:
+ # - BSD-3-Clause (default)
+ # - MIT
+ # - GPL-2.0-or-later
+ # - GPL-3.0-only
+ # - Apache-2.0
+ # - CC-BY-4.0
+ license: license (GPL-2.0-or-later, MIT, etc)
+
+ min_ansible_version: 2.1
+
+ # If this a Container Enabled role, provide the minimum Ansible Container version.
+ # min_ansible_container_version:
+
+ #
+ # Provide a list of supported platforms, and for each platform a list of versions.
+ # If you don't wish to enumerate all versions for a particular platform, use 'all'.
+ # To view available platforms and versions (or releases), visit:
+ # https://galaxy.ansible.com/api/v1/platforms/
+ #
+ # platforms:
+ # - name: Fedora
+ # versions:
+ # - all
+ # - 25
+ # - name: SomePlatform
+ # versions:
+ # - all
+ # - 1.0
+ # - 7
+ # - 99.99
+
+ galaxy_tags: []
+ # List tags for your role here, one per line. A tag is a keyword that describes
+ # and categorizes the role. Users find roles by searching for tags. Be sure to
+ # remove the '[]' above, if you add tags to this list.
+ #
+ # NOTE: A tag is limited to a single word comprised of alphanumeric characters.
+ # Maximum 20 tags per role.
+
+dependencies: []
+ # List your role dependencies here, one per line. Be sure to remove the '[]' above,
+ # if you add dependencies to this list.
diff --git a/Days/Configmgmt/ansible-scenario4/roles/common/tasks/install_tools.yml b/Days/Configmgmt/ansible-scenario4/roles/common/tasks/install_tools.yml
new file mode 100644
index 0000000..653bf95
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/common/tasks/install_tools.yml
@@ -0,0 +1,6 @@
+- name: "Install Common packages"
+ apt: name={{ item }} state=latest
+ with_items:
+ - neofetch
+ - tree
+ - figlet
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/common/tasks/main.yml b/Days/Configmgmt/ansible-scenario4/roles/common/tasks/main.yml
new file mode 100644
index 0000000..0f9c34d
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/common/tasks/main.yml
@@ -0,0 +1,3 @@
+---
+# tasks file for roles/common
+- import_tasks: install_tools.yml
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/common/tests/inventory b/Days/Configmgmt/ansible-scenario4/roles/common/tests/inventory
new file mode 100644
index 0000000..878877b
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/common/tests/inventory
@@ -0,0 +1,2 @@
+localhost
+
diff --git a/Days/Configmgmt/ansible-scenario4/roles/common/tests/test.yml b/Days/Configmgmt/ansible-scenario4/roles/common/tests/test.yml
new file mode 100644
index 0000000..1cbebf5
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/common/tests/test.yml
@@ -0,0 +1,5 @@
+---
+- hosts: localhost
+ remote_user: root
+ roles:
+ - roles/common
diff --git a/Days/Configmgmt/ansible-scenario4/roles/common/vars/main.yml b/Days/Configmgmt/ansible-scenario4/roles/common/vars/main.yml
new file mode 100644
index 0000000..f83eed7
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/common/vars/main.yml
@@ -0,0 +1,2 @@
+---
+# vars file for roles/common
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/defaults/main.yml b/Days/Configmgmt/ansible-scenario4/roles/nginx/defaults/main.yml
new file mode 100644
index 0000000..a28e129
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/defaults/main.yml
@@ -0,0 +1,2 @@
+---
+# defaults file for roles/nginx
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/handlers/main.yml b/Days/Configmgmt/ansible-scenario4/roles/nginx/handlers/main.yml
new file mode 100644
index 0000000..494b444
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/handlers/main.yml
@@ -0,0 +1,4 @@
+---
+# handlers file for roles/nginx
+- name: restart nginx
+ service: name=nginx state=restarted
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/meta/main.yml b/Days/Configmgmt/ansible-scenario4/roles/nginx/meta/main.yml
new file mode 100644
index 0000000..c572acc
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/meta/main.yml
@@ -0,0 +1,52 @@
+galaxy_info:
+ author: your name
+ description: your role description
+ company: your company (optional)
+
+ # If the issue tracker for your role is not on github, uncomment the
+ # next line and provide a value
+ # issue_tracker_url: http://example.com/issue/tracker
+
+ # Choose a valid license ID from https://spdx.org - some suggested licenses:
+ # - BSD-3-Clause (default)
+ # - MIT
+ # - GPL-2.0-or-later
+ # - GPL-3.0-only
+ # - Apache-2.0
+ # - CC-BY-4.0
+ license: license (GPL-2.0-or-later, MIT, etc)
+
+ min_ansible_version: 2.1
+
+ # If this a Container Enabled role, provide the minimum Ansible Container version.
+ # min_ansible_container_version:
+
+ #
+ # Provide a list of supported platforms, and for each platform a list of versions.
+ # If you don't wish to enumerate all versions for a particular platform, use 'all'.
+ # To view available platforms and versions (or releases), visit:
+ # https://galaxy.ansible.com/api/v1/platforms/
+ #
+ # platforms:
+ # - name: Fedora
+ # versions:
+ # - all
+ # - 25
+ # - name: SomePlatform
+ # versions:
+ # - all
+ # - 1.0
+ # - 7
+ # - 99.99
+
+ galaxy_tags: []
+ # List tags for your role here, one per line. A tag is a keyword that describes
+ # and categorizes the role. Users find roles by searching for tags. Be sure to
+ # remove the '[]' above, if you add tags to this list.
+ #
+ # NOTE: A tag is limited to a single word comprised of alphanumeric characters.
+ # Maximum 20 tags per role.
+
+dependencies: []
+ # List your role dependencies here, one per line. Be sure to remove the '[]' above,
+ # if you add dependencies to this list.
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/tasks/configure_nginx.yml b/Days/Configmgmt/ansible-scenario4/roles/nginx/tasks/configure_nginx.yml
new file mode 100644
index 0000000..66e02d3
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/tasks/configure_nginx.yml
@@ -0,0 +1,8 @@
+- name: Deploy Nginx sites configuration
+ template:
+ src: mysite.j2
+ dest: "/etc/nginx/sites-enabled/mysite"
+ notify: restart nginx
+
+- name: Remove defaults
+ file: path="/etc/nginx/sites-enabled/default" state=absent
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/tasks/install_packages.yml b/Days/Configmgmt/ansible-scenario4/roles/nginx/tasks/install_packages.yml
new file mode 100644
index 0000000..7feeda8
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/tasks/install_packages.yml
@@ -0,0 +1,4 @@
+- name: "Install Nginx packages"
+ apt:
+ name: nginx
+ state: present
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/tasks/main.yml b/Days/Configmgmt/ansible-scenario4/roles/nginx/tasks/main.yml
new file mode 100644
index 0000000..abb54a9
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/tasks/main.yml
@@ -0,0 +1,4 @@
+---
+# tasks file for roles/nginx
+- import_tasks: install_packages.yml
+- import_tasks: configure_nginx.yml
\ No newline at end of file
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/templates/mysite.j2 b/Days/Configmgmt/ansible-scenario4/roles/nginx/templates/mysite.j2
new file mode 100644
index 0000000..7c7f562
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/templates/mysite.j2
@@ -0,0 +1,12 @@
+ upstream webservers {
+ server 192.168.169.131:8000;
+ server 192.168.169.132:8000;
+ }
+
+ server {
+ listen 80;
+
+ location / {
+ proxy_pass http://webservers;
+ }
+ }
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/tests/inventory b/Days/Configmgmt/ansible-scenario4/roles/nginx/tests/inventory
new file mode 100644
index 0000000..878877b
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/tests/inventory
@@ -0,0 +1,2 @@
+localhost
+
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/tests/test.yml b/Days/Configmgmt/ansible-scenario4/roles/nginx/tests/test.yml
new file mode 100644
index 0000000..6750534
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/tests/test.yml
@@ -0,0 +1,5 @@
+---
+- hosts: localhost
+ remote_user: root
+ roles:
+ - roles/nginx
diff --git a/Days/Configmgmt/ansible-scenario4/roles/nginx/vars/main.yml b/Days/Configmgmt/ansible-scenario4/roles/nginx/vars/main.yml
new file mode 100644
index 0000000..4d5dfe2
--- /dev/null
+++ b/Days/Configmgmt/ansible-scenario4/roles/nginx/vars/main.yml
@@ -0,0 +1,2 @@
+---
+# vars file for roles/nginx
diff --git a/Days/Images/Day67_config1.png b/Days/Images/Day67_config1.png
new file mode 100644
index 0000000..ede4ff1
Binary files /dev/null and b/Days/Images/Day67_config1.png differ
diff --git a/Days/Images/Day67_config2.png b/Days/Images/Day67_config2.png
new file mode 100644
index 0000000..6fa2518
Binary files /dev/null and b/Days/Images/Day67_config2.png differ
diff --git a/Days/Images/Day67_config3.png b/Days/Images/Day67_config3.png
new file mode 100644
index 0000000..8a6fb79
Binary files /dev/null and b/Days/Images/Day67_config3.png differ
diff --git a/Days/day67.md b/Days/day67.md
index e69de29..4974289 100644
--- a/Days/day67.md
+++ b/Days/day67.md
@@ -0,0 +1,112 @@
+## Using Roles & Deploying a Loadbalancer
+
+In the last session we covered roles and used the `ansible-galaxy` command to help create our folder structures for some roles that we are going to use. We finished up with a much tidier working repository for our configuration code as everything is hidden away in our role folders.
+
+However we have only used the apache2 role and have a working playbook3.yaml to handle our webservers.
+
+At this point if you have only used `vagrant up web01 web02` now is the time to run `vagrant up loadbalancer` th is will bring up another Ubuntu system that we will use as our proxy.
+
+We have defined this already in our hosts file but we do not have the ssh key shared between so we need to also run `ssh-copy-id loadbalancer` when the system is up and ready.
+
+### Common role
+I created at the end of yesterdays session the role of common, common will be used across all of our servers where as the other roles are specific to use cases, now the applications I am going to install as common as spurious and I cannot see many reasons for this to be the case but it shows the objective. In our common role folder structure, navigate to tasks folder and you will have a main.yml. In this yaml we need to point this to our install_tools.yml file and we do this by adding a line `- import_tasks: install_tools.yml` this used to be `include` but this is going to be depreciated soon enough so we are using import_tasks.
+
+```
+- name: "Install Common packages"
+ apt: name={{ item }} state=latest
+ with_items:
+ - neofetch
+ - tree
+ - figlet
+```
+
+In our playbook we then add in the common role for each host block.
+
+```
+- hosts: webservers
+ become: yes
+ vars:
+ http_port: 8000
+ https_port: 4443
+ html_welcome_msg: "Hello 90DaysOfDevOps - Welcome to Day 66!"
+ roles:
+ - common
+ - apache2
+```
+
+### nginx
+
+The next phase is for us to install and configure nginx on our loadbalancer vm. Like the common folder structure we have the nginx based on the last session.
+
+First of all we are going to add a host block to our playbook. This block will include our common role and then our new nginx role.
+
+The playbook can be found here. [playbook4.yml](Days/../Configmgmt/ansible-scenario4/playbook4.yml)
+
+```
+- hosts: webservers
+ become: yes
+ vars:
+ http_port: 8000
+ https_port: 4443
+ html_welcome_msg: "Hello 90DaysOfDevOps - Welcome to Day 66!"
+ roles:
+ - common
+ - apache2
+
+- hosts: proxy
+ become: yes
+ roles:
+ - common
+ - nginx
+```
+
+In order for this to mean anything though we have to define our tasks that we wish to run, in this same way we will modify the main.yml in tasks to point to two files this time, one for installation and one for configuration.
+
+There are some other files that I have modified based on the outcome we desire, take a look in the folder [ansible-scenario4](Days/Configmgmt/ansible-scenario4) for all the files changed. You should check the folders tasks, handlers and templates in the nginx folder and you will find those additional changes and files.
+
+### Run the updated playbook
+
+Since yesterday we have added the common role which will now install some packages on our system and then we have also added our nginx role which includes installation and configuration.
+
+Let's run our playbook4.yml using the `ansible-playbook playbook4.yml`
+
+
+
+Now that we have our webservers and loadbalancer configured we should now be able to go to http://192.168.169.134/ which is the IP address of our loadbalancer.
+
+
+
+If you are following along and you do not have this state then it could be down to the server IP addresses you have in your environment. The file can be found in templates\mysite.j2 and looks similar to the below: You would need to update with your webserver IP addresses.
+
+```
+ upstream webservers {
+ server 192.168.169.131:8000;
+ server 192.168.169.132:8000;
+ }
+
+ server {
+ listen 80;
+
+ location / {
+ proxy_pass http://webservers;
+ }
+ }
+```
+I am pretty confident that what we have installed is all good but let's use an adhoc command using ansible to check these common tools installation.
+
+`ansible loadbalancer -m command -a neofetch`
+
+
+
+
+
+## Resources
+
+- [What is Ansible](https://www.youtube.com/watch?v=1id6ERvfozo)
+- [Ansible 101 - Episode 1 - Introduction to Ansible](https://www.youtube.com/watch?v=goclfp6a2IQ)
+- [NetworkChuck - You need to learn Ansible right now!](https://www.youtube.com/watch?v=5hycyr-8EKs&t=955s)
+- [Your complete guide to Ansible](https://www.youtube.com/playlist?list=PLnFWJCugpwfzTlIJ-JtuATD2MBBD7_m3u)
+
+This final playlist listed above is where a lot of the code and ideas came from for this section, a great resource and walkthrough in video format.
+
+See you on [Day 68](day68.md)
\ No newline at end of file
diff --git a/README.md b/README.md
index 6378744..f847392 100644
--- a/README.md
+++ b/README.md
@@ -105,8 +105,8 @@ This will not cover all things DevOps but it will cover the areas that I feel wi
- [✔️] 📜 63 > [The Big Picture: Configuration Management](Days/day63.md)
- [✔️] 📜 64 > [Ansible: Getting Started](Days/day64.md)
- [✔️] 📜 65 > [Ansible Playbooks](Days/day65.md)
-- [🚧] 📜 66 > [Ansible Playbooks Continued...](Days/day66.md)
-- [] 📜 67 > [](Days/day67.md)
+- [✔️] 📜 66 > [Ansible Playbooks Continued...](Days/day66.md)
+- [🚧] 📜 67 > [Using Roles & Deploying a Loadbalancer](Days/day67.md)
- [] 📜 68 > [](Days/day68.md)
- [] 📜 69 > [](Days/day69.md)