diff --git a/src/nodes/deploy/lvm/cinder-volume.yml b/src/nodes/deploy/lvm/cinder-volume.yml
deleted file mode 100644
index d348085dfb22eacb1c1f2e8b4cdaf8c3cc944550..0000000000000000000000000000000000000000
--- a/src/nodes/deploy/lvm/cinder-volume.yml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-# This file contains an example to show how to set
-# the cinder-volume service to run in a container.
-#
-# Important note:
-# When using LVM or any iSCSI-based cinder backends, such as NetApp with
-# iSCSI protocol, the cinder-volume service *must* run on metal.
-# Reference: https://bugs.launchpad.net/ubuntu/+source/lxc/+bug/1226855
-
-container_skel:
-  cinder_volumes_container:
-    properties:
-      is_metal: true
-
diff --git a/src/nodes/deploy/lvm/openstack_user_config_test.yml b/src/nodes/deploy/lvm/openstack_user_config_test.yml
deleted file mode 100644
index ba1aa06262799834ac2166b79dce848b528ecfa6..0000000000000000000000000000000000000000
--- a/src/nodes/deploy/lvm/openstack_user_config_test.yml
+++ /dev/null
@@ -1,119 +0,0 @@
-cidr_networks:
-    container: 10.0.1.0/24
-    tunnel: 10.0.10.0/24
-    storage: 10.0.2.0/24
-
-used_ips:
-    - "10.0.1.1,10.0.1.20" # red de management
-    - "10.0.2.1,10.0.2.20" # red de storage
-    - "10.0.10.1,10.0.10.20" # red de vxlan
-
-
-global_overrides:
-    internal_lb_vip_address: 10.0.1.12
-    external_lb_vip_address: 10.0.1.12
-    tunnel_bridge: "br-vxlan"
-    management_bridge: "br-mgmt"
-
-    provider_networks:
-        - network:
-            group_binds:
-                - all_containers
-                - hosts
-            type: "raw"
-            container_bridge: "br-mgmt"
-            container_interface: "eth1"
-            container_type: "veth"
-            ip_from_q: "container"
-            is_container_address: true
-            is_ssh_address: true
-        - network:
-            group_binds:
-                - glance_api
-                - cinder_api
-                - cinder_volume
-                - nova_compute
-            type: "raw"
-            container_bridge: "br-storage"
-            container_type: "veth"
-            container_interface: "eth2"
-            container_mtu: "9000"
-            ip_from_q: "storage"
-        - network:
-            group_binds:
-                - neutron_linuxbridge_agent
-            container_bridge: "br-vxlan"
-            container_type: "veth"
-            container_interface: "eth10"
-            container_mtu: "9000"
-            ip_from_q: "tunnel"
-            type: "vxlan"
-            range: "1:1000"
-            net_name: "vxlan"
-        - network:
-            group_binds:
-                - neutron_linuxbridge_agent
-            container_bridge: "br-vlan"
-            container_type: "veth"
-            container_interface: "eth11"
-            type: "vlan"
-            range: "101:200,301:400"
-            net_name: "vlan"
-        - network:
-            group_binds:
-                - neutron_linuxbridge_agent
-            container_bridge: "br-vlan"
-            container_type: "veth"
-            container_interface: "eth12"
-            host_bind_override: "eth12"
-            type: "flat"
-            net_name: "flat"
-
-shared-infra_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-repo-infra_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-haproxy_hosts:
-    infra2:
-        ip: 10.0.1.12
-
-os-infra_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-identity_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-network_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-compute_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-storage-infra_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-storage_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-        container_vars:
-            cinder_backends:
-                lvm:
-                    volume_backend_name: LVM
-                    volume_driver: cinder.volume.drivers.lvm.LVMVolumeDriver
-                    volume_group: cinder-volumes
-                    iscsi_ip_address: "10.0.2.11"
-
-log_hosts:
-    infra1:
-        ip: 10.0.1.11
-
diff --git a/src/nodes/deploy/lvm/opestack_user_config_prod.yml b/src/nodes/deploy/lvm/opestack_user_config_prod.yml
deleted file mode 100644
index 299c9fd7706dfa0ac205b1e82f48394cde14c947..0000000000000000000000000000000000000000
--- a/src/nodes/deploy/lvm/opestack_user_config_prod.yml
+++ /dev/null
@@ -1,161 +0,0 @@
----
-cidr_networks:
-    container: 10.0.1.0/24
-    tunnel: 10.0.10.0/24
-    storage: 10.0.2.0/24
-
-used_ips:
-    - "10.0.1.1,10.0.1.20" # red de management
-    - "10.0.2.1,10.0.2.20" # red de storage
-    - "10.0.10.1,10.0.10.20" # red de vxlan
-
-
-global_overrides:
-    internal_lb_vip_address: 10.0.1.15
-  #
-  # The below domain name must resolve to an IP address
-  # in the CIDR specified in haproxy_keepalived_external_vip_cidr.
-  # If using different protocols (https/http) for the public/internal
-  # endpoints the two addresses must be different.
-  #
-    external_lb_vip_address: 192.168.60.160
-    tunnel_bridge: "br-vxlan"
-    management_bridge: "br-mgmt"
-
-    provider_networks:
-        - network:
-            group_binds:
-                - all_containers
-                - hosts
-            type: "raw"
-            container_bridge: "br-mgmt"
-            container_interface: "eth1"
-            container_type: "veth"
-            ip_from_q: "container"
-            is_container_address: true
-            is_ssh_address: true
-        - network:
-            group_binds:
-                - glance_api
-                - cinder_api
-                - cinder_volume
-                - nova_compute
-            type: "raw"
-            container_bridge: "br-storage"
-            container_type: "veth"
-            container_interface: "eth2"
-            container_mtu: "9000"
-            ip_from_q: "storage"
-        - network:
-            group_binds:
-                - neutron_linuxbridge_agent
-            container_bridge: "br-vxlan"
-            container_type: "veth"
-            container_interface: "eth10"
-            container_mtu: "9000"
-            ip_from_q: "tunnel"
-            type: "vxlan"
-            range: "1:1000"
-            net_name: "vxlan"
-        - network:
-            group_binds:
-                - neutron_linuxbridge_agent
-            container_bridge: "br-vlan"
-            container_type: "veth"
-            container_interface: "eth11"
-            host_bind_override: "eth3"
-            type: "vlan"
-            range: "101:200,301:400"
-            net_name: "vlan"
-        - network:
-            group_binds:
-                - neutron_linuxbridge_agent
-            container_bridge: "br-vlan"
-            container_type: "veth"
-            container_interface: "eth12"
-            host_bind_override: "eth3"
-            type: "flat"
-            net_name: "flat"
-
-###
-### Infrastructure
-###
-
-# galera, memcache, rabbitmq, utility
-shared-infra_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-# repository (apt cache, python packages, etc)
-repo-infra_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-# load balancer
-# Ideally the load balancer should not use the Infrastructure hosts.
-# Dedicated hardware is best for improved performance and security.
-haproxy_hosts:
-    balancer1:
-        ip: 10.0.1.15
-
-# rsyslog server
-log_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-
-###
-### OpenStack
-###
-
-# keystone
-identity_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-# cinder api services
-storage-infra_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-# glance
-image_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-# nova api, conductor, etc services
-compute-infra_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-# heat
-orchestration_hosts:
-    infra1:
-       ip: 10.0.1.11
-
-# horizon
-dashboard_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-# neutron server, agents (L3, etc)
-network_hosts:
-    infra1:
-        ip: 10.0.1.11
-
-# nova hypervisors
-compute_hosts:
-    compute1:
-        ip: 10.0.1.12
-
-# cinder volume hosts
-storage_hosts:
-    storage1:
-        ip: 10.0.1.13
-        container_vars:
-            cinder_backends:
-                lvm:
-                    volume_backend_name: LVM
-                    volume_driver: cinder.volume.drivers.lvm.LVMVolumeDriver
-                    volume_group: cinder-volumes
-                    iscsi_ip_address: "10.0.2.13"
\ No newline at end of file
diff --git a/src/nodes/deploy/lvm/user_variables.yml b/src/nodes/deploy/lvm/user_variables.yml
deleted file mode 100644
index b826f11dfb9510da238c4a55886fc046ad1ee7d7..0000000000000000000000000000000000000000
--- a/src/nodes/deploy/lvm/user_variables.yml
+++ /dev/null
@@ -1,178 +0,0 @@
----
-# Copyright 2014, Rackspace US, Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-###
-### This file contains commonly used overrides for convenience. Please inspect
-### the defaults for each role to find additional override options.
-###
-
-## Debug and Verbose options.
-debug: false
-
-## Common Glance Overrides
-# Set glance_default_store to "swift" if using Cloud Files backend
-# or "rbd" if using ceph backend; the latter will trigger ceph to get
-# installed on glance. If using a file store, a shared file store is
-# recommended. See the OpenStack-Ansible install guide and the OpenStack
-# documentation for more details.
-# Note that "swift" is automatically set as the default back-end if there
-# are any swift hosts in the environment. Use this setting to override
-# this automation if you wish for a different default back-end.
-# glance_default_store: file
-
-## Ceph pool name for Glance to use
-# glance_rbd_store_pool: images
-# glance_rbd_store_chunk_size: 8
-
-## Common Nova Overrides
-# When nova_libvirt_images_rbd_pool is defined, ceph will be installed on nova
-# hosts.
-# nova_libvirt_images_rbd_pool: vms
-
-# If you wish to change the dhcp_domain configured for both nova and neutron
-# dhcp_domain: openstacklocal
-
-## Common Glance Overrides when using a Swift back-end
-# By default when 'glance_default_store' is set to 'swift' the playbooks will
-# expect to use the Swift back-end that is configured in the same inventory.
-# If the Swift back-end is not in the same inventory (ie it is already setup
-# through some other means) then these settings should be used.
-#
-# NOTE: Ensure that the auth version matches your authentication endpoint.
-#
-# NOTE: If the password for glance_swift_store_key contains a dollar sign ($),
-# it must be escaped with an additional dollar sign ($$), not a backslash. For
-# example, a password of "super$ecure" would need to be entered as
-# "super$$ecure" below.  See Launchpad Bug #1259729 for more details.
-#
-# glance_swift_store_auth_version: 3
-# glance_swift_store_auth_address: "https://some.auth.url.com"
-# glance_swift_store_user: "OPENSTACK_TENANT_ID:OPENSTACK_USER_NAME"
-# glance_swift_store_key: "OPENSTACK_USER_PASSWORD"
-# glance_swift_store_container: "NAME_OF_SWIFT_CONTAINER"
-# glance_swift_store_region: "NAME_OF_REGION"
-
-## Common Ceph Overrides
-# ceph_mons:
-#   - 10.16.5.40
-#   - 10.16.5.41
-#   - 10.16.5.42
-
-## Custom Ceph Configuration File (ceph.conf)
-# By default, your deployment host will connect to one of the mons defined above to
-# obtain a copy of your cluster's ceph.conf.  If you prefer, uncomment ceph_conf_file
-# and customise to avoid ceph.conf being copied from a mon.
-# ceph_conf_file: |
-#   [global]
-#   fsid = 00000000-1111-2222-3333-444444444444
-#   mon_initial_members = mon1.example.local,mon2.example.local,mon3.example.local
-#   mon_host = 10.16.5.40,10.16.5.41,10.16.5.42
-#   # optionally, you can use this construct to avoid defining this list twice:
-#   # mon_host = {{ ceph_mons|join(',') }}
-#   auth_cluster_required = cephx
-#   auth_service_required = cephx
-
-
-# By default, openstack-ansible configures all OpenStack services to talk to
-# RabbitMQ over encrypted connections on port 5671. To opt-out of this default,
-# set the rabbitmq_use_ssl variable to 'false'. The default setting of 'true'
-# is highly recommended for securing the contents of RabbitMQ messages.
-# rabbitmq_use_ssl: false
-
-# RabbitMQ management plugin is enabled by default, the guest user has been
-# removed for security reasons and a new userid 'monitoring' has been created
-# with the 'monitoring' user tag. In order to modify the userid, uncomment the
-# following and change 'monitoring' to your userid of choice.
-# rabbitmq_monitoring_userid: monitoring
-
-
-## Additional pinning generator that will allow for more packages to be pinned as you see fit.
-## All pins allow for package and versions to be defined. Be careful using this as versions
-## are always subject to change and updates regarding security will become your problem from this
-## point on. Pinning can be done based on a package version, release, or origin. Use "*" in the
-## package name to indicate that you want to pin all package to a particular constraint.
-# apt_pinned_packages:
-#   - { package: "lxc", version: "1.0.7-0ubuntu0.1" }
-#   - { package: "libvirt-bin", version: "1.2.2-0ubuntu13.1.9" }
-#   - { package: "rabbitmq-server", origin: "www.rabbitmq.com" }
-#   - { package: "*", release: "MariaDB" }
-
-
-## Environment variable settings
-# This allows users to specify the additional environment variables to be set
-# which is useful in setting where you working behind a proxy. If working behind
-# a proxy It's important to always specify the scheme as "http://". This is what
-# the underlying python libraries will handle best. This proxy information will be
-# placed both on the hosts and inside the containers.
-
-## Example environment variable setup:
-## This is used by apt-cacher-ng to download apt packages:
-proxy_env_url: http://10.0.1.1:3128/
-
-## (1) This sets up a permanent environment, used during and after deployment:
-no_proxy_env: "localhost,127.0.0.1,{{ internal_lb_vip_address }},{{ external_lb_vip_address }},{% for host in groups['all_containers'] %}{{ hostvars[host]['container_address'] }}{% if not loop.last %},{% endif %}{% endfor %}"
-global_environment_variables:
-    HTTP_PROXY: "{{ proxy_env_url }}"
-    HTTPS_PROXY: "{{ proxy_env_url }}"
-    NO_PROXY: "{{ no_proxy_env }}"
-    http_proxy: "{{ proxy_env_url }}"
-    https_proxy: "{{ proxy_env_url }}"
-    no_proxy: "{{ no_proxy_env }}"
-#
-## (2) This is applied only during deployment, nothing is left after deployment is complete:
-deployment_environment_variables:
-    http_proxy: "{{ proxy_env_url }}"
-    https_proxy: "{{ proxy_env_url }}"
-    no_proxy: "localhost,127.0.0.1,{{ internal_lb_vip_address }},{{ external_lb_vip_address }},{% for host in groups['keystone_all'] %}{{ hostvars[host]['container_address'] }}{% if not loop.last %},{% endif %}{% endfor %}"
-
-
-## SSH connection wait time
-# If an increased delay for the ssh connection check is desired,
-# uncomment this variable and set it appropriately.
-#ssh_delay: 5
-
-
-## HAProxy and keepalived
-# All the previous variables are used inside a var, in the group vars.
-# You can override the current keepalived definition (see
-# group_vars/all/keepalived.yml) in your user space if necessary.
-#
-# Uncomment this to disable keepalived installation (cf. documentation)
-# haproxy_use_keepalived: False
-#
-# HAProxy Keepalived configuration (cf. documentation)
-# Make sure that this is set correctly according to the CIDR used for your
-# internal and external addresses.
-# haproxy_keepalived_external_vip_cidr: "{{external_lb_vip_address}}/32"
-# haproxy_keepalived_internal_vip_cidr: "{{internal_lb_vip_address}}/32"
-# haproxy_keepalived_external_interface:
-# haproxy_keepalived_internal_interface:
-
-# Defines the default VRRP id used for keepalived with haproxy.
-# Overwrite it to your value to make sure you don't overlap
-# with existing VRRPs id on your network. Default is 10 for the external and 11 for the
-# internal VRRPs
-# haproxy_keepalived_external_virtual_router_id:
-# haproxy_keepalived_internal_virtual_router_id:
-
-# Defines the VRRP master/backup priority. Defaults respectively to 100 and 20
-# haproxy_keepalived_priority_master:
-# haproxy_keepalived_priority_backup:
-
-# Keepalived default IP address used to check its alive status (IPv4 only)
-# keepalived_ping_address: "193.0.14.129"
-
-# Variable para habilitar la creación de imagenes en el Horizon en forma legacy
-horizon_images_upload_mode: "legacy"
diff --git a/src/nodes/compute01/etc/chrony.conf b/src/nodes/lb/compute01/etc/chrony.conf
similarity index 100%
rename from src/nodes/compute01/etc/chrony.conf
rename to src/nodes/lb/compute01/etc/chrony.conf
diff --git a/src/nodes/compute01/etc/environment b/src/nodes/lb/compute01/etc/environment
similarity index 100%
rename from src/nodes/compute01/etc/environment
rename to src/nodes/lb/compute01/etc/environment
diff --git a/src/nodes/compute01/etc/hostname b/src/nodes/lb/compute01/etc/hostname
similarity index 100%
rename from src/nodes/compute01/etc/hostname
rename to src/nodes/lb/compute01/etc/hostname
diff --git a/src/nodes/compute01/network-scripts/ifcfg-br-mgmt b/src/nodes/lb/compute01/network-scripts/ifcfg-br-mgmt
similarity index 100%
rename from src/nodes/compute01/network-scripts/ifcfg-br-mgmt
rename to src/nodes/lb/compute01/network-scripts/ifcfg-br-mgmt
diff --git a/src/nodes/compute01/network-scripts/ifcfg-br-storage b/src/nodes/lb/compute01/network-scripts/ifcfg-br-storage
similarity index 100%
rename from src/nodes/compute01/network-scripts/ifcfg-br-storage
rename to src/nodes/lb/compute01/network-scripts/ifcfg-br-storage
diff --git a/src/nodes/compute01/network-scripts/ifcfg-br-vlan b/src/nodes/lb/compute01/network-scripts/ifcfg-br-vlan
similarity index 100%
rename from src/nodes/compute01/network-scripts/ifcfg-br-vlan
rename to src/nodes/lb/compute01/network-scripts/ifcfg-br-vlan
diff --git a/src/nodes/compute01/network-scripts/ifcfg-br-vxlan b/src/nodes/lb/compute01/network-scripts/ifcfg-br-vxlan
similarity index 100%
rename from src/nodes/compute01/network-scripts/ifcfg-br-vxlan
rename to src/nodes/lb/compute01/network-scripts/ifcfg-br-vxlan
diff --git a/src/nodes/compute01/network-scripts/ifcfg-eth0 b/src/nodes/lb/compute01/network-scripts/ifcfg-eth0
similarity index 100%
rename from src/nodes/compute01/network-scripts/ifcfg-eth0
rename to src/nodes/lb/compute01/network-scripts/ifcfg-eth0
diff --git a/src/nodes/compute01/network-scripts/ifcfg-eth1 b/src/nodes/lb/compute01/network-scripts/ifcfg-eth1
similarity index 100%
rename from src/nodes/compute01/network-scripts/ifcfg-eth1
rename to src/nodes/lb/compute01/network-scripts/ifcfg-eth1
diff --git a/src/nodes/compute01/network-scripts/ifcfg-eth2 b/src/nodes/lb/compute01/network-scripts/ifcfg-eth2
similarity index 100%
rename from src/nodes/compute01/network-scripts/ifcfg-eth2
rename to src/nodes/lb/compute01/network-scripts/ifcfg-eth2
diff --git a/src/nodes/compute01/network-scripts/ifcfg-eth2.31 b/src/nodes/lb/compute01/network-scripts/ifcfg-eth2.31
similarity index 100%
rename from src/nodes/compute01/network-scripts/ifcfg-eth2.31
rename to src/nodes/lb/compute01/network-scripts/ifcfg-eth2.31
diff --git a/src/nodes/compute02/etc/chrony.conf b/src/nodes/lb/compute02/etc/chrony.conf
similarity index 100%
rename from src/nodes/compute02/etc/chrony.conf
rename to src/nodes/lb/compute02/etc/chrony.conf
diff --git a/src/nodes/compute02/etc/environment b/src/nodes/lb/compute02/etc/environment
similarity index 100%
rename from src/nodes/compute02/etc/environment
rename to src/nodes/lb/compute02/etc/environment
diff --git a/src/nodes/compute02/etc/hostname b/src/nodes/lb/compute02/etc/hostname
similarity index 100%
rename from src/nodes/compute02/etc/hostname
rename to src/nodes/lb/compute02/etc/hostname
diff --git a/src/nodes/compute02/network-scripts/ifcfg-br-mgmt b/src/nodes/lb/compute02/network-scripts/ifcfg-br-mgmt
similarity index 100%
rename from src/nodes/compute02/network-scripts/ifcfg-br-mgmt
rename to src/nodes/lb/compute02/network-scripts/ifcfg-br-mgmt
diff --git a/src/nodes/compute02/network-scripts/ifcfg-br-storage b/src/nodes/lb/compute02/network-scripts/ifcfg-br-storage
similarity index 100%
rename from src/nodes/compute02/network-scripts/ifcfg-br-storage
rename to src/nodes/lb/compute02/network-scripts/ifcfg-br-storage
diff --git a/src/nodes/compute02/network-scripts/ifcfg-br-vlan b/src/nodes/lb/compute02/network-scripts/ifcfg-br-vlan
similarity index 100%
rename from src/nodes/compute02/network-scripts/ifcfg-br-vlan
rename to src/nodes/lb/compute02/network-scripts/ifcfg-br-vlan
diff --git a/src/nodes/compute02/network-scripts/ifcfg-br-vxlan b/src/nodes/lb/compute02/network-scripts/ifcfg-br-vxlan
similarity index 100%
rename from src/nodes/compute02/network-scripts/ifcfg-br-vxlan
rename to src/nodes/lb/compute02/network-scripts/ifcfg-br-vxlan
diff --git a/src/nodes/compute02/network-scripts/ifcfg-eth0 b/src/nodes/lb/compute02/network-scripts/ifcfg-eth0
similarity index 100%
rename from src/nodes/compute02/network-scripts/ifcfg-eth0
rename to src/nodes/lb/compute02/network-scripts/ifcfg-eth0
diff --git a/src/nodes/compute02/network-scripts/ifcfg-eth1 b/src/nodes/lb/compute02/network-scripts/ifcfg-eth1
similarity index 100%
rename from src/nodes/compute02/network-scripts/ifcfg-eth1
rename to src/nodes/lb/compute02/network-scripts/ifcfg-eth1
diff --git a/src/nodes/compute02/network-scripts/ifcfg-eth2 b/src/nodes/lb/compute02/network-scripts/ifcfg-eth2
similarity index 100%
rename from src/nodes/compute02/network-scripts/ifcfg-eth2
rename to src/nodes/lb/compute02/network-scripts/ifcfg-eth2
diff --git a/src/nodes/compute02/network-scripts/ifcfg-eth2.31 b/src/nodes/lb/compute02/network-scripts/ifcfg-eth2.31
similarity index 100%
rename from src/nodes/compute02/network-scripts/ifcfg-eth2.31
rename to src/nodes/lb/compute02/network-scripts/ifcfg-eth2.31
diff --git a/src/nodes/deploy/etc/chrony.conf b/src/nodes/lb/deploy/etc/chrony.conf
similarity index 100%
rename from src/nodes/deploy/etc/chrony.conf
rename to src/nodes/lb/deploy/etc/chrony.conf
diff --git a/src/nodes/deploy/etc/environment b/src/nodes/lb/deploy/etc/environment
similarity index 100%
rename from src/nodes/deploy/etc/environment
rename to src/nodes/lb/deploy/etc/environment
diff --git a/src/nodes/deploy/etc/hostname b/src/nodes/lb/deploy/etc/hostname
similarity index 100%
rename from src/nodes/deploy/etc/hostname
rename to src/nodes/lb/deploy/etc/hostname
diff --git a/src/nodes/deploy/network-scripts/ifcfg-eth0 b/src/nodes/lb/deploy/network-scripts/ifcfg-eth0
similarity index 100%
rename from src/nodes/deploy/network-scripts/ifcfg-eth0
rename to src/nodes/lb/deploy/network-scripts/ifcfg-eth0
diff --git a/src/nodes/deploy/ovs/openstack_deploy/env.d/cinder-volume.yml b/src/nodes/lb/deploy/openstack_deploy/env.d/cinder-volume.yml
similarity index 100%
rename from src/nodes/deploy/ovs/openstack_deploy/env.d/cinder-volume.yml
rename to src/nodes/lb/deploy/openstack_deploy/env.d/cinder-volume.yml
diff --git a/src/nodes/deploy/ceph/opestack_user_config_prod.yml b/src/nodes/lb/deploy/openstack_deploy/openstack_user_config.yml
similarity index 80%
rename from src/nodes/deploy/ceph/opestack_user_config_prod.yml
rename to src/nodes/lb/deploy/openstack_deploy/openstack_user_config.yml
index 30c94b0ee2b89386fb0cb165493c9d7cf1cc3188..e089c967ea6039f72a8e10a6b7de46d125541296 100644
--- a/src/nodes/deploy/ceph/opestack_user_config_prod.yml
+++ b/src/nodes/lb/deploy/openstack_deploy/openstack_user_config.yml
@@ -1,17 +1,17 @@
 ---
 cidr_networks:
-    container: 10.0.1.0/24
-    tunnel: 10.0.10.0/24
-    storage: 10.0.2.0/24
+    container: 10.0.10.0/24
+    tunnel: 10.0.31.0/24
+    storage: 10.0.20.0/24
 
 used_ips:
-    - "10.0.1.1,10.0.1.20" # red de management
-    - "10.0.2.1,10.0.2.20" # red de storage
-    - "10.0.10.1,10.0.10.20" # red de vxlan
+    - "10.0.10.1,10.0.10.30" # red de management
+    - "10.0.20.1,10.0.20.30" # red de storage
+    - "10.0.31.1,10.0.31.30" # red de vxlan
 
 
 global_overrides:
-    internal_lb_vip_address: 10.0.1.15
+    internal_lb_vip_address: 10.0.10.15
   #
   # The below domain name must resolve to an IP address
   # in the CIDR specified in haproxy_keepalived_external_vip_cidr.
@@ -59,23 +59,22 @@ global_overrides:
             type: "vxlan"
             range: "1:1000"
             net_name: "vxlan"
-#        - network:
-#            group_binds:
-#                - neutron_linuxbridge_agent
-#            container_bridge: "br-vlan"
-#            container_type: "veth"
-#            container_interface: "eth11"
-#            host_bind_override: "eth3"
-#            type: "vlan"
-#            range: "101:200,301:400"
-#            net_name: "vlan"
+        - network:
+            group_binds:
+                - neutron_linuxbridge_agent
+            container_bridge: "br-vlan"
+            container_type: "veth"
+            container_interface: "eth11"
+            type: "vlan"
+            range: "150:200,300:400"
+            net_name: "vlan"
         - network:
             group_binds:
                 - neutron_linuxbridge_agent
             container_bridge: "br-vlan"
             container_type: "veth"
             container_interface: "eth12"
-            host_bind_override: "eth3"
+            host_bind_override: "eth12"
             type: "flat"
             net_name: "flat"
 
@@ -85,19 +84,21 @@ global_overrides:
 
 _infrastructure_hosts: &infrastructure_hosts
     infra1:
-        ip: 10.0.1.11
+        ip: 10.0.10.11
 
 # nova hypervisors
 compute_hosts:
     compute1:
-        ip: 10.0.1.12
+        ip: 10.0.10.12
+    compute2:
+        ip: 10.0.10.22
 
 # ceph Object Storage Deamons
 ceph-osd_hosts:
   osd1:
-    ip: 10.0.1.13
+    ip: 10.0.10.13
   osd2:
-    ip: 10.0.1.14
+    ip: 10.0.10.23
 
 # galera, memcache, rabbitmq, utility
 shared-infra_hosts: *infrastructure_hosts
@@ -113,7 +114,7 @@ repo-infra_hosts: *infrastructure_hosts
 # Dedicated hardware is best for improved performance and security.
 haproxy_hosts:
     balancer1:
-        ip: 10.0.1.15
+        ip: 10.0.10.15
 
 # rsyslog server
 log_hosts: *infrastructure_hosts
diff --git a/src/nodes/deploy/ceph/user_variables.yml b/src/nodes/lb/deploy/openstack_deploy/user_variables.yml
similarity index 98%
rename from src/nodes/deploy/ceph/user_variables.yml
rename to src/nodes/lb/deploy/openstack_deploy/user_variables.yml
index 7375a2e1be8f46b667e95bd3d4631e8931da0c9d..45b319bfeb180ebf17c2d59f9520c960a390f62d 100644
--- a/src/nodes/deploy/ceph/user_variables.yml
+++ b/src/nodes/lb/deploy/openstack_deploy/user_variables.yml
@@ -119,7 +119,7 @@ debug: true
 
 ## Example environment variable setup:
 ## This is used by apt-cacher-ng to download apt packages:
-proxy_env_url: http://10.0.1.1:3128/
+proxy_env_url: http://192.168.60.242:3128/
 
 ## (1) This sets up a permanent environment, used during and after deployment:
 no_proxy_env: "localhost,127.0.0.1,{{ internal_lb_vip_address }},{{ external_lb_vip_address }},{% for host in groups['all_containers'] %}{{ hostvars[host]['container_address'] }}{% if not loop.last %},{% endif %}{% endfor %}"
@@ -178,9 +178,9 @@ deployment_environment_variables:
 horizon_images_upload_mode: "legacy"
 
 cidr_networks:
-    container: 10.0.1.0/24
-    tunnel: 10.0.10.0/24
-    storage: 10.0.2.0/24
+    container: 10.0.10.0/24
+    tunnel: 10.0.31.0/24
+    storage: 10.0.20.0/24
 
 ## Ceph cluster fsid (must be generated before first run)
 ## Generate a uuid using: python -c 'import uuid; print(str(uuid.uuid4()))'
@@ -218,3 +218,5 @@ cinder_backends:
     rbd_user: "{{ cinder_ceph_client }}"
     rbd_secret_uuid: "{{ cinder_ceph_client_uuid }}"
     report_discard_supported: true
+
+centos_epel_mirror: http://mirror.nextlayer.at/epel
diff --git a/src/nodes/haproxy01/etc/chrony.conf b/src/nodes/lb/haproxy01/etc/chrony.conf
similarity index 100%
rename from src/nodes/haproxy01/etc/chrony.conf
rename to src/nodes/lb/haproxy01/etc/chrony.conf
diff --git a/src/nodes/haproxy01/etc/environment b/src/nodes/lb/haproxy01/etc/environment
similarity index 100%
rename from src/nodes/haproxy01/etc/environment
rename to src/nodes/lb/haproxy01/etc/environment
diff --git a/src/nodes/haproxy01/etc/hostname b/src/nodes/lb/haproxy01/etc/hostname
similarity index 100%
rename from src/nodes/haproxy01/etc/hostname
rename to src/nodes/lb/haproxy01/etc/hostname
diff --git a/src/nodes/haproxy01/network-scripts/ifcfg-eth0 b/src/nodes/lb/haproxy01/network-scripts/ifcfg-eth0
similarity index 100%
rename from src/nodes/haproxy01/network-scripts/ifcfg-eth0
rename to src/nodes/lb/haproxy01/network-scripts/ifcfg-eth0
diff --git a/src/nodes/haproxy01/network-scripts/ifcfg-eth1 b/src/nodes/lb/haproxy01/network-scripts/ifcfg-eth1
similarity index 100%
rename from src/nodes/haproxy01/network-scripts/ifcfg-eth1
rename to src/nodes/lb/haproxy01/network-scripts/ifcfg-eth1
diff --git a/src/nodes/infra01/etc/chrony.conf b/src/nodes/lb/infra01/etc/chrony.conf
similarity index 100%
rename from src/nodes/infra01/etc/chrony.conf
rename to src/nodes/lb/infra01/etc/chrony.conf
diff --git a/src/nodes/infra01/etc/environment b/src/nodes/lb/infra01/etc/environment
similarity index 100%
rename from src/nodes/infra01/etc/environment
rename to src/nodes/lb/infra01/etc/environment
diff --git a/src/nodes/infra01/etc/hostname b/src/nodes/lb/infra01/etc/hostname
similarity index 100%
rename from src/nodes/infra01/etc/hostname
rename to src/nodes/lb/infra01/etc/hostname
diff --git a/src/nodes/infra01/network-scripts/ifcfg-br-mgmt b/src/nodes/lb/infra01/network-scripts/ifcfg-br-mgmt
similarity index 100%
rename from src/nodes/infra01/network-scripts/ifcfg-br-mgmt
rename to src/nodes/lb/infra01/network-scripts/ifcfg-br-mgmt
diff --git a/src/nodes/infra01/network-scripts/ifcfg-br-storage b/src/nodes/lb/infra01/network-scripts/ifcfg-br-storage
similarity index 100%
rename from src/nodes/infra01/network-scripts/ifcfg-br-storage
rename to src/nodes/lb/infra01/network-scripts/ifcfg-br-storage
diff --git a/src/nodes/infra01/network-scripts/ifcfg-br-vlan b/src/nodes/lb/infra01/network-scripts/ifcfg-br-vlan
similarity index 100%
rename from src/nodes/infra01/network-scripts/ifcfg-br-vlan
rename to src/nodes/lb/infra01/network-scripts/ifcfg-br-vlan
diff --git a/src/nodes/infra01/network-scripts/ifcfg-br-vxlan b/src/nodes/lb/infra01/network-scripts/ifcfg-br-vxlan
similarity index 100%
rename from src/nodes/infra01/network-scripts/ifcfg-br-vxlan
rename to src/nodes/lb/infra01/network-scripts/ifcfg-br-vxlan
diff --git a/src/nodes/infra01/network-scripts/ifcfg-eth0 b/src/nodes/lb/infra01/network-scripts/ifcfg-eth0
similarity index 100%
rename from src/nodes/infra01/network-scripts/ifcfg-eth0
rename to src/nodes/lb/infra01/network-scripts/ifcfg-eth0
diff --git a/src/nodes/infra01/network-scripts/ifcfg-eth1 b/src/nodes/lb/infra01/network-scripts/ifcfg-eth1
similarity index 100%
rename from src/nodes/infra01/network-scripts/ifcfg-eth1
rename to src/nodes/lb/infra01/network-scripts/ifcfg-eth1
diff --git a/src/nodes/infra01/network-scripts/ifcfg-eth2 b/src/nodes/lb/infra01/network-scripts/ifcfg-eth2
similarity index 100%
rename from src/nodes/infra01/network-scripts/ifcfg-eth2
rename to src/nodes/lb/infra01/network-scripts/ifcfg-eth2
diff --git a/src/nodes/infra01/network-scripts/ifcfg-eth2.31 b/src/nodes/lb/infra01/network-scripts/ifcfg-eth2.31
similarity index 100%
rename from src/nodes/infra01/network-scripts/ifcfg-eth2.31
rename to src/nodes/lb/infra01/network-scripts/ifcfg-eth2.31
diff --git a/src/nodes/router/network-scripts/ifcfg-eth0 b/src/nodes/lb/router/network-scripts/ifcfg-eth0
similarity index 100%
rename from src/nodes/router/network-scripts/ifcfg-eth0
rename to src/nodes/lb/router/network-scripts/ifcfg-eth0
diff --git a/src/nodes/router/network-scripts/ifcfg-eth1 b/src/nodes/lb/router/network-scripts/ifcfg-eth1
similarity index 100%
rename from src/nodes/router/network-scripts/ifcfg-eth1
rename to src/nodes/lb/router/network-scripts/ifcfg-eth1
diff --git a/src/nodes/router/network-scripts/ifcfg-eth2 b/src/nodes/lb/router/network-scripts/ifcfg-eth2
similarity index 100%
rename from src/nodes/router/network-scripts/ifcfg-eth2
rename to src/nodes/lb/router/network-scripts/ifcfg-eth2
diff --git a/src/nodes/router/network-scripts/ifcfg-eth3 b/src/nodes/lb/router/network-scripts/ifcfg-eth3
similarity index 100%
rename from src/nodes/router/network-scripts/ifcfg-eth3
rename to src/nodes/lb/router/network-scripts/ifcfg-eth3
diff --git a/src/nodes/router/network-scripts/ifcfg-eth3.100 b/src/nodes/lb/router/network-scripts/ifcfg-eth3.100
similarity index 100%
rename from src/nodes/router/network-scripts/ifcfg-eth3.100
rename to src/nodes/lb/router/network-scripts/ifcfg-eth3.100
diff --git a/src/nodes/router/network-scripts/ifcfg-eth3.101 b/src/nodes/lb/router/network-scripts/ifcfg-eth3.101
similarity index 100%
rename from src/nodes/router/network-scripts/ifcfg-eth3.101
rename to src/nodes/lb/router/network-scripts/ifcfg-eth3.101
diff --git a/src/nodes/storage01/etc/chrony.conf b/src/nodes/lb/storage01/etc/chrony.conf
similarity index 100%
rename from src/nodes/storage01/etc/chrony.conf
rename to src/nodes/lb/storage01/etc/chrony.conf
diff --git a/src/nodes/storage01/etc/environment b/src/nodes/lb/storage01/etc/environment
similarity index 100%
rename from src/nodes/storage01/etc/environment
rename to src/nodes/lb/storage01/etc/environment
diff --git a/src/nodes/storage01/etc/hostname b/src/nodes/lb/storage01/etc/hostname
similarity index 100%
rename from src/nodes/storage01/etc/hostname
rename to src/nodes/lb/storage01/etc/hostname
diff --git a/src/nodes/storage01/network-scripts/ifcfg-br-mgmt b/src/nodes/lb/storage01/network-scripts/ifcfg-br-mgmt
similarity index 100%
rename from src/nodes/storage01/network-scripts/ifcfg-br-mgmt
rename to src/nodes/lb/storage01/network-scripts/ifcfg-br-mgmt
diff --git a/src/nodes/storage01/network-scripts/ifcfg-br-storage b/src/nodes/lb/storage01/network-scripts/ifcfg-br-storage
similarity index 100%
rename from src/nodes/storage01/network-scripts/ifcfg-br-storage
rename to src/nodes/lb/storage01/network-scripts/ifcfg-br-storage
diff --git a/src/nodes/storage01/network-scripts/ifcfg-eth0 b/src/nodes/lb/storage01/network-scripts/ifcfg-eth0
similarity index 100%
rename from src/nodes/storage01/network-scripts/ifcfg-eth0
rename to src/nodes/lb/storage01/network-scripts/ifcfg-eth0
diff --git a/src/nodes/storage01/network-scripts/ifcfg-eth1 b/src/nodes/lb/storage01/network-scripts/ifcfg-eth1
similarity index 100%
rename from src/nodes/storage01/network-scripts/ifcfg-eth1
rename to src/nodes/lb/storage01/network-scripts/ifcfg-eth1
diff --git a/src/nodes/storage02/etc/chrony.conf b/src/nodes/lb/storage02/etc/chrony.conf
similarity index 100%
rename from src/nodes/storage02/etc/chrony.conf
rename to src/nodes/lb/storage02/etc/chrony.conf
diff --git a/src/nodes/storage02/etc/environment b/src/nodes/lb/storage02/etc/environment
similarity index 100%
rename from src/nodes/storage02/etc/environment
rename to src/nodes/lb/storage02/etc/environment
diff --git a/src/nodes/storage02/etc/hostname b/src/nodes/lb/storage02/etc/hostname
similarity index 100%
rename from src/nodes/storage02/etc/hostname
rename to src/nodes/lb/storage02/etc/hostname
diff --git a/src/nodes/storage02/network-scripts/ifcfg-br-mgmt b/src/nodes/lb/storage02/network-scripts/ifcfg-br-mgmt
similarity index 100%
rename from src/nodes/storage02/network-scripts/ifcfg-br-mgmt
rename to src/nodes/lb/storage02/network-scripts/ifcfg-br-mgmt
diff --git a/src/nodes/storage02/network-scripts/ifcfg-br-storage b/src/nodes/lb/storage02/network-scripts/ifcfg-br-storage
similarity index 100%
rename from src/nodes/storage02/network-scripts/ifcfg-br-storage
rename to src/nodes/lb/storage02/network-scripts/ifcfg-br-storage
diff --git a/src/nodes/storage02/network-scripts/ifcfg-eth0 b/src/nodes/lb/storage02/network-scripts/ifcfg-eth0
similarity index 100%
rename from src/nodes/storage02/network-scripts/ifcfg-eth0
rename to src/nodes/lb/storage02/network-scripts/ifcfg-eth0
diff --git a/src/nodes/storage02/network-scripts/ifcfg-eth1 b/src/nodes/lb/storage02/network-scripts/ifcfg-eth1
similarity index 100%
rename from src/nodes/storage02/network-scripts/ifcfg-eth1
rename to src/nodes/lb/storage02/network-scripts/ifcfg-eth1
diff --git a/src/nodes/ovs/compute01/etc/chrony.conf b/src/nodes/ovs/compute01/etc/chrony.conf
new file mode 100644
index 0000000000000000000000000000000000000000..6c54a7185f31674b448031ddbfd7954958447b73
--- /dev/null
+++ b/src/nodes/ovs/compute01/etc/chrony.conf
@@ -0,0 +1,97 @@
+# Ansible managed
+#
+# This the default chrony.conf file for the Debian chrony package.  After
+# editing this file use the command 'invoke-rc.d chrony restart' to make
+# your changes take effect.  John Hasler <jhasler@debian.org> 1998-2008
+
+# See www.pool.ntp.org for an explanation of these servers.  Please
+# consider joining the project if possible.  If you can't or don't want to
+# use these servers I suggest that you try your ISP's nameservers.  We mark
+# the servers 'offline' so that chronyd won't try to connect when the link
+# is down.  Scripts in /etc/ppp/ip-up.d and /etc/ppp/ip-down.d use chronyc
+# commands to switch it on when a dialup link comes up and off when it goes
+# down.  Code in /etc/init.d/chrony attempts to determine whether or not
+# the link is up at boot time and set the online status accordingly.  If
+# you have an always-on connection such as cable omit the 'offline'
+# directive and chronyd will default to online.
+#
+# Note that if Chrony tries to go "online" and dns lookup of the servers
+# fails they will be discarded.  Thus under some circumstances it is
+# better to use IP numbers than host names.
+
+server 0.pool.ntp.org iburst
+server 1.pool.ntp.org iburst
+server 2.pool.ntp.org iburst
+server 3.pool.ntp.org iburst
+
+# Look here for the admin password needed for chronyc.  The initial
+# password is generated by a random process at install time.  You may
+# change it if you wish.
+
+keyfile /etc/chrony.keys
+
+# Set runtime command key.  Note that if you change the key (not the
+# password) to anything other than 1 you will need to edit
+# /etc/ppp/ip-up.d/chrony, /etc/ppp/ip-down.d/chrony, /etc/init.d/chrony
+# and /etc/cron.weekly/chrony as these scripts use it to get the password.
+
+commandkey 1
+
+# I moved the driftfile to /var/lib/chrony to comply with the Debian
+# filesystem standard.
+
+driftfile /var/lib/chrony/chrony.drift
+
+# Comment this line out to turn off logging.
+
+log tracking measurements statistics
+logdir /var/log/chrony
+
+# Stop bad estimates upsetting machine clock.
+
+maxupdateskew 100.0
+
+# Dump measurements when daemon exits.
+
+dumponexit
+
+# Specify directory for dumping measurements.
+
+dumpdir /var/lib/chrony
+
+# Let computer be a server when it is unsynchronised.
+
+local stratum 10
+
+# Allow computers on the unrouted nets to use the server.
+
+allow 10/8
+allow 192.168/16
+allow 172.16/12
+
+# This directive forces `chronyd' to send a message to syslog if it
+# makes a system clock adjustment larger than a threshold value in seconds.
+
+logchange 0.5
+
+# Adjust the clock on startup if difference is larger than 1 sec.
+makestep 1 3
+
+# This directive defines an email address to which mail should be sent
+# if chronyd applies a correction exceeding a particular threshold to the
+# system clock.
+
+# mailonchange root@localhost 0.5
+
+
+# If the last line of this file reads 'rtconutc' chrony will assume that
+# the CMOS clock is on UTC (GMT).  If it reads '# rtconutc' or is absent
+# chrony will assume local time.  The line (if any) was written by the
+# chrony postinst based on what it found in /etc/default/rcS.  You may
+# change it if necessary.
+rtconutc
+
+# Listen for NTP requests only on local interfaces.
+port 0
+bindcmdaddress 127.0.0.1
+bindcmdaddress ::1
diff --git a/src/nodes/ovs/compute01/etc/environment b/src/nodes/ovs/compute01/etc/environment
new file mode 100644
index 0000000000000000000000000000000000000000..1c39b88f63765957eb30f15330b14a9c22e655cd
--- /dev/null
+++ b/src/nodes/ovs/compute01/etc/environment
@@ -0,0 +1,13 @@
+http_proxy=http://192.168.60.242:3128
+https_proxy=http://192.168.60.242:3128
+HTTP_PROXY=http://192.168.60.242:3128
+HTTPS_PROXY=http://192.168.60.242:3128
+# BEGIN Managed by OpenStack-Ansible
+PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
+no_proxy=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+https_proxy=http://192.168.60.242:3128/
+NO_PROXY=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+http_proxy=http://192.168.60.242:3128/
+HTTPS_PROXY=http://192.168.60.242:3128/
+HTTP_PROXY=http://192.168.60.242:3128/
+# END Managed by OpenStack-Ansible
diff --git a/src/nodes/ovs/compute01/etc/hostname b/src/nodes/ovs/compute01/etc/hostname
new file mode 100644
index 0000000000000000000000000000000000000000..a18161626df1e92ac32834fb17feda7413ec9e71
--- /dev/null
+++ b/src/nodes/ovs/compute01/etc/hostname
@@ -0,0 +1 @@
+compute1
diff --git a/src/nodes/ovs/compute01/network-scripts/ifcfg-br-mgmt b/src/nodes/ovs/compute01/network-scripts/ifcfg-br-mgmt
new file mode 100644
index 0000000000000000000000000000000000000000..31ff93ad1e685bdc64a35ae3a09704697e0b5aff
--- /dev/null
+++ b/src/nodes/ovs/compute01/network-scripts/ifcfg-br-mgmt
@@ -0,0 +1,10 @@
+DEVICE=br-mgmt
+BOOTPROTO=none
+IPADDR=10.0.10.12
+PREFIX=24
+GATEWAY=10.0.10.2
+DNS1=192.168.60.230
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
+
diff --git a/src/nodes/ovs/compute01/network-scripts/ifcfg-br-storage b/src/nodes/ovs/compute01/network-scripts/ifcfg-br-storage
new file mode 100644
index 0000000000000000000000000000000000000000..8e7be4bd62e552d746b3fadd78af02dffccbb5b7
--- /dev/null
+++ b/src/nodes/ovs/compute01/network-scripts/ifcfg-br-storage
@@ -0,0 +1,8 @@
+DEVICE=br-storage
+BOOTPROTO=none
+IPADDR=10.0.20.12
+PREFIX=24
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
+
diff --git a/src/nodes/ovs/compute01/network-scripts/ifcfg-br-vlan b/src/nodes/ovs/compute01/network-scripts/ifcfg-br-vlan
new file mode 100644
index 0000000000000000000000000000000000000000..e3e40ac200484c64a3c6585d70b600188915af99
--- /dev/null
+++ b/src/nodes/ovs/compute01/network-scripts/ifcfg-br-vlan
@@ -0,0 +1,6 @@
+DEVICE=br-vlan
+BOOTPROTO=none
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
+
diff --git a/src/nodes/ovs/compute01/network-scripts/ifcfg-br-vxlan b/src/nodes/ovs/compute01/network-scripts/ifcfg-br-vxlan
new file mode 100644
index 0000000000000000000000000000000000000000..2902e6df41e9e5c9248d21afa20b543d9cf1dc6e
--- /dev/null
+++ b/src/nodes/ovs/compute01/network-scripts/ifcfg-br-vxlan
@@ -0,0 +1,8 @@
+DEVICE=br-vxlan
+BOOTPROTO=none
+IPADDR=10.0.31.12
+PREFIX=24
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
+
diff --git a/src/nodes/ovs/compute01/network-scripts/ifcfg-eth0 b/src/nodes/ovs/compute01/network-scripts/ifcfg-eth0
new file mode 100644
index 0000000000000000000000000000000000000000..a4a86335d800e736d002b58e28c3fba68ee301a3
--- /dev/null
+++ b/src/nodes/ovs/compute01/network-scripts/ifcfg-eth0
@@ -0,0 +1,8 @@
+TYPE="Ethernet"
+BOOTPROTO=none
+DEVICE=eth0
+ONBOOT=yes
+NM_CONTROLLED=no
+BRIDGE=br-mgmt
+
+
diff --git a/src/nodes/ovs/compute01/network-scripts/ifcfg-eth1 b/src/nodes/ovs/compute01/network-scripts/ifcfg-eth1
new file mode 100644
index 0000000000000000000000000000000000000000..e4c2efeca7e74ea6920317c3ab29eff313bc2034
--- /dev/null
+++ b/src/nodes/ovs/compute01/network-scripts/ifcfg-eth1
@@ -0,0 +1,7 @@
+TYPE="Ethernet"
+BOOTPROTO=none
+DEVICE=eth1
+ONBOOT=yes
+NM_CONTROLLED=no
+BRIDGE=br-storage
+
diff --git a/src/nodes/ovs/compute01/network-scripts/ifcfg-eth2 b/src/nodes/ovs/compute01/network-scripts/ifcfg-eth2
new file mode 100644
index 0000000000000000000000000000000000000000..c0ea8fbdf6f2ef7bbf55f7112d32bdb2990e1af9
--- /dev/null
+++ b/src/nodes/ovs/compute01/network-scripts/ifcfg-eth2
@@ -0,0 +1,7 @@
+TYPE="Ethernet"
+BOOTPROTO=none
+DEVICE=eth2
+ONBOOT=yes
+NM_CONTROLLED=no
+BRIDGE=br-vlan
+
diff --git a/src/nodes/ovs/compute01/network-scripts/ifcfg-eth2.31 b/src/nodes/ovs/compute01/network-scripts/ifcfg-eth2.31
new file mode 100644
index 0000000000000000000000000000000000000000..7de38490cbb885ab7d1d7ed1e2cfb5dc3858ba09
--- /dev/null
+++ b/src/nodes/ovs/compute01/network-scripts/ifcfg-eth2.31
@@ -0,0 +1,7 @@
+BOOTPROTO=none
+DEVICE="eth2.31"
+NAME="eth2.31"
+ONBOOT=yes
+VLAN=yes
+NM_CONTROLLED=no
+BRIDGE=br-vxlan
diff --git a/src/nodes/ovs/compute02/etc/chrony.conf b/src/nodes/ovs/compute02/etc/chrony.conf
new file mode 100644
index 0000000000000000000000000000000000000000..6c54a7185f31674b448031ddbfd7954958447b73
--- /dev/null
+++ b/src/nodes/ovs/compute02/etc/chrony.conf
@@ -0,0 +1,97 @@
+# Ansible managed
+#
+# This the default chrony.conf file for the Debian chrony package.  After
+# editing this file use the command 'invoke-rc.d chrony restart' to make
+# your changes take effect.  John Hasler <jhasler@debian.org> 1998-2008
+
+# See www.pool.ntp.org for an explanation of these servers.  Please
+# consider joining the project if possible.  If you can't or don't want to
+# use these servers I suggest that you try your ISP's nameservers.  We mark
+# the servers 'offline' so that chronyd won't try to connect when the link
+# is down.  Scripts in /etc/ppp/ip-up.d and /etc/ppp/ip-down.d use chronyc
+# commands to switch it on when a dialup link comes up and off when it goes
+# down.  Code in /etc/init.d/chrony attempts to determine whether or not
+# the link is up at boot time and set the online status accordingly.  If
+# you have an always-on connection such as cable omit the 'offline'
+# directive and chronyd will default to online.
+#
+# Note that if Chrony tries to go "online" and dns lookup of the servers
+# fails they will be discarded.  Thus under some circumstances it is
+# better to use IP numbers than host names.
+
+server 0.pool.ntp.org iburst
+server 1.pool.ntp.org iburst
+server 2.pool.ntp.org iburst
+server 3.pool.ntp.org iburst
+
+# Look here for the admin password needed for chronyc.  The initial
+# password is generated by a random process at install time.  You may
+# change it if you wish.
+
+keyfile /etc/chrony.keys
+
+# Set runtime command key.  Note that if you change the key (not the
+# password) to anything other than 1 you will need to edit
+# /etc/ppp/ip-up.d/chrony, /etc/ppp/ip-down.d/chrony, /etc/init.d/chrony
+# and /etc/cron.weekly/chrony as these scripts use it to get the password.
+
+commandkey 1
+
+# I moved the driftfile to /var/lib/chrony to comply with the Debian
+# filesystem standard.
+
+driftfile /var/lib/chrony/chrony.drift
+
+# Comment this line out to turn off logging.
+
+log tracking measurements statistics
+logdir /var/log/chrony
+
+# Stop bad estimates upsetting machine clock.
+
+maxupdateskew 100.0
+
+# Dump measurements when daemon exits.
+
+dumponexit
+
+# Specify directory for dumping measurements.
+
+dumpdir /var/lib/chrony
+
+# Let computer be a server when it is unsynchronised.
+
+local stratum 10
+
+# Allow computers on the unrouted nets to use the server.
+
+allow 10/8
+allow 192.168/16
+allow 172.16/12
+
+# This directive forces `chronyd' to send a message to syslog if it
+# makes a system clock adjustment larger than a threshold value in seconds.
+
+logchange 0.5
+
+# Adjust the clock on startup if difference is larger than 1 sec.
+makestep 1 3
+
+# This directive defines an email address to which mail should be sent
+# if chronyd applies a correction exceeding a particular threshold to the
+# system clock.
+
+# mailonchange root@localhost 0.5
+
+
+# If the last line of this file reads 'rtconutc' chrony will assume that
+# the CMOS clock is on UTC (GMT).  If it reads '# rtconutc' or is absent
+# chrony will assume local time.  The line (if any) was written by the
+# chrony postinst based on what it found in /etc/default/rcS.  You may
+# change it if necessary.
+rtconutc
+
+# Listen for NTP requests only on local interfaces.
+port 0
+bindcmdaddress 127.0.0.1
+bindcmdaddress ::1
diff --git a/src/nodes/ovs/compute02/etc/environment b/src/nodes/ovs/compute02/etc/environment
new file mode 100644
index 0000000000000000000000000000000000000000..1c39b88f63765957eb30f15330b14a9c22e655cd
--- /dev/null
+++ b/src/nodes/ovs/compute02/etc/environment
@@ -0,0 +1,13 @@
+http_proxy=http://192.168.60.242:3128
+https_proxy=http://192.168.60.242:3128
+HTTP_PROXY=http://192.168.60.242:3128
+HTTPS_PROXY=http://192.168.60.242:3128
+# BEGIN Managed by OpenStack-Ansible
+PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
+no_proxy=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+https_proxy=http://192.168.60.242:3128/
+NO_PROXY=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+http_proxy=http://192.168.60.242:3128/
+HTTPS_PROXY=http://192.168.60.242:3128/
+HTTP_PROXY=http://192.168.60.242:3128/
+# END Managed by OpenStack-Ansible
diff --git a/src/nodes/ovs/compute02/etc/hostname b/src/nodes/ovs/compute02/etc/hostname
new file mode 100644
index 0000000000000000000000000000000000000000..2e4a23e93b0b3bfbbf97899a56b616ca0ee5500c
--- /dev/null
+++ b/src/nodes/ovs/compute02/etc/hostname
@@ -0,0 +1 @@
+compute2
diff --git a/src/nodes/ovs/compute02/network-scripts/ifcfg-br-mgmt b/src/nodes/ovs/compute02/network-scripts/ifcfg-br-mgmt
new file mode 100644
index 0000000000000000000000000000000000000000..891e3364b7ddb6584ea326ec4567fc5a5ff55be7
--- /dev/null
+++ b/src/nodes/ovs/compute02/network-scripts/ifcfg-br-mgmt
@@ -0,0 +1,10 @@
+DEVICE=br-mgmt
+BOOTPROTO=none
+IPADDR=10.0.10.22
+PREFIX=24
+GATEWAY=10.0.10.2
+DNS1=192.168.60.230
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
+
diff --git a/src/nodes/ovs/compute02/network-scripts/ifcfg-br-storage b/src/nodes/ovs/compute02/network-scripts/ifcfg-br-storage
new file mode 100644
index 0000000000000000000000000000000000000000..6a4ac4005f12daf91807292bd93907a36981fcee
--- /dev/null
+++ b/src/nodes/ovs/compute02/network-scripts/ifcfg-br-storage
@@ -0,0 +1,8 @@
+DEVICE=br-storage
+BOOTPROTO=none
+IPADDR=10.0.20.22
+PREFIX=24
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
+
diff --git a/src/nodes/ovs/compute02/network-scripts/ifcfg-br-vlan b/src/nodes/ovs/compute02/network-scripts/ifcfg-br-vlan
new file mode 100644
index 0000000000000000000000000000000000000000..e3e40ac200484c64a3c6585d70b600188915af99
--- /dev/null
+++ b/src/nodes/ovs/compute02/network-scripts/ifcfg-br-vlan
@@ -0,0 +1,6 @@
+DEVICE=br-vlan
+BOOTPROTO=none
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
+
diff --git a/src/nodes/ovs/compute02/network-scripts/ifcfg-br-vxlan b/src/nodes/ovs/compute02/network-scripts/ifcfg-br-vxlan
new file mode 100644
index 0000000000000000000000000000000000000000..485b928858454d3eef85538b6c35986e3aaef32d
--- /dev/null
+++ b/src/nodes/ovs/compute02/network-scripts/ifcfg-br-vxlan
@@ -0,0 +1,8 @@
+DEVICE=br-vxlan
+BOOTPROTO=none
+IPADDR=10.0.31.22
+PREFIX=24
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
+
diff --git a/src/nodes/ovs/compute02/network-scripts/ifcfg-eth0 b/src/nodes/ovs/compute02/network-scripts/ifcfg-eth0
new file mode 100644
index 0000000000000000000000000000000000000000..a4a86335d800e736d002b58e28c3fba68ee301a3
--- /dev/null
+++ b/src/nodes/ovs/compute02/network-scripts/ifcfg-eth0
@@ -0,0 +1,8 @@
+TYPE="Ethernet"
+BOOTPROTO=none
+DEVICE=eth0
+ONBOOT=yes
+NM_CONTROLLED=no
+BRIDGE=br-mgmt
+
+
diff --git a/src/nodes/ovs/compute02/network-scripts/ifcfg-eth1 b/src/nodes/ovs/compute02/network-scripts/ifcfg-eth1
new file mode 100644
index 0000000000000000000000000000000000000000..e4c2efeca7e74ea6920317c3ab29eff313bc2034
--- /dev/null
+++ b/src/nodes/ovs/compute02/network-scripts/ifcfg-eth1
@@ -0,0 +1,7 @@
+TYPE="Ethernet"
+BOOTPROTO=none
+DEVICE=eth1
+ONBOOT=yes
+NM_CONTROLLED=no
+BRIDGE=br-storage
+
diff --git a/src/nodes/ovs/compute02/network-scripts/ifcfg-eth2 b/src/nodes/ovs/compute02/network-scripts/ifcfg-eth2
new file mode 100644
index 0000000000000000000000000000000000000000..c0ea8fbdf6f2ef7bbf55f7112d32bdb2990e1af9
--- /dev/null
+++ b/src/nodes/ovs/compute02/network-scripts/ifcfg-eth2
@@ -0,0 +1,7 @@
+TYPE="Ethernet"
+BOOTPROTO=none
+DEVICE=eth2
+ONBOOT=yes
+NM_CONTROLLED=no
+BRIDGE=br-vlan
+
diff --git a/src/nodes/ovs/compute02/network-scripts/ifcfg-eth2.31 b/src/nodes/ovs/compute02/network-scripts/ifcfg-eth2.31
new file mode 100644
index 0000000000000000000000000000000000000000..7de38490cbb885ab7d1d7ed1e2cfb5dc3858ba09
--- /dev/null
+++ b/src/nodes/ovs/compute02/network-scripts/ifcfg-eth2.31
@@ -0,0 +1,7 @@
+BOOTPROTO=none
+DEVICE="eth2.31"
+NAME="eth2.31"
+ONBOOT=yes
+VLAN=yes
+NM_CONTROLLED=no
+BRIDGE=br-vxlan
diff --git a/src/nodes/ovs/deploy/etc/chrony.conf b/src/nodes/ovs/deploy/etc/chrony.conf
new file mode 100644
index 0000000000000000000000000000000000000000..0a0d85cbe86f74217104017cf6931af25a058598
--- /dev/null
+++ b/src/nodes/ovs/deploy/etc/chrony.conf
@@ -0,0 +1,38 @@
+# Use public servers from the pool.ntp.org project.
+# Please consider joining the pool (http://www.pool.ntp.org/join.html).
+server 0.centos.pool.ntp.org iburst
+server 1.centos.pool.ntp.org iburst
+server 2.centos.pool.ntp.org iburst
+server 3.centos.pool.ntp.org iburst
+
+# Record the rate at which the system clock gains/losses time.
+driftfile /var/lib/chrony/drift
+
+# Allow the system clock to be stepped in the first three updates
+# if its offset is larger than 1 second.
+makestep 1.0 3
+
+# Enable kernel synchronization of the real-time clock (RTC).
+rtcsync
+
+# Enable hardware timestamping on all interfaces that support it.
+#hwtimestamp *
+
+# Increase the minimum number of selectable sources required to adjust
+# the system clock.
+#minsources 2
+
+# Allow NTP client access from local network.
+#allow 192.168.0.0/16
+
+# Serve time even if not synchronized to a time source.
+#local stratum 10
+
+# Specify file containing keys for NTP authentication.
+#keyfile /etc/chrony.keys
+
+# Specify directory for log files.
+logdir /var/log/chrony
+
+# Select which information is logged.
+#log measurements statistics tracking
diff --git a/src/nodes/ovs/deploy/etc/environment b/src/nodes/ovs/deploy/etc/environment
new file mode 100644
index 0000000000000000000000000000000000000000..d442e61f106c194e30615d26a789393e8cee3705
--- /dev/null
+++ b/src/nodes/ovs/deploy/etc/environment
@@ -0,0 +1,4 @@
+http_proxy=http://192.168.60.242:3128
+https_proxy=http://192.168.60.242:3128
+HTTP_PROXY=http://192.168.60.242:3128
+HTTPS_PROXY=http://192.168.60.242:3128
diff --git a/src/nodes/ovs/deploy/etc/hostname b/src/nodes/ovs/deploy/etc/hostname
new file mode 100644
index 0000000000000000000000000000000000000000..8541464a78c90b5e5a2e4ff120b6c286271ed093
--- /dev/null
+++ b/src/nodes/ovs/deploy/etc/hostname
@@ -0,0 +1 @@
+deploy
diff --git a/src/nodes/ovs/deploy/network-scripts/ifcfg-eth0 b/src/nodes/ovs/deploy/network-scripts/ifcfg-eth0
new file mode 100644
index 0000000000000000000000000000000000000000..406ce256c1b02d332ecbd3fd1f6c32bf2c5721ee
--- /dev/null
+++ b/src/nodes/ovs/deploy/network-scripts/ifcfg-eth0
@@ -0,0 +1,10 @@
+TYPE="Ethernet"
+BOOTPROTO="none"
+DEFROUTE="yes"
+NAME="eth0"
+DEVICE="eth0"
+ONBOOT="yes"
+IPADDR="10.0.10.10"
+PREFIX="24"
+GATEWAY="10.0.10.2"
+DNS1=192.168.60.230
diff --git a/src/nodes/deploy/ceph/cinder-volume.yml b/src/nodes/ovs/deploy/openstack_deploy/env.d/cinder-volume.yml
similarity index 99%
rename from src/nodes/deploy/ceph/cinder-volume.yml
rename to src/nodes/ovs/deploy/openstack_deploy/env.d/cinder-volume.yml
index 73363e18c1487f83b14926b7250aeb762fbf8a1d..e40b39256694e426dfb165df9f519912b3753ace 100644
--- a/src/nodes/deploy/ceph/cinder-volume.yml
+++ b/src/nodes/ovs/deploy/openstack_deploy/env.d/cinder-volume.yml
@@ -11,4 +11,3 @@ container_skel:
   cinder_volumes_container:
     properties:
       is_metal: false
-
diff --git a/src/nodes/deploy/ovs/openstack_deploy/group_vars/network_hosts b/src/nodes/ovs/deploy/openstack_deploy/group_vars/network_hosts
similarity index 100%
rename from src/nodes/deploy/ovs/openstack_deploy/group_vars/network_hosts
rename to src/nodes/ovs/deploy/openstack_deploy/group_vars/network_hosts
diff --git a/src/nodes/deploy/ovs/openstack_deploy/openstack_user_config.yml b/src/nodes/ovs/deploy/openstack_deploy/openstack_user_config.yml
similarity index 100%
rename from src/nodes/deploy/ovs/openstack_deploy/openstack_user_config.yml
rename to src/nodes/ovs/deploy/openstack_deploy/openstack_user_config.yml
diff --git a/src/nodes/deploy/ovs/openstack_deploy/user_variables.yml b/src/nodes/ovs/deploy/openstack_deploy/user_variables.yml
similarity index 100%
rename from src/nodes/deploy/ovs/openstack_deploy/user_variables.yml
rename to src/nodes/ovs/deploy/openstack_deploy/user_variables.yml
diff --git a/src/nodes/ovs/haproxy01/etc/chrony.conf b/src/nodes/ovs/haproxy01/etc/chrony.conf
new file mode 100644
index 0000000000000000000000000000000000000000..6c54a7185f31674b448031ddbfd7954958447b73
--- /dev/null
+++ b/src/nodes/ovs/haproxy01/etc/chrony.conf
@@ -0,0 +1,97 @@
+# Ansible managed
+#
+# This the default chrony.conf file for the Debian chrony package.  After
+# editing this file use the command 'invoke-rc.d chrony restart' to make
+# your changes take effect.  John Hasler <jhasler@debian.org> 1998-2008
+
+# See www.pool.ntp.org for an explanation of these servers.  Please
+# consider joining the project if possible.  If you can't or don't want to
+# use these servers I suggest that you try your ISP's nameservers.  We mark
+# the servers 'offline' so that chronyd won't try to connect when the link
+# is down.  Scripts in /etc/ppp/ip-up.d and /etc/ppp/ip-down.d use chronyc
+# commands to switch it on when a dialup link comes up and off when it goes
+# down.  Code in /etc/init.d/chrony attempts to determine whether or not
+# the link is up at boot time and set the online status accordingly.  If
+# you have an always-on connection such as cable omit the 'offline'
+# directive and chronyd will default to online.
+#
+# Note that if Chrony tries to go "online" and dns lookup of the servers
+# fails they will be discarded.  Thus under some circumstances it is
+# better to use IP numbers than host names.
+
+server 0.pool.ntp.org iburst
+server 1.pool.ntp.org iburst
+server 2.pool.ntp.org iburst
+server 3.pool.ntp.org iburst
+
+# Look here for the admin password needed for chronyc.  The initial
+# password is generated by a random process at install time.  You may
+# change it if you wish.
+
+keyfile /etc/chrony.keys
+
+# Set runtime command key.  Note that if you change the key (not the
+# password) to anything other than 1 you will need to edit
+# /etc/ppp/ip-up.d/chrony, /etc/ppp/ip-down.d/chrony, /etc/init.d/chrony
+# and /etc/cron.weekly/chrony as these scripts use it to get the password.
+
+commandkey 1
+
+# I moved the driftfile to /var/lib/chrony to comply with the Debian
+# filesystem standard.
+
+driftfile /var/lib/chrony/chrony.drift
+
+# Comment this line out to turn off logging.
+
+log tracking measurements statistics
+logdir /var/log/chrony
+
+# Stop bad estimates upsetting machine clock.
+
+maxupdateskew 100.0
+
+# Dump measurements when daemon exits.
+
+dumponexit
+
+# Specify directory for dumping measurements.
+
+dumpdir /var/lib/chrony
+
+# Let computer be a server when it is unsynchronised.
+
+local stratum 10
+
+# Allow computers on the unrouted nets to use the server.
+
+allow 10/8
+allow 192.168/16
+allow 172.16/12
+
+# This directive forces `chronyd' to send a message to syslog if it
+# makes a system clock adjustment larger than a threshold value in seconds.
+
+logchange 0.5
+
+# Adjust the clock on startup if difference is larger than 1 sec.
+makestep 1 3
+
+# This directive defines an email address to which mail should be sent
+# if chronyd applies a correction exceeding a particular threshold to the
+# system clock.
+
+# mailonchange root@localhost 0.5
+
+
+# If the last line of this file reads 'rtconutc' chrony will assume that
+# the CMOS clock is on UTC (GMT).  If it reads '# rtconutc' or is absent
+# chrony will assume local time.  The line (if any) was written by the
+# chrony postinst based on what it found in /etc/default/rcS.  You may
+# change it if necessary.
+rtconutc
+
+# Listen for NTP requests only on local interfaces.
+port 0
+bindcmdaddress 127.0.0.1
+bindcmdaddress ::1
diff --git a/src/nodes/ovs/haproxy01/etc/environment b/src/nodes/ovs/haproxy01/etc/environment
new file mode 100644
index 0000000000000000000000000000000000000000..1c39b88f63765957eb30f15330b14a9c22e655cd
--- /dev/null
+++ b/src/nodes/ovs/haproxy01/etc/environment
@@ -0,0 +1,13 @@
+http_proxy=http://192.168.60.242:3128
+https_proxy=http://192.168.60.242:3128
+HTTP_PROXY=http://192.168.60.242:3128
+HTTPS_PROXY=http://192.168.60.242:3128
+# BEGIN Managed by OpenStack-Ansible
+PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
+no_proxy=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+https_proxy=http://192.168.60.242:3128/
+NO_PROXY=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+http_proxy=http://192.168.60.242:3128/
+HTTPS_PROXY=http://192.168.60.242:3128/
+HTTP_PROXY=http://192.168.60.242:3128/
+# END Managed by OpenStack-Ansible
diff --git a/src/nodes/ovs/haproxy01/etc/hostname b/src/nodes/ovs/haproxy01/etc/hostname
new file mode 100644
index 0000000000000000000000000000000000000000..3eac4bd2fcdba57c4fd03c5b835b5061dc619b58
--- /dev/null
+++ b/src/nodes/ovs/haproxy01/etc/hostname
@@ -0,0 +1 @@
+balancer1
diff --git a/src/nodes/ovs/haproxy01/network-scripts/ifcfg-eth0 b/src/nodes/ovs/haproxy01/network-scripts/ifcfg-eth0
new file mode 100644
index 0000000000000000000000000000000000000000..b00eb351e42550e5deda8aac1e6fbfc6f20ba5e6
--- /dev/null
+++ b/src/nodes/ovs/haproxy01/network-scripts/ifcfg-eth0
@@ -0,0 +1,8 @@
+TYPE=Ethernet
+BOOTPROTO=none
+IPV4_FAILURE_FATAL=no
+NAME=eth0
+DEVICE=eth0
+ONBOOT=yes
+IPADDR=192.168.60.160
+PREFIX=24
diff --git a/src/nodes/ovs/haproxy01/network-scripts/ifcfg-eth1 b/src/nodes/ovs/haproxy01/network-scripts/ifcfg-eth1
new file mode 100644
index 0000000000000000000000000000000000000000..24c80b668ddb0682ef7bc7daebeea72ca6a9568a
--- /dev/null
+++ b/src/nodes/ovs/haproxy01/network-scripts/ifcfg-eth1
@@ -0,0 +1,11 @@
+TYPE=Ethernet
+BOOTPROTO=none
+DEFROUTE=yes
+IPV4_FAILURE_FATAL=no
+NAME=eth1
+DEVICE=eth1
+ONBOOT=yes
+IPADDR=10.0.10.15
+PREFIX=24
+GATEWAY=10.0.10.2
+DNS1=192.168.60.230
diff --git a/src/nodes/ovs/infra01/etc/chrony.conf b/src/nodes/ovs/infra01/etc/chrony.conf
new file mode 100644
index 0000000000000000000000000000000000000000..6c54a7185f31674b448031ddbfd7954958447b73
--- /dev/null
+++ b/src/nodes/ovs/infra01/etc/chrony.conf
@@ -0,0 +1,97 @@
+# Ansible managed
+#
+# This the default chrony.conf file for the Debian chrony package.  After
+# editing this file use the command 'invoke-rc.d chrony restart' to make
+# your changes take effect.  John Hasler <jhasler@debian.org> 1998-2008
+
+# See www.pool.ntp.org for an explanation of these servers.  Please
+# consider joining the project if possible.  If you can't or don't want to
+# use these servers I suggest that you try your ISP's nameservers.  We mark
+# the servers 'offline' so that chronyd won't try to connect when the link
+# is down.  Scripts in /etc/ppp/ip-up.d and /etc/ppp/ip-down.d use chronyc
+# commands to switch it on when a dialup link comes up and off when it goes
+# down.  Code in /etc/init.d/chrony attempts to determine whether or not
+# the link is up at boot time and set the online status accordingly.  If
+# you have an always-on connection such as cable omit the 'offline'
+# directive and chronyd will default to online.
+#
+# Note that if Chrony tries to go "online" and dns lookup of the servers
+# fails they will be discarded.  Thus under some circumstances it is
+# better to use IP numbers than host names.
+
+server 0.pool.ntp.org iburst
+server 1.pool.ntp.org iburst
+server 2.pool.ntp.org iburst
+server 3.pool.ntp.org iburst
+
+# Look here for the admin password needed for chronyc.  The initial
+# password is generated by a random process at install time.  You may
+# change it if you wish.
+
+keyfile /etc/chrony.keys
+
+# Set runtime command key.  Note that if you change the key (not the
+# password) to anything other than 1 you will need to edit
+# /etc/ppp/ip-up.d/chrony, /etc/ppp/ip-down.d/chrony, /etc/init.d/chrony
+# and /etc/cron.weekly/chrony as these scripts use it to get the password.
+
+commandkey 1
+
+# I moved the driftfile to /var/lib/chrony to comply with the Debian
+# filesystem standard.
+
+driftfile /var/lib/chrony/chrony.drift
+
+# Comment this line out to turn off logging.
+
+log tracking measurements statistics
+logdir /var/log/chrony
+
+# Stop bad estimates upsetting machine clock.
+
+maxupdateskew 100.0
+
+# Dump measurements when daemon exits.
+
+dumponexit
+
+# Specify directory for dumping measurements.
+
+dumpdir /var/lib/chrony
+
+# Let computer be a server when it is unsynchronised.
+
+local stratum 10
+
+# Allow computers on the unrouted nets to use the server.
+
+allow 10/8
+allow 192.168/16
+allow 172.16/12
+
+# This directive forces `chronyd' to send a message to syslog if it
+# makes a system clock adjustment larger than a threshold value in seconds.
+
+logchange 0.5
+
+# Adjust the clock on startup if difference is larger than 1 sec.
+makestep 1 3
+
+# This directive defines an email address to which mail should be sent
+# if chronyd applies a correction exceeding a particular threshold to the
+# system clock.
+
+# mailonchange root@localhost 0.5
+
+
+# If the last line of this file reads 'rtconutc' chrony will assume that
+# the CMOS clock is on UTC (GMT).  If it reads '# rtconutc' or is absent
+# chrony will assume local time.  The line (if any) was written by the
+# chrony postinst based on what it found in /etc/default/rcS.  You may
+# change it if necessary.
+rtconutc
+
+# Listen for NTP requests only on local interfaces.
+port 0
+bindcmdaddress 127.0.0.1
+bindcmdaddress ::1
diff --git a/src/nodes/ovs/infra01/etc/environment b/src/nodes/ovs/infra01/etc/environment
new file mode 100644
index 0000000000000000000000000000000000000000..3cc6ecc8814df6f40495f8c133cc646e3a29d692
--- /dev/null
+++ b/src/nodes/ovs/infra01/etc/environment
@@ -0,0 +1,14 @@
+
+http_proxy=http://192.168.60.242:3128
+https_proxy=http://192.168.60.242:3128
+HTTP_PROXY=http://192.168.60.242:3128
+HTTPS_PROXY=http://192.168.60.242:3128
+# BEGIN Managed by OpenStack-Ansible
+PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
+no_proxy=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+https_proxy=http://192.168.60.242:3128/
+NO_PROXY=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+http_proxy=http://192.168.60.242:3128/
+HTTPS_PROXY=http://192.168.60.242:3128/
+HTTP_PROXY=http://192.168.60.242:3128/
+# END Managed by OpenStack-Ansible
diff --git a/src/nodes/ovs/infra01/etc/hostname b/src/nodes/ovs/infra01/etc/hostname
new file mode 100644
index 0000000000000000000000000000000000000000..752fb32b807fc08ca9b998d31fb45d2c7c2b3722
--- /dev/null
+++ b/src/nodes/ovs/infra01/etc/hostname
@@ -0,0 +1 @@
+infra1
diff --git a/src/nodes/ovs/infra01/network-scripts/ifcfg-br-mgmt b/src/nodes/ovs/infra01/network-scripts/ifcfg-br-mgmt
new file mode 100644
index 0000000000000000000000000000000000000000..86a16a7d6538ecdedaa989ef1731b8f86e486197
--- /dev/null
+++ b/src/nodes/ovs/infra01/network-scripts/ifcfg-br-mgmt
@@ -0,0 +1,9 @@
+DEVICE=br-mgmt
+BOOTPROTO=none
+IPADDR=10.0.10.11
+PREFIX=24
+GATEWAY=10.0.10.2
+DNS1=192.168.60.230
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
diff --git a/src/nodes/ovs/infra01/network-scripts/ifcfg-br-storage b/src/nodes/ovs/infra01/network-scripts/ifcfg-br-storage
new file mode 100644
index 0000000000000000000000000000000000000000..aec6ecdb869a204c4801459a1f21955d850fdbfd
--- /dev/null
+++ b/src/nodes/ovs/infra01/network-scripts/ifcfg-br-storage
@@ -0,0 +1,7 @@
+DEVICE=br-storage
+BOOTPROTO=none
+IPADDR=10.0.20.11
+PREFIX=24
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
diff --git a/src/nodes/ovs/infra01/network-scripts/ifcfg-br-vlan b/src/nodes/ovs/infra01/network-scripts/ifcfg-br-vlan
new file mode 100644
index 0000000000000000000000000000000000000000..49c52c344c6e3d54a4e7afc9c16385c196e11264
--- /dev/null
+++ b/src/nodes/ovs/infra01/network-scripts/ifcfg-br-vlan
@@ -0,0 +1,5 @@
+DEVICE=br-vlan
+BOOTPROTO=none
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
diff --git a/src/nodes/ovs/infra01/network-scripts/ifcfg-br-vxlan b/src/nodes/ovs/infra01/network-scripts/ifcfg-br-vxlan
new file mode 100644
index 0000000000000000000000000000000000000000..0c92ac86bf835f667ff3b074b6896e096dc994a9
--- /dev/null
+++ b/src/nodes/ovs/infra01/network-scripts/ifcfg-br-vxlan
@@ -0,0 +1,7 @@
+DEVICE=br-vxlan
+BOOTPROTO=none
+IPADDR=10.0.31.11
+PREFIX=24
+ONBOOT=yes
+TYPE=Bridge
+NM_CONTROLLED=no
diff --git a/src/nodes/ovs/infra01/network-scripts/ifcfg-eth0 b/src/nodes/ovs/infra01/network-scripts/ifcfg-eth0
new file mode 100644
index 0000000000000000000000000000000000000000..516f94c2284d364fb596de0763e22aa17378c2c1
--- /dev/null
+++ b/src/nodes/ovs/infra01/network-scripts/ifcfg-eth0
@@ -0,0 +1,6 @@
+TYPE="Ethernet"
+BOOTPROTO=none
+DEVICE=eth0
+ONBOOT=yes
+NM_CONTROLLED=no
+BRIDGE=br-mgmt
diff --git a/src/nodes/ovs/infra01/network-scripts/ifcfg-eth1 b/src/nodes/ovs/infra01/network-scripts/ifcfg-eth1
new file mode 100644
index 0000000000000000000000000000000000000000..bda8690c215c11338b32901bb44c2308fb2ac66e
--- /dev/null
+++ b/src/nodes/ovs/infra01/network-scripts/ifcfg-eth1
@@ -0,0 +1,6 @@
+TYPE="Ethernet"
+BOOTPROTO=none
+DEVICE=eth1
+ONBOOT=yes
+NM_CONTROLLED=no
+BRIDGE=br-storage
diff --git a/src/nodes/ovs/infra01/network-scripts/ifcfg-eth2 b/src/nodes/ovs/infra01/network-scripts/ifcfg-eth2
new file mode 100644
index 0000000000000000000000000000000000000000..4b3819deead819c196a0ff7a079f0a6e0c5c34c0
--- /dev/null
+++ b/src/nodes/ovs/infra01/network-scripts/ifcfg-eth2
@@ -0,0 +1,6 @@
+TYPE="Ethernet"
+BOOTPROTO=none
+DEVICE=eth2
+ONBOOT=yes
+NM_CONTROLLED=no
+BRIDGE=br-vlan
diff --git a/src/nodes/ovs/infra01/network-scripts/ifcfg-eth2.31 b/src/nodes/ovs/infra01/network-scripts/ifcfg-eth2.31
new file mode 100644
index 0000000000000000000000000000000000000000..8153ca1e9ba1ed0fd2ced6f7c7cc94d31ba53ddb
--- /dev/null
+++ b/src/nodes/ovs/infra01/network-scripts/ifcfg-eth2.31
@@ -0,0 +1,8 @@
+BOOTPROTO=none
+DEVICE="eth2.31"
+NAME="eth2.31"
+ONBOOT=yes
+BRIDGE=br-vxlan
+NM_CONTROLLED=no
+VLAN=yes
+
diff --git a/src/nodes/ovs/router/network-scripts/ifcfg-eth0 b/src/nodes/ovs/router/network-scripts/ifcfg-eth0
new file mode 100644
index 0000000000000000000000000000000000000000..ba5a65b6174b6441b3f07697c380d6a85da82d18
--- /dev/null
+++ b/src/nodes/ovs/router/network-scripts/ifcfg-eth0
@@ -0,0 +1,18 @@
+TYPE=Ethernet
+BOOTPROTO=none
+DEFROUTE=yes
+NAME=eth0
+DEVICE=eth0
+ONBOOT=yes
+IPADDR=10.0.40.2
+PREFIX=24
+NETWORK=10.0.40.0
+GATEWAY=10.0.40.1
+DNS1=192.168.60.230
+
+ZONE=public
+PROXY_METHOD=none
+BROWSER_ONLY=no
+IPV4_FAILURE_FATAL=no
+IPV6INIT=no
+UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03
diff --git a/src/nodes/ovs/router/network-scripts/ifcfg-eth1 b/src/nodes/ovs/router/network-scripts/ifcfg-eth1
new file mode 100644
index 0000000000000000000000000000000000000000..548f9f839f5fd5d4b5eb8bad2c7ed09119b24248
--- /dev/null
+++ b/src/nodes/ovs/router/network-scripts/ifcfg-eth1
@@ -0,0 +1,16 @@
+TYPE=Ethernet
+BOOTPROTO=none
+NAME=eth1
+DEVICE=eth1
+ONBOOT=yes
+IPADDR=10.0.10.2
+PREFIX=24
+NETWORK=10.0.10.0
+
+PROXY_METHOD=none
+BROWSER_ONLY=no
+DEFROUTE=yes
+IPV4_FAILURE_FATAL=no
+IPV6INIT=no
+UUID=9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04
+ZONE=management
diff --git a/src/nodes/ovs/router/network-scripts/ifcfg-eth2 b/src/nodes/ovs/router/network-scripts/ifcfg-eth2
new file mode 100644
index 0000000000000000000000000000000000000000..d5623825a60fd809f07c7944bfd2730abaa4199c
--- /dev/null
+++ b/src/nodes/ovs/router/network-scripts/ifcfg-eth2
@@ -0,0 +1,15 @@
+TYPE=Ethernet
+BOOTPROTO=none
+NAME=eth2
+DEVICE=eth2
+ONBOOT=yes
+IPADDR=10.0.20.2
+PREFIX=24
+NETWORK=10.0.20.0
+PROXY_METHOD=none
+BROWSER_ONLY=no
+DEFROUTE=yes
+IPV4_FAILURE_FATAL=no
+IPV6INIT=no
+UUID=3a73717e-65ab-93e8-b518-24f5af32dc0d
+ZONE=storage
diff --git a/src/nodes/ovs/router/network-scripts/ifcfg-eth3 b/src/nodes/ovs/router/network-scripts/ifcfg-eth3
new file mode 100644
index 0000000000000000000000000000000000000000..14c045b2de15b62e866aa28104339dc4d6c6e7a1
--- /dev/null
+++ b/src/nodes/ovs/router/network-scripts/ifcfg-eth3
@@ -0,0 +1,15 @@
+TYPE=Ethernet
+BOOTPROTO=none
+NAME=eth3
+DEVICE=eth3
+ONBOOT=yes
+IPADDR=10.0.30.2
+PREFIX=24
+NETWORK=10.0.30.0
+PROXY_METHOD=none
+BROWSER_ONLY=no
+DEFROUTE=yes
+IPV4_FAILURE_FATAL=no
+IPV6INIT=no
+UUID=c5ca8081-6db2-4602-4b46-d771f4330a6d
+ZONE=tenant
diff --git a/src/nodes/ovs/router/network-scripts/ifcfg-eth3.100 b/src/nodes/ovs/router/network-scripts/ifcfg-eth3.100
new file mode 100644
index 0000000000000000000000000000000000000000..3e2586c27fe0991f7d001c68bcedc8e4e0cdfb80
--- /dev/null
+++ b/src/nodes/ovs/router/network-scripts/ifcfg-eth3.100
@@ -0,0 +1,21 @@
+BOOTPROTO=none
+NAME=eth3.100
+DEVICE=eth3.100
+ONBOOT=yes
+IPADDR=10.0.100.2
+PREFIX=24
+NETWORK=10.0.100.0
+VLAN=yes
+TYPE=Vlan
+PHYSDEV=eth3
+VLAN_ID=100
+REORDER_HDR=yes
+GVRP=no
+MVRP=no
+PROXY_METHOD=none
+BROWSER_ONLY=no
+DEFROUTE=yes
+IPV4_FAILURE_FATAL=no
+IPV6INIT=no
+UUID=d43cbf61-da88-4e66-801c-62ad57b715af
+ZONE=tenant
diff --git a/src/nodes/ovs/router/network-scripts/ifcfg-eth3.101 b/src/nodes/ovs/router/network-scripts/ifcfg-eth3.101
new file mode 100644
index 0000000000000000000000000000000000000000..7959c2b2f16c7d337ace73903553485dfc7e2415
--- /dev/null
+++ b/src/nodes/ovs/router/network-scripts/ifcfg-eth3.101
@@ -0,0 +1,21 @@
+BOOTPROTO=none
+NAME=eth3.101
+DEVICE=eth3.101
+ONBOOT=yes
+IPADDR=10.0.101.2
+PREFIX=24
+NETWORK=10.0.101.0
+VLAN=yes
+TYPE=Vlan
+PHYSDEV=eth3
+VLAN_ID=101
+REORDER_HDR=yes
+GVRP=no
+MVRP=no
+PROXY_METHOD=none
+BROWSER_ONLY=no
+DEFROUTE=yes
+IPV4_FAILURE_FATAL=no
+IPV6INIT=no
+UUID=157632c5-92e0-52ee-9fe9-6df3f8751dbe
+ZONE=tenant
diff --git a/src/nodes/ovs/storage01/etc/chrony.conf b/src/nodes/ovs/storage01/etc/chrony.conf
new file mode 100644
index 0000000000000000000000000000000000000000..6c54a7185f31674b448031ddbfd7954958447b73
--- /dev/null
+++ b/src/nodes/ovs/storage01/etc/chrony.conf
@@ -0,0 +1,97 @@
+# Ansible managed
+#
+# This the default chrony.conf file for the Debian chrony package.  After
+# editing this file use the command 'invoke-rc.d chrony restart' to make
+# your changes take effect.  John Hasler <jhasler@debian.org> 1998-2008
+
+# See www.pool.ntp.org for an explanation of these servers.  Please
+# consider joining the project if possible.  If you can't or don't want to
+# use these servers I suggest that you try your ISP's nameservers.  We mark
+# the servers 'offline' so that chronyd won't try to connect when the link
+# is down.  Scripts in /etc/ppp/ip-up.d and /etc/ppp/ip-down.d use chronyc
+# commands to switch it on when a dialup link comes up and off when it goes
+# down.  Code in /etc/init.d/chrony attempts to determine whether or not
+# the link is up at boot time and set the online status accordingly.  If
+# you have an always-on connection such as cable omit the 'offline'
+# directive and chronyd will default to online.
+#
+# Note that if Chrony tries to go "online" and dns lookup of the servers
+# fails they will be discarded.  Thus under some circumstances it is
+# better to use IP numbers than host names.
+
+server 0.pool.ntp.org iburst
+server 1.pool.ntp.org iburst
+server 2.pool.ntp.org iburst
+server 3.pool.ntp.org iburst
+
+# Look here for the admin password needed for chronyc.  The initial
+# password is generated by a random process at install time.  You may
+# change it if you wish.
+
+keyfile /etc/chrony.keys
+
+# Set runtime command key.  Note that if you change the key (not the
+# password) to anything other than 1 you will need to edit
+# /etc/ppp/ip-up.d/chrony, /etc/ppp/ip-down.d/chrony, /etc/init.d/chrony
+# and /etc/cron.weekly/chrony as these scripts use it to get the password.
+
+commandkey 1
+
+# I moved the driftfile to /var/lib/chrony to comply with the Debian
+# filesystem standard.
+
+driftfile /var/lib/chrony/chrony.drift
+
+# Comment this line out to turn off logging.
+
+log tracking measurements statistics
+logdir /var/log/chrony
+
+# Stop bad estimates upsetting machine clock.
+
+maxupdateskew 100.0
+
+# Dump measurements when daemon exits.
+
+dumponexit
+
+# Specify directory for dumping measurements.
+
+dumpdir /var/lib/chrony
+
+# Let computer be a server when it is unsynchronised.
+
+local stratum 10
+
+# Allow computers on the unrouted nets to use the server.
+
+allow 10/8
+allow 192.168/16
+allow 172.16/12
+
+# This directive forces `chronyd' to send a message to syslog if it
+# makes a system clock adjustment larger than a threshold value in seconds.
+
+logchange 0.5
+
+# Adjust the clock on startup if difference is larger than 1 sec.
+makestep 1 3
+
+# This directive defines an email address to which mail should be sent
+# if chronyd applies a correction exceeding a particular threshold to the
+# system clock.
+
+# mailonchange root@localhost 0.5
+
+
+# If the last line of this file reads 'rtconutc' chrony will assume that
+# the CMOS clock is on UTC (GMT).  If it reads '# rtconutc' or is absent
+# chrony will assume local time.  The line (if any) was written by the
+# chrony postinst based on what it found in /etc/default/rcS.  You may
+# change it if necessary.
+rtconutc
+
+# Listen for NTP requests only on local interfaces.
+port 0
+bindcmdaddress 127.0.0.1
+bindcmdaddress ::1
diff --git a/src/nodes/ovs/storage01/etc/environment b/src/nodes/ovs/storage01/etc/environment
new file mode 100644
index 0000000000000000000000000000000000000000..1c39b88f63765957eb30f15330b14a9c22e655cd
--- /dev/null
+++ b/src/nodes/ovs/storage01/etc/environment
@@ -0,0 +1,13 @@
+http_proxy=http://192.168.60.242:3128
+https_proxy=http://192.168.60.242:3128
+HTTP_PROXY=http://192.168.60.242:3128
+HTTPS_PROXY=http://192.168.60.242:3128
+# BEGIN Managed by OpenStack-Ansible
+PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
+no_proxy=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+https_proxy=http://192.168.60.242:3128/
+NO_PROXY=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+http_proxy=http://192.168.60.242:3128/
+HTTPS_PROXY=http://192.168.60.242:3128/
+HTTP_PROXY=http://192.168.60.242:3128/
+# END Managed by OpenStack-Ansible
diff --git a/src/nodes/ovs/storage01/etc/hostname b/src/nodes/ovs/storage01/etc/hostname
new file mode 100644
index 0000000000000000000000000000000000000000..3ca76049808b065a92cf36ab48d548197a664a47
--- /dev/null
+++ b/src/nodes/ovs/storage01/etc/hostname
@@ -0,0 +1 @@
+storage1
diff --git a/src/nodes/ovs/storage01/network-scripts/ifcfg-br-mgmt b/src/nodes/ovs/storage01/network-scripts/ifcfg-br-mgmt
new file mode 100644
index 0000000000000000000000000000000000000000..60951bd73b51b50e6184668f127d7fecf8b6d1a7
--- /dev/null
+++ b/src/nodes/ovs/storage01/network-scripts/ifcfg-br-mgmt
@@ -0,0 +1,9 @@
+DEVICE="br-mgmt"
+BOOTPROTO="none"
+IPADDR="10.0.10.13"
+PREFIX="24"
+GATEWAY="10.0.10.2"
+DNS1="192.168.60.230"
+ONBOOT="yes"
+TYPE="Bridge"
+NM_CONTROLLED="no"
diff --git a/src/nodes/ovs/storage01/network-scripts/ifcfg-br-storage b/src/nodes/ovs/storage01/network-scripts/ifcfg-br-storage
new file mode 100644
index 0000000000000000000000000000000000000000..a127d5cf93546f3d715d05899ac26a1411523eeb
--- /dev/null
+++ b/src/nodes/ovs/storage01/network-scripts/ifcfg-br-storage
@@ -0,0 +1,7 @@
+DEVICE="br-storage"
+BOOTPROTO="none"
+IPADDR="10.0.20.13"
+PREFIX="24"
+ONBOOT="yes"
+TYPE="Bridge"
+NM_CONTROLLED="no"
diff --git a/src/nodes/ovs/storage01/network-scripts/ifcfg-eth0 b/src/nodes/ovs/storage01/network-scripts/ifcfg-eth0
new file mode 100644
index 0000000000000000000000000000000000000000..bcaf39a640d8e107bfb1bb853d9be1f88039065d
--- /dev/null
+++ b/src/nodes/ovs/storage01/network-scripts/ifcfg-eth0
@@ -0,0 +1,7 @@
+TYPE="Ethernet"
+BOOTPROTO="none"
+NAME="eth0"
+DEVICE="eth0"
+ONBOOT="yes"
+NM_CONTROLLED=no
+BRIDGE="br-mgmt"
diff --git a/src/nodes/ovs/storage01/network-scripts/ifcfg-eth1 b/src/nodes/ovs/storage01/network-scripts/ifcfg-eth1
new file mode 100644
index 0000000000000000000000000000000000000000..6276229f7c3c988e73ed798b33c8a96f855909c1
--- /dev/null
+++ b/src/nodes/ovs/storage01/network-scripts/ifcfg-eth1
@@ -0,0 +1,7 @@
+TYPE="Ethernet"
+BOOTPROTO="none"
+NAME="eth1"
+DEVICE="eth1"
+ONBOOT="yes"
+NM_CONTROLLED=no
+BRIDGE="br-storage"
diff --git a/src/nodes/ovs/storage02/etc/chrony.conf b/src/nodes/ovs/storage02/etc/chrony.conf
new file mode 100644
index 0000000000000000000000000000000000000000..6c54a7185f31674b448031ddbfd7954958447b73
--- /dev/null
+++ b/src/nodes/ovs/storage02/etc/chrony.conf
@@ -0,0 +1,97 @@
+# Ansible managed
+#
+# This the default chrony.conf file for the Debian chrony package.  After
+# editing this file use the command 'invoke-rc.d chrony restart' to make
+# your changes take effect.  John Hasler <jhasler@debian.org> 1998-2008
+
+# See www.pool.ntp.org for an explanation of these servers.  Please
+# consider joining the project if possible.  If you can't or don't want to
+# use these servers I suggest that you try your ISP's nameservers.  We mark
+# the servers 'offline' so that chronyd won't try to connect when the link
+# is down.  Scripts in /etc/ppp/ip-up.d and /etc/ppp/ip-down.d use chronyc
+# commands to switch it on when a dialup link comes up and off when it goes
+# down.  Code in /etc/init.d/chrony attempts to determine whether or not
+# the link is up at boot time and set the online status accordingly.  If
+# you have an always-on connection such as cable omit the 'offline'
+# directive and chronyd will default to online.
+#
+# Note that if Chrony tries to go "online" and dns lookup of the servers
+# fails they will be discarded.  Thus under some circumstances it is
+# better to use IP numbers than host names.
+
+server 0.pool.ntp.org iburst
+server 1.pool.ntp.org iburst
+server 2.pool.ntp.org iburst
+server 3.pool.ntp.org iburst
+
+# Look here for the admin password needed for chronyc.  The initial
+# password is generated by a random process at install time.  You may
+# change it if you wish.
+
+keyfile /etc/chrony.keys
+
+# Set runtime command key.  Note that if you change the key (not the
+# password) to anything other than 1 you will need to edit
+# /etc/ppp/ip-up.d/chrony, /etc/ppp/ip-down.d/chrony, /etc/init.d/chrony
+# and /etc/cron.weekly/chrony as these scripts use it to get the password.
+
+commandkey 1
+
+# I moved the driftfile to /var/lib/chrony to comply with the Debian
+# filesystem standard.
+
+driftfile /var/lib/chrony/chrony.drift
+
+# Comment this line out to turn off logging.
+
+log tracking measurements statistics
+logdir /var/log/chrony
+
+# Stop bad estimates upsetting machine clock.
+
+maxupdateskew 100.0
+
+# Dump measurements when daemon exits.
+
+dumponexit
+
+# Specify directory for dumping measurements.
+
+dumpdir /var/lib/chrony
+
+# Let computer be a server when it is unsynchronised.
+
+local stratum 10
+
+# Allow computers on the unrouted nets to use the server.
+
+allow 10/8
+allow 192.168/16
+allow 172.16/12
+
+# This directive forces `chronyd' to send a message to syslog if it
+# makes a system clock adjustment larger than a threshold value in seconds.
+
+logchange 0.5
+
+# Adjust the clock on startup if difference is larger than 1 sec.
+makestep 1 3
+
+# This directive defines an email address to which mail should be sent
+# if chronyd applies a correction exceeding a particular threshold to the
+# system clock.
+
+# mailonchange root@localhost 0.5
+
+
+# If the last line of this file reads 'rtconutc' chrony will assume that
+# the CMOS clock is on UTC (GMT).  If it reads '# rtconutc' or is absent
+# chrony will assume local time.  The line (if any) was written by the
+# chrony postinst based on what it found in /etc/default/rcS.  You may
+# change it if necessary.
+rtconutc
+
+# Listen for NTP requests only on local interfaces.
+port 0
+bindcmdaddress 127.0.0.1
+bindcmdaddress ::1
diff --git a/src/nodes/ovs/storage02/etc/environment b/src/nodes/ovs/storage02/etc/environment
new file mode 100644
index 0000000000000000000000000000000000000000..1c39b88f63765957eb30f15330b14a9c22e655cd
--- /dev/null
+++ b/src/nodes/ovs/storage02/etc/environment
@@ -0,0 +1,13 @@
+http_proxy=http://192.168.60.242:3128
+https_proxy=http://192.168.60.242:3128
+HTTP_PROXY=http://192.168.60.242:3128
+HTTPS_PROXY=http://192.168.60.242:3128
+# BEGIN Managed by OpenStack-Ansible
+PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
+no_proxy=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+https_proxy=http://192.168.60.242:3128/
+NO_PROXY=localhost,127.0.0.1,10.0.10.15,192.168.60.160,10.0.10.234,10.0.10.87,10.0.10.246,10.0.10.72,10.0.10.34,10.0.10.230,10.0.10.193,10.0.10.77,10.0.10.198,10.0.10.148,10.0.10.59,10.0.10.70,10.0.10.116,10.0.10.180,10.0.10.104
+http_proxy=http://192.168.60.242:3128/
+HTTPS_PROXY=http://192.168.60.242:3128/
+HTTP_PROXY=http://192.168.60.242:3128/
+# END Managed by OpenStack-Ansible
diff --git a/src/nodes/ovs/storage02/etc/hostname b/src/nodes/ovs/storage02/etc/hostname
new file mode 100644
index 0000000000000000000000000000000000000000..3ca76049808b065a92cf36ab48d548197a664a47
--- /dev/null
+++ b/src/nodes/ovs/storage02/etc/hostname
@@ -0,0 +1 @@
+storage1
diff --git a/src/nodes/ovs/storage02/network-scripts/ifcfg-br-mgmt b/src/nodes/ovs/storage02/network-scripts/ifcfg-br-mgmt
new file mode 100644
index 0000000000000000000000000000000000000000..9e4ebd55d6f57428fff80454f6573d115a749405
--- /dev/null
+++ b/src/nodes/ovs/storage02/network-scripts/ifcfg-br-mgmt
@@ -0,0 +1,9 @@
+DEVICE="br-mgmt"
+BOOTPROTO="none"
+IPADDR="10.0.10.23"
+PREFIX="24"
+GATEWAY="10.0.10.2"
+DNS1="192.168.60.230"
+ONBOOT="yes"
+TYPE="Bridge"
+NM_CONTROLLED="no"
diff --git a/src/nodes/ovs/storage02/network-scripts/ifcfg-br-storage b/src/nodes/ovs/storage02/network-scripts/ifcfg-br-storage
new file mode 100644
index 0000000000000000000000000000000000000000..b1c500d367f255861c0fb753d5e5cd040e323ca8
--- /dev/null
+++ b/src/nodes/ovs/storage02/network-scripts/ifcfg-br-storage
@@ -0,0 +1,7 @@
+DEVICE="br-storage"
+BOOTPROTO="none"
+IPADDR="10.0.20.23"
+PREFIX="24"
+ONBOOT="yes"
+TYPE="Bridge"
+NM_CONTROLLED="no"
diff --git a/src/nodes/ovs/storage02/network-scripts/ifcfg-eth0 b/src/nodes/ovs/storage02/network-scripts/ifcfg-eth0
new file mode 100644
index 0000000000000000000000000000000000000000..bcaf39a640d8e107bfb1bb853d9be1f88039065d
--- /dev/null
+++ b/src/nodes/ovs/storage02/network-scripts/ifcfg-eth0
@@ -0,0 +1,7 @@
+TYPE="Ethernet"
+BOOTPROTO="none"
+NAME="eth0"
+DEVICE="eth0"
+ONBOOT="yes"
+NM_CONTROLLED=no
+BRIDGE="br-mgmt"
diff --git a/src/nodes/ovs/storage02/network-scripts/ifcfg-eth1 b/src/nodes/ovs/storage02/network-scripts/ifcfg-eth1
new file mode 100644
index 0000000000000000000000000000000000000000..6276229f7c3c988e73ed798b33c8a96f855909c1
--- /dev/null
+++ b/src/nodes/ovs/storage02/network-scripts/ifcfg-eth1
@@ -0,0 +1,7 @@
+TYPE="Ethernet"
+BOOTPROTO="none"
+NAME="eth1"
+DEVICE="eth1"
+ONBOOT="yes"
+NM_CONTROLLED=no
+BRIDGE="br-storage"