diff --git a/bundles/openstack/napoli/bundle.yaml b/bundles/openstack/napoli/bundle.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..636dccfc386f7f8a5ace03ece848455e9eb867bd
--- /dev/null
+++ b/bundles/openstack/napoli/bundle.yaml
@@ -0,0 +1,1015 @@
+## Sample bundle for the deployment of OpenStack in a region of the
+## GARR Federated Cloud Platform.
+## This version deploys a local ceph.
+
+parameters:
+  # sources
+  openstack-origin: &openstack_origin   distro
+  series: &series  bionic
+  dashboard-series: &dashboard_series bionic
+
+  # Ceph configs
+  ceph-radosgw-lightweight-pool-pg-num:  &ceph_radosgw_lightweight_pool_pg_num  8
+  ceph-radosgw-rgw-buckets-pool-weight:  &ceph_radosgw_rgw_buckets_pool_weight  5
+  ceph-radosgw-config-flags:  &ceph_radosgw_config_flags
+
+  # network defaults:
+  flat-network-providers: &flat_network_providers  ext_net
+  neutron-external-network: &neutron_external_network ext_net
+  network-device-mtu: &network_device_mtu  9000
+  instance-mtu: &instance_mtu	8000
+  enable-dvr: &dvr_mode		False
+  vlan-ranges: &vlan_ranges	physnet-ovs:801:801
+  enable-local-dhcp-and-metadata: &enable_local_dhcp_and_metadata   True
+
+  # keystone/dashboard
+  preferred-api-version: &preferred_api_version     3
+
+  # nova-compute
+  worker-multiplier: &worker_multiplier             '1.0'
+  cpu-allocation-ratio: &cpu_allocation_ratio       '2.0'
+  ram-allocation-ratio: &ram_allocation_ratio       '1.5'
+  n-c-config-flags: &nova_compute_config_flags    "block_device_allocate_retries=600,block_device_allocate_retries_interval=5"
+
+  hugepages: &hugepages    '5%'
+  libvirt-image-backend: &libvirt_image_backend
+  cpu-mode: &cpu-mode
+
+# Ceilometer
+  event-time-to-live: &celiometer_event_time_to_live -1
+  metering-time-to-live: &celiometer_metering_time_to_live -1
+
+## Specific configuration file for a cloud region.
+## Edit values within <...> to represent your region.
+  # Region settings
+  region: &region                               garr-na2
+  # access-network: &access_network               <network_used_by_rabbit_and_percona>
+  # os-internal-network: &os_internal_network     <OpenStack_internal_network>
+  source_ntp: &source_ntp             ntp1.inrim.it
+  # os-data-network: &os_data_network   <OS_data_network>
+
+  # Nagios
+  nagios_context: &nagios_context               nagios
+  nagios_admin_email: &nagios_admin_email       csd-support@garr.it
+  nagios_admin_pwd: &nagiosadmin_pwd            '123grid@G4rr'
+  nagios_readonly_pwd: &nagiosro_pwd            '123grid@G4rr'
+
+  # Ceph configs
+  ceph-osd-partition: &ceph_osd_partition  "/dev/sdb" 
+  ceph-cinder-replication-count: &ceph_cinder_replication_count  1
+  ceph-glance-replication-count: &ceph_glance_replication_count  1
+  ceph-radosgw-replication-count: &ceph_radosgw_replication_count  1
+  ceph-radosgw-pool-prefix: &ceph_radosgw_pool_prefix    rgw
+
+  # vips (number of VIPs should match number of different bindings)
+
+  vip-ceilometer: &vip_ceilometer       10.6.4.100 90.147.153.100
+  vip-ceph-radosgw: &vip_ceph_radosgw   10.6.4.101 90.147.153.101
+  vip-cinder: &vip_cinder               10.6.4.102 90.147.153.102
+  vip-glance: &vip_glance               10.6.4.103 90.147.153.103
+  vip-heat: &vip_heat                   10.6.4.104 90.147.153.104
+  vip-dashboard: &vip_dashboard         10.6.4.105 90.147.153.105
+  vip-keystone: &vip_keystone           10.6.4.106 90.147.153.106
+  vip-percona: &vip_percona             10.6.4.107
+  vip-neutron: &vip_neutron             10.6.4.108 90.147.153.108
+  vip-nova: &vip_nova_cloud_controller  10.6.4.109 90.147.153.109
+  console-proxy-ip: &console_proxy_ip              90.147.153.109
+  # This is the gateway for public VIPs
+  default_public_gateway: &default_public_gateway     90.147.153.1
+
+  # hostnames
+  os-public-hostname: &os_public_hostname      keystone.na2.garrservices.it
+  os-internal-hostname: &os_internal_hostname  keystone.na2.garrservices.it
+  # this one could be identical to internal-hostname
+  os-admin-hostname: &os_admin_hostname        keystone.na2.garrservices.it
+
+  # network setup: should be the same cross-sites
+  ### Use network-space-* in bindings unless os-admin-* is usable instead
+  network-space-default: &network_space_default	space-os-mgmt
+   #network-space-default: &network_space_default	pubblica # temporary change
+  network-space-pub: &network_space_pub		space-pub
+# In the following we assume space-os-data is used both for compute-network
+# communication, and for ceph-OSD communication: can be split for better separation
+  network-space-os-data: &network_space_os_data	space-os-data
+  network-space-os-mgmt: &network_space_os_mgmt space-os-mgmt
+
+  # Change as appropriate
+  bridge-mappings: &bridge_mappings             ext_net:br-ex
+  data-port: &data_port                               "br-ex:bond0.401"
+
+  # secrets and passwords:
+  root-password: &root_password  '123percona@G4rr'
+  sst-password:  &sst_password   '123percona@G4rr'
+  admin-password: &admin_password  'ADMIN_g4rrXpr0gr3ss'
+  secret_dashboard: &secret_dashboard   '123grid@G4rr'
+  # encryption-key: &encryption_key       <encryption_key>
+#
+#  Set your corosync_keys by running (on your preferred machine):
+#  corosync-keygen ; cat /etc/corosync/authkey | base64 -w 0 ; echo " "
+  # corosync_key: &corosync_key   <corosync_key>
+
+  # keystone/dashboard
+  # CLA: ho usato pwgen 62 1
+  admin-token: &admin_token  Eig5JeiX5aiphohgiech6aozegh7ahfe5volei5zie2riemienai4ye3eiv3wi
+
+# ------------------------------------------------------------------------------
+machines:
+  '0':
+    constraints: arch=amd64 tags=staging-na-ctrl
+    series: *series
+  '1':
+    constraints: arch=amd64 tags=staging-na-ctrl
+    series: *series
+  '2':
+    constraints: arch=amd64 tags=staging-na-net
+    series: *series
+  '3':
+    constraints: arch=amd64 tags=staging-na-compute
+    series: *series
+  '4':
+    constraints: arch=amd64 tags=staging-na-compute
+    series: *series
+
+
+# ------------------------------------------------------------------------------
+services:
+
+  controller:
+    charm: cs:ubuntu
+    series: *series
+    num_units: 2
+    bindings:
+      "": *network_space_default
+    to:
+      - '0'
+      - '1'
+    annotations:
+      gui-x: '2000'
+      gui-y: '0'
+
+  compute-host:
+    charm: cs:ubuntu
+    series: *series
+    num_units: 2
+    to:
+      - '3'
+      - '4'
+    annotations:
+      gui-x: '2000'
+      gui-y: '500'
+
+  network-host:
+    charm: cs:ubuntu
+    series: *series
+    num_units: 1
+    to:
+      - '2'
+    annotations:
+      gui-x: '2000'
+      gui-y: '800'
+
+  ntp:
+    charm: cs:ntp
+    series: *series
+    options:
+      source: *source_ntp
+    annotations:
+      gui-x: '2200'
+      gui-y: '500'
+
+#   defaultgw:
+#     charm: cs:~csd-garr/defaultgw
+#     options:
+#       gateway: *default_public_gateway
+#     annotations:
+#       gui-x: '800'
+#       gui-y: '0'
+
+  ceph-radosgw-hacluster:
+    charm: cs:hacluster
+    series: *series
+    bindings:
+      "": *network_space_default
+    options:
+      # corosync_key: *corosync_key
+      nagios_context: *nagios_context
+      corosync_transport: 'unicast'
+      nagios_servicegroups: ceph,object,storage
+    annotations:
+      gui-x: '1000'
+      gui-y: '-200'
+
+  cinder-hacluster:
+    charm: cs:hacluster
+    series: *series
+    bindings:
+      "": *network_space_default
+    options:
+      # corosync_key: *corosync_key
+      nagios_context: *nagios_context
+      corosync_transport: 'unicast'
+      nagios_servicegroups: ceph,block,storage
+    annotations:
+      gui-x: '1250'
+      gui-y: '350'
+
+  controller-hacluster:
+    charm: cs:hacluster
+    series: *series
+    bindings:
+      "": *network_space_default
+    options:
+      # corosync_key: *corosync_key
+      nagios_context: *nagios_context
+      corosync_transport: 'unicast'
+      nagios_servicegroups: nova,compute
+    annotations:
+      gui-x: '-200'
+      gui-y: '500'
+
+  glance-hacluster:
+    charm: cs:hacluster
+    series: *series
+    bindings:
+      "": *network_space_default
+    options:
+      # corosync_key: *corosync_key
+      nagios_context: *nagios_context
+      corosync_transport: 'unicast'
+      nagios_servicegroups: ceph,object,storage
+    annotations:
+      gui-x: '1200'
+      gui-y: '600'
+
+  horizon-hacluster:
+    charm: cs:hacluster
+    series: *dashboard_series
+    bindings:
+      "": *network_space_default
+    options:
+      # corosync_key: *corosync_key
+      nagios_context: *nagios_context
+      corosync_transport: 'unicast'
+      nagios_servicegroups: dashboard,web
+    annotations:
+      gui-x: '250'
+      gui-y: '50'
+
+  keystone-hacluster:
+    charm: cs:hacluster
+    series: *series
+    bindings:
+      "": *network_space_default
+    options:
+      # corosync_key: *corosync_key
+      nagios_context: *nagios_context
+      corosync_transport: 'unicast'
+      nagios_servicegroups: keystone
+    annotations:
+      gui-x: '350'
+      gui-y: '350'
+
+  neutron-api-hacluster:
+    charm: cs:hacluster
+    series: *series
+    bindings:
+      "": *network_space_default
+    options:
+      # corosync_key: *corosync_key
+      nagios_context: *nagios_context
+      corosync_transport: 'unicast'
+      nagios_servicegroups: neutron
+    annotations:
+      gui-x: '550'
+      gui-y: '1350'
+
+  percona-hacluster:
+    charm: cs:hacluster
+    series: *series
+    bindings:
+      "": *network_space_default
+    options:
+      # corosync_key: *corosync_key
+      nagios_context: *nagios_context
+      corosync_transport: 'unicast'
+      nagios_servicegroups: database
+    annotations:
+      gui-x: '1300'
+      gui-y: '800'
+
+# Nagios
+  nagios-server:
+    charm: cs:nagios
+    series: *series
+    num_units: 1
+    bindings:
+      "": *network_space_default
+      website: *network_space_pub
+      #      website: *network_space_os_mgmt
+    options:
+      admin_email: *nagios_admin_email
+      password: *nagiosadmin_pwd
+      ro-password: *nagiosro_pwd
+      monitor_self: true
+    to:
+      - 'lxd:0'
+  nrpe-controller:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-cinder:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-cephmon:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-cephosd:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-glance:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-radosgw:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-keystone:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-dashboard:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-neutron:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-neutrongw:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-nova:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-novacompute:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-percona:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-rabbitmq:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+  nrpe-memcache:
+    charm: cs:nrpe
+    series: *series
+    options:
+      swap: '-w 40% -c 25% -n ok'
+
+  rabbitmq-server:
+    charm: cs:rabbitmq-server
+    series: *series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      amqp: *network_space_os_mgmt
+    options:
+      # access-network: *access_network
+      nagios_context: *nagios_context
+      min-cluster-size: 3
+      cluster-partition-handling: pause_minority
+      management_plugin: True
+      nagios_servicegroups: messaging
+      use-syslog: True
+    to:
+      - 'lxd:0'
+      - 'lxd:1'
+      - 'lxd:1'
+    annotations:
+      gui-x: '400'
+      gui-y: '800'
+
+  percona-cluster:
+    charm: cs:percona-cluster
+    series: *series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      shared-db: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+    options:
+      # access-network: *access_network
+      # cluster-network: *access_network
+      nagios_context: *nagios_context
+      root-password: *root_password
+      sst-password: *sst_password
+      vip: *vip_percona
+      min-cluster-size: 3
+      innodb-buffer-pool-size: 10G
+      max-connections: 30000
+      nagios_servicegroups: database
+    to:
+      - 'lxd:0'
+      - 'lxd:0'
+      - 'lxd:1'
+    annotations:
+      gui-x: '1000'
+      gui-y: '800'
+
+  keystone:
+    charm: cs:keystone
+    series: *series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      public: *network_space_pub
+      admin: *network_space_os_mgmt
+      internal: *network_space_os_mgmt
+      shared-db: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+    options:
+      admin-password: *admin_password
+      admin-token: *admin_token
+      nagios_context: *nagios_context
+      os-public-hostname: *os_public_hostname
+      region: *region
+      vip: *vip_keystone
+      openstack-origin: *openstack_origin
+      action-managed-upgrade: True
+      debug: 'False'
+      verbose: 'False'
+      admin-user: admin
+      nagios_servicegroups: keystone
+      worker-multiplier: *worker_multiplier
+      preferred-api-version: *preferred_api_version
+      region: *region
+      use-syslog: True
+    to:
+      - 'lxd:0'
+      - 'lxd:1'
+      - 'lxd:1'
+    annotations:
+      gui-x: '500'
+      gui-y: '500'
+
+  openstack-dashboard:
+    charm: cs:openstack-dashboard
+    series: *dashboard_series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      shared-db: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+      website: *network_space_pub
+      dashboard-plugin: *network_space_os_mgmt
+      identity-service: *network_space_os_mgmt
+    options:
+      nagios_context: *nagios_context
+      secret: *secret_dashboard
+      vip: *vip_dashboard
+      openstack-origin: *openstack_origin
+      action-managed-upgrade: True
+      debug: 'False'
+      endpoint-type: internalURL,publicURL
+      nagios_servicegroups: dashboard,web
+      use-syslog: True
+      webroot: '/'
+    to:
+      - 'lxd:0'
+      - 'lxd:0'
+      - 'lxd:1'
+    annotations:
+      gui-x: '500'
+      gui-y: '0'
+
+  nova-compute:
+    charm: cs:nova-compute
+    series: *series
+    num_units: 2
+    bindings:
+      "": *network_space_default
+      amqp: *network_space_os_mgmt
+      cloud-compute: *network_space_os_mgmt
+      image-service: *network_space_os_mgmt
+      ceph: *network_space_os_mgmt
+      compute-peer: *network_space_os_mgmt
+      neutron-plugin: *network_space_os_mgmt
+    options:
+      # os-internal-network: *os_internal_network
+      nagios_context: *nagios_context
+      openstack-origin: *openstack_origin
+      action-managed-upgrade: True
+      debug: 'False'
+      verbose: 'False'
+      config-flags: *nova_compute_config_flags
+      cpu-mode: *cpu-mode
+      #enable-live-migration: False
+      enable-resize: False
+      migration-auth-type: ssh
+      libvirt-image-backend: *libvirt_image_backend
+      nagios_servicegroups: nova,compute
+      use-internal-endpoints: True
+      enable-resize: True
+      enable-live-migration: True
+    to:
+      - '3'
+      - '4'
+    annotations:
+      gui-x: '0'
+      gui-y: '200'
+
+  nova-cloud-controller:
+    charm: cs:nova-cloud-controller
+    series: *series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      public: *network_space_pub
+      admin: *network_space_os_mgmt
+      internal: *network_space_os_mgmt
+      amqp: *network_space_os_mgmt
+      cinder-volume-service: *network_space_os_mgmt
+      identity-service: *network_space_os_mgmt
+      image-service: *network_space_os_mgmt
+      quantum-network-service: *network_space_os_mgmt
+      cloud-compute: *network_space_os_mgmt
+      neutron-api: *network_space_os_mgmt
+#      cell: ###
+      memcache: *network_space_os_mgmt
+      shared-db: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+    options:
+      region: *region
+      console-proxy-ip: *console_proxy_ip
+      nagios_context: *nagios_context
+      vip: *vip_nova_cloud_controller
+      openstack-origin: *openstack_origin
+      action-managed-upgrade: True
+      debug: 'False'
+      verbose: 'False'
+      region: *region
+      console-access-protocol: 'vnc'
+      nagios_servicegroups: nova,compute
+      network-manager: Neutron
+      cpu-allocation-ratio: *cpu_allocation_ratio
+      ram-allocation-ratio: *ram_allocation_ratio
+      service-guard: True
+      #single-nova-consoleauth: False
+      use-internal-endpoints: True
+      worker-multiplier: *worker_multiplier
+    to:
+      - 'lxd:0'
+      - 'lxd:0'
+      - 'lxd:1'
+    annotations:
+      gui-x: '0'
+      gui-y: '450'
+
+  neutron-api:
+    charm: cs:neutron-api
+    series: *series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      public: *network_space_pub
+      admin: *network_space_os_mgmt
+      internal: *network_space_os_mgmt
+      amqp: *network_space_os_mgmt
+      identity-service: *network_space_os_mgmt
+      neutron-api: *network_space_os_mgmt
+      neutron-plugin-api: *network_space_os_mgmt
+      shared-db: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+    options:
+      region: *region
+      nagios_context: *nagios_context
+      neutron-external-network: *neutron_external_network
+      vip: *vip_neutron
+      openstack-origin: *openstack_origin
+      action-managed-upgrade: True
+      debug: 'False'
+      verbose: 'False'
+      region: *region
+      enable-ml2-port-security: True
+      flat-network-providers: *flat_network_providers
+      nagios_servicegroups: neutron
+      neutron-security-groups: True
+      network-device-mtu: *network_device_mtu
+      use-internal-endpoints: True
+      use-syslog: True
+      worker-multiplier: *worker_multiplier
+      enable-dvr: *dvr_mode
+    to:
+      - 'lxd:0'
+      - 'lxd:1'
+      - 'lxd:1'
+    annotations:
+      gui-x: '500'
+      gui-y: '1100'
+
+  neutron-openvswitch:
+    charm: cs:neutron-openvswitch
+    series: *series
+    bindings:
+      "": *network_space_default
+      amqp: *network_space_os_mgmt
+      data: *network_space_os_data
+      neutron-plugin: *network_space_os_mgmt
+      neutron-plugin-api: *network_space_os_mgmt
+    options:
+      # os-data-network: *os_data_network
+      debug: 'False'
+      verbose: 'False'
+      disable-security-groups: False
+      flat-network-providers: *flat_network_providers
+      use-syslog: True
+      enable-local-dhcp-and-metadata: *enable_local_dhcp_and_metadata
+    annotations:
+      gui-x: '1100'
+      gui-y: '1100'
+
+  cinder:
+    charm: cs:cinder
+    series: *series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      public: *network_space_pub
+      admin: *network_space_os_mgmt
+      internal: *network_space_os_mgmt
+      amqp: *network_space_os_mgmt
+      cinder-volume-service: *network_space_os_mgmt
+      identity-service: *network_space_os_mgmt
+      image-service: *network_space_os_mgmt
+      ceph: *network_space_os_mgmt
+      storage-backend: *network_space_os_mgmt
+      shared-db: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+    options:
+      nagios_context: *nagios_context
+      region: *region
+      vip: *vip_cinder
+      openstack-origin: *openstack_origin
+      action-managed-upgrade: True
+      block-device: None
+      glance-api-version: 2
+      nagios_servicegroups: ceph,block,storage
+      region: *region
+      use-syslog: True
+      use-internal-endpoints: True
+      worker-multiplier: *worker_multiplier
+    to:
+      - 'lxd:0'
+      - 'lxd:1'
+      - 'lxd:1'
+    annotations:
+      gui-x: '1000'
+      gui-y: '200'
+
+  cinder-ceph:
+    charm: cs:cinder-ceph
+    series: *series
+    num_units: 0
+    bindings:
+      "": *network_space_default
+      ceph: *network_space_os_mgmt
+      storage-backend: *network_space_os_mgmt
+    options:
+      ceph-osd-replication-count: *ceph_cinder_replication_count
+      restrict-ceph-pools: True
+    annotations:
+      gui-x: '1330'
+      gui-y: '230'
+
+  ceph-mon:
+    charm: cs:ceph-mon
+    series: *series
+    num_units: 3 
+    bindings:
+      "": *network_space_default
+      public: *network_space_os_mgmt
+      client: *network_space_os_mgmt
+      radosgw: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+      mon: *network_space_os_mgmt
+      osd: *network_space_os_mgmt
+    options:
+      nagios_context: *nagios_context
+      nagios_servicegroups: ceph,storage
+    to:
+      - 'lxd:0'
+      - 'lxd:1'
+      - 'lxd:1'
+    annotations:
+      gui-x: '1200'
+      gui-y: '400'
+
+  ceph-osd:
+    charm: cs:ceph-osd
+    series: *series
+    num_units: 2
+    bindings:
+      "": *network_space_default
+      public: *network_space_os_mgmt
+      cluster: *network_space_os_data
+      mon: *network_space_os_mgmt
+    options:
+      nagios_context: *nagios_context
+      osd-devices: *ceph_osd_partition
+      nagios_servicegroups: ceph,storage
+      osd-devices: *ceph_osd_partition
+      # osd-reformat: 'True'
+      osd-format: 'xfs'
+      use-syslog: True
+    to:
+      - '0'
+      - '1'
+    annotations:
+      gui-x: '1400'
+      gui-y: '400'
+
+  ceph-radosgw:
+    charm: cs:ceph-radosgw
+    series: *series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      public: *network_space_pub
+      admin: *network_space_os_mgmt
+      internal: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+    options:
+      ceph-osd-replication-count: *ceph_radosgw_replication_count
+      config-flags: *ceph_radosgw_config_flags
+      nagios_context: *nagios_context
+      pool-prefix: *ceph_radosgw_pool_prefix
+      region: *region
+      rgw-buckets-pool-weight:  *ceph_radosgw_rgw_buckets_pool_weight
+      rgw-lightweight-pool-pg-num: *ceph_radosgw_lightweight_pool_pg_num
+      vip: *vip_ceph_radosgw
+      nagios_servicegroups: ceph,object,storage
+      restrict-ceph-pools: True
+      use-syslog: True
+    to:
+      - 'lxd:0'
+      - 'lxd:0'
+      - 'lxd:1'
+    annotations:
+      "gui-x": "1000"
+      "gui-y": "0"
+
+  glance:
+    charm: cs:glance
+    series: *series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      public: *network_space_pub
+      admin: *network_space_os_mgmt
+      internal: *network_space_os_mgmt
+      amqp: *network_space_os_mgmt
+      cinder-volume-service: *network_space_os_mgmt
+      identity-service: *network_space_os_mgmt
+      image-service: *network_space_os_mgmt
+      ceph: *network_space_os_mgmt
+      storage-backend: *network_space_os_mgmt
+      shared-db: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+    options:
+      ceph-osd-replication-count: *ceph_glance_replication_count
+      region: *region
+      nagios_context: *nagios_context
+      vip: *vip_glance
+      openstack-origin: *openstack_origin
+      action-managed-upgrade: True
+      debug: 'False'
+      verbose: 'False'
+      region: *region
+      nagios_servicegroups: ceph,object,storage
+      use-internal-endpoints: True
+      use-syslog: True
+      restrict-ceph-pools: True
+    to:
+      - 'lxd:0'
+      - 'lxd:0'
+      - 'lxd:1'
+    annotations:
+      gui-x: '1000'
+      gui-y: '400'
+
+  memcached:
+    charm: cs:memcached
+    series: *series
+    num_units: 3
+    bindings:
+      "": *network_space_default
+      cache: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+    options:
+      nagios_context: *nagios_context
+      allow-ufw-ip6-softfail: True
+    to:
+      - 'lxd:0'
+      - 'lxd:1'
+      - 'lxd:1'
+    annotations:
+      gui-x: '100'
+      gui-y: '800'
+
+  neutron-gateway:
+    charm: cs:neutron-gateway
+    series: *series
+    num_units: 1
+    bindings:
+      "": *network_space_default
+      data: *network_space_os_data
+      amqp: *network_space_os_mgmt
+      quantum-network-service: *network_space_os_mgmt
+      neutron-plugin-api: *network_space_os_mgmt
+      cluster: *network_space_os_mgmt
+    options:
+      bridge-mappings: *bridge_mappings
+      nagios_context: *nagios_context
+      # os-data-network: *os_data_network
+      openstack-origin: *openstack_origin
+      action-managed-upgrade: True
+      data-port: *data_port
+      # Lower instance MTU to fit GRE tunnel (without changing switch config etc)
+      instance-mtu: *instance_mtu
+      nagios_servicegroups: neutron
+    to:
+      - '2'
+    annotations:
+      gui-x: '0'
+      gui-y: '1100'
+
+#  ceilometer:
+#    charm: cs:ceilometer
+#    series: *series
+#    num_units: 1
+#    bindings:
+#      public: *network_space_pub
+#      admin: *network_space_os_mgmt
+#      internal: *network_space_os_mgmt
+#    options:
+#      region: *region
+#      action-managed-upgrade: True
+#      debug: False
+#      verbose: False
+#      event-time-to-live: *celiometer_event_time_to_live
+#      metering-time-to-live: *celiometer_metering_time_to_live
+#      region: *region
+#    to:
+#      - 'lxd:1'
+#    annotations:
+#      gui-x: '450'
+#      gui-y: '-250'
+
+#  ceilometer-agent:
+#    charm: cs:ceilometer-agent
+#    series: xenial
+#    options:
+#      action-managed-upgrade: True
+#    annotations:
+#      gui-x: '200'
+#      gui-y: '-150'
+
+# ------------------------------------------------------------------------------
+relations:
+  - [ ntp, controller ]
+#  - [ ntp, compute-host ]
+#  - [ ntp, network-host ]
+  - [ percona-cluster, percona-hacluster ]
+  - [ cinder, cinder-hacluster ]
+  - [ glance, glance-hacluster ]
+  - [ keystone, keystone-hacluster ]
+  - [ neutron-api, neutron-api-hacluster ]
+  - [ nova-cloud-controller, controller-hacluster ]
+  - [ openstack-dashboard, horizon-hacluster ]
+  - [ keystone, percona-cluster ]
+  - [ neutron-api, percona-cluster ]
+  - [ neutron-api, rabbitmq-server ]
+  - [ neutron-api, nova-cloud-controller ]
+  - [ neutron-api, keystone ]
+  - [ neutron-openvswitch, rabbitmq-server ]
+  - [ neutron-openvswitch, neutron-api ]
+  - [ neutron-openvswitch, nova-compute ]
+  - [ nova-cloud-controller, memcached ]
+  - [ "nova-cloud-controller:shared-db", "percona-cluster:shared-db" ]
+  - [ "nova-cloud-controller:amqp", "rabbitmq-server:amqp" ]
+  - [ nova-cloud-controller, glance ]
+  - [ nova-cloud-controller, keystone ]
+  - [ nova-compute, nova-cloud-controller ]
+  - [ "nova-compute:amqp", "rabbitmq-server:amqp" ]
+  - [ nova-compute, glance ]
+  - [ glance, percona-cluster ]
+  - [ glance, keystone ]
+  - [ "glance:image-service", "cinder:image-service" ]
+  - [ "glance:amqp", "rabbitmq-server:amqp" ]
+  - [ cinder, percona-cluster ]
+  - [ cinder, rabbitmq-server ]
+  - [ cinder, nova-cloud-controller ]
+  - [ cinder, keystone ]
+  - [ "openstack-dashboard:identity-service", "keystone:identity-service" ]
+  - [ "neutron-gateway:amqp", "rabbitmq-server:amqp" ]
+  - [ "neutron-gateway:neutron-plugin-api", "neutron-api:neutron-plugin-api" ]
+  - [ "nova-cloud-controller:quantum-network-service", "neutron-gateway:quantum-network-service" ]
+  - [ "cinder-ceph:ceph-access", "nova-compute:ceph-access" ]
+  - [ "ceph-mon:client", "nova-compute:ceph" ]
+  - [ "ceph-mon:client", "cinder-ceph:ceph" ]
+  - [ "cinder-ceph:storage-backend", "cinder:storage-backend" ]
+  - [ "ceph-mon:client", "glance:ceph" ]
+  - [ "ceph-osd:mon", "ceph-mon:osd" ]
+# ceph-radosgw
+  - [ "ceph-radosgw:ha", "ceph-radosgw-hacluster:ha" ]
+  - [ "keystone:identity-service", "ceph-radosgw:identity-service" ]
+  - [ "ceph-radosgw:mon", "ceph-mon:radosgw" ]
+#  - [ "ceph-radosgw:juju-info", "defaultgw:juju-info" ]
+# default-gw
+#  - [ "keystone:juju-info", "defaultgw:juju-info" ]
+#  - [ "openstack-dashboard:juju-info", "defaultgw:juju-info" ]
+#  - [ "nova-cloud-controller:juju-info", "defaultgw:juju-info" ]
+#  - [ "glance:juju-info", "defaultgw:juju-info" ]
+#  - [ "cinder:juju-info", "defaultgw:juju-info" ]
+#  - [ "neutron-api:juju-info", "defaultgw:juju-info" ]
+# nagios server
+#  - [ "nagios-server:juju-info", "defaultgw:juju-info" ]
+# nagios controllers (physical)
+  - [ controller, nrpe-controller]
+  - [ "nrpe-controller:monitors", "nagios-server:monitors" ]
+# nagios ceph
+  - [ ceph-mon, nrpe-cephmon]
+  - [ "nrpe-cephmon:monitors", "nagios-server:monitors" ]
+  - [ ceph-osd, nrpe-cephosd]
+  - [ "nrpe-cephosd:monitors", "nagios-server:monitors" ]
+  - [ cinder, nrpe-cinder]
+  - [ cinder-hacluster, nrpe-cinder]
+  - [ "nrpe-cinder:monitors", "nagios-server:monitors" ]
+  - [ glance, nrpe-glance]
+  - [ glance-hacluster, nrpe-glance]
+  - [ "nrpe-glance:monitors", "nagios-server:monitors" ]
+  - [ ceph-radosgw, nrpe-radosgw]
+  - [ ceph-radosgw-hacluster, nrpe-radosgw]
+  - [ "nrpe-radosgw:monitors", "nagios-server:monitors" ]
+# nagios keystone
+  - [ keystone, nrpe-keystone]
+  - [ keystone-hacluster, nrpe-keystone]
+  - [ "nrpe-keystone:monitors", "nagios-server:monitors" ]
+# nagios horizon
+  - [ openstack-dashboard, nrpe-dashboard]
+  - [ horizon-hacluster, nrpe-dashboard] 
+  - [ "nrpe-dashboard:monitors", "nagios-server:monitors" ] 
+# nagios neutron
+  - [ neutron-api, nrpe-neutron]
+  - [ neutron-api-hacluster, nrpe-neutron]
+  - [ "nrpe-neutron:monitors", "nagios-server:monitors" ]
+#  - [ network-host, nrpe-neutrongw]
+  - [ neutron-gateway, nrpe-neutrongw]
+  - [ "nrpe-neutrongw:monitors", "nagios-server:monitors" ]
+# nagios nova
+  - [ nova-cloud-controller, nrpe-nova]
+  - [ controller-hacluster, nrpe-nova]
+  - [ "nrpe-nova:monitors", "nagios-server:monitors" ]
+#  - [ compute-host, nrpe-novacompute]
+  - [ nova-compute, nrpe-novacompute]
+  - [ "nrpe-novacompute:monitors", "nagios-server:monitors" ]
+# nagios percona
+  - [ percona-cluster, nrpe-percona]
+  - [ percona-hacluster, nrpe-percona]
+  - [ "nrpe-percona:monitors", "nagios-server:monitors" ]
+# nagios memcache
+  - [ "memcached:nrpe-external-master", "nrpe-memcache:nrpe-external-master" ]
+  - [ "nrpe-memcache:monitors", "nagios-server:monitors" ]
+# nagios rabbitmq
+  - [rabbitmq-server, nrpe-rabbitmq]
+  - [ "nrpe-rabbitmq:monitors", "nagios-server:monitors" ]
+# ceilometer
+#  - [ "ceilometer:amqp", "rabbitmq-server:amqp" ]
+#  - [ "ceilometer:identity-service", "keystone:identity-service" ]
+#  - [ "ceilometer:identity-notifications", "keystone:identity-notifications" ]
+#  - [ "ceilometer-agent:nova-ceilometer", "nova-compute:nova-ceilometer" ]
+#  - [ "ceilometer:ceilometer-service", "ceilometer-agent:ceilometer-service" ]
+#  - [ "ceilometer:juju-info", "defaultgw:juju-info" ]