From 4766b7fd92ec76bbe77f9b0fc81fb8cdc08a8503 Mon Sep 17 00:00:00 2001 From: Paolino Paperino <paperino@paperopoli.com> Date: Mon, 16 Oct 2017 16:45:29 +0200 Subject: [PATCH] 2017-10-16: FG; New bundle template, to be used with Juju 2.2 and beyond. --- ...bundle_template.juju2.2ctrl.yaml.obsolete} | 0 ...le_template.juju2.cephlocal.yaml.obsolete} | 0 bundles/openstack/bundle_template.juju2.yaml | 887 ++++++++++++++++++ bundles/openstack/deploy-openstack.rst | 15 +- 4 files changed, 899 insertions(+), 3 deletions(-) rename bundles/openstack/{bundle_template.juju2.2ctrl.yaml => bundle_template.juju2.2ctrl.yaml.obsolete} (100%) rename bundles/openstack/{bundle_template.juju2.cephlocal.yaml => bundle_template.juju2.cephlocal.yaml.obsolete} (100%) create mode 100644 bundles/openstack/bundle_template.juju2.yaml diff --git a/bundles/openstack/bundle_template.juju2.2ctrl.yaml b/bundles/openstack/bundle_template.juju2.2ctrl.yaml.obsolete similarity index 100% rename from bundles/openstack/bundle_template.juju2.2ctrl.yaml rename to bundles/openstack/bundle_template.juju2.2ctrl.yaml.obsolete diff --git a/bundles/openstack/bundle_template.juju2.cephlocal.yaml b/bundles/openstack/bundle_template.juju2.cephlocal.yaml.obsolete similarity index 100% rename from bundles/openstack/bundle_template.juju2.cephlocal.yaml rename to bundles/openstack/bundle_template.juju2.cephlocal.yaml.obsolete diff --git a/bundles/openstack/bundle_template.juju2.yaml b/bundles/openstack/bundle_template.juju2.yaml new file mode 100644 index 00000000..5958abf7 --- /dev/null +++ b/bundles/openstack/bundle_template.juju2.yaml @@ -0,0 +1,887 @@ +variables: + + # sources + openstack-origin: &openstack_origin cloud:xenial-mitaka + series: &series xenial + + # Region settings +#EDIT# region: ®ion <yoursite_yourdep> +#EDIT# nagios_context: &nagios_context <yoursite_yourdep> +#EDIT# default-gw-pub: &default_gw_pub <your_default_public_gateway_in_CIDR_notation> +#EDIT# access-network: &access_network <network_used_by_rabbit_and_percona> +#EDIT# source_ntp: &source_ntp <your_NTP_server> +#EDIT# os-data-network: &os_data_network <your_OS_data_network> + + # Ceph configs +#EDIT# ceph-fsid: &ceph_fsid <your_FSID_here> +#EDIT# ceph-monitor-hosts: &ceph_monitor_hosts [cephmon:port[,cephmon2:port,cephmon3:port]] + + ceph-radosgw-pool-prefix: &ceph_radosgw_pool_prefix testrgw + 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-ceph-osd-replication-count: &ceph_radosgw_ceph_osd_replication_count 2 + ceph-radosgw-config-flags: &ceph_radosgw_config_flags + + # vips (number of VIPs should match number of different bindings) + +#EDIT# vip-ceilometer: &vip_ceilometer <your_VIP_priv_8> <your_VIP_pub_8> +#EDIT# vip-ceph-radosgw: &vip_ceph_radosgw <your_VIP_priv_7> <your_VIP_pub_7> +#EDIT# vip-cinder: &vip_cinder <your_VIP_priv_0> <your_VIP_pub_0> +#EDIT# vip-glance: &vip_glance <your_VIP_priv_5> <your_VIP_pub_5> +#EDIT# vip-heat: &vip_heat <your_VIP_priv_4> <your_VIP_pub_4> +#EDIT# vip-dashboard: &vip_dashboard <your_VIP_pub_2> +#EDIT# vip-keystone: &vip_keystone <your_VIP_priv_1> <your_VIP_pub_1> +#EDIT# vip-percona: &vip_percona <your_VIP_priv_2> +#EDIT# vip-neutron: &vip_neutron <your_VIP_priv_6> <your_VIP_pub_6> +#EDIT# vip-nova: &vip_nova_cloud_controller <your_VIP_priv_3> <your_VIP_pub_3> +#EDIT# console-proxy-ip: &console_proxy_ip <your_VIP_pub_3> + + # hostnames +#EDIT# os-public-hostname: &os_public_hostname <your_keystone_public_hostname> + + # network setup: should be the same cross-sites + ### Use network-space-* in bindings unless os-admin-* is usable instead +#EDIT# network-space-default: &network_space_default <your_MAAS_OS_mgmt_space> +#EDIT# network-space-pub: &network_space_pub <your_MAAS_pub_space> +#EDIT# network-space-os-data: &network_space_os_data <your_MAAS_OS_data_space> +#EDIT# network-space-os-mgmt: &network_space_os_mgmt <your_MAAS_OS_mgmt_space> + flat-network-providers: &flat_network_providers ext_net + neutron-external-network: &neutron_external_network ext_net +#EDIT# data-port: &data_port br-ex:bond0.188 + bridge-mappings: &bridge_mappings ext_net:br-ex + network-device-mtu: &network_device_mtu 1500 + instance-mtu: &instance_mtu 1400 +#FG 2017-02-15 not working, silently keep default (gre)# overlay-network-type: &overlay_network_type + enable-dvr: &dvr-mode True + vlan-ranges: &vlan_ranges physnet-ovs:801:801 + + # secrets and passwords +#EDIT# root-password: &root_password <your_root_password> +#EDIT# sst-password: &sst_password <your_sst_password> +#EDIT# admin-password: &admin_password <your_admin_password> +#EDIT# secret_dashboard: &secret_dashboard <your_secret> +#EDIT# encryption-key: &encryption_key <your_encryption_key> +# +# Please remember to change corosync_keys, running (on your preferred machine): +# corosync-keygen ; cat /etc/corosync/authkey | base64 -w 0 ; echo " " + corosync_key: &corosync_key 'hyhtRLDQvRnL8llTGCRuccdh29/ae+EwN9a5yyqfJHFkbzZXPIGmC/NUPEnd8JlYsXTWCBZrMj7WQATVmp3XBiBmzUzyYp2c5o76CCvgcsRvqZm9+D4j1k3oz5bBzYcIN88/NoUK8+6OU3E7mzw4q7k4W8WK0vPYqDAi5T2tLyM=' + + # keystone/dashboard + preferred-api-version: &preferred_api_version 3 +#EDIT# admin-token: &admin_token <your_admin_token> + + # 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" +# n-c-c-config-flags: &n_c_c_config_flags "scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,CoreFilter,RamFilter,DiskFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter,NUMATopologyFilter,AggregateInstanceExtraSpecsFilter,PciPassthroughFilter" + +#FG# pci-passthrough-whitelist: &pci_passthrough_whitelist '{ "devname": "bond1", "physical_network": "sriov"}' +#FG# vcpu-pin-set: &vcpu_pin_set '^0' + hugepages: &hugepages '5%' + libvirt-image-backend: &libvirt_image_backend + cpu-mode: &cpu-mode + +#FG# enable-local-dhcp-and-metadata: &enable_local_dhcp_and_metadata True +#FG# neutron-network-dvr: &neutron-dvr True + +machines: + '0': + constraints: arch=amd64 tags=pa1-cl1-neutron-gw + series: *series + '1': + constraints: arch=amd64 tags=pa1-cl1-controller + series: *series + '2': + constraints: arch=amd64 tags=pa1-cl1-controller + series: *series + '3': + constraints: arch=amd64 tags=pa1-cl1-controller + series: *series + '4': + constraints: arch=amd64 tags=pa1-cl1-compute + series: *series + '5': + constraints: arch=amd64 tags=pa1-cl1-compute + series: *series + '6': + constraints: arch=amd64 tags=pa1-cl1-compute + series: *series + + +services: + ctrl-host-pa1-cl1: + charm: cs:xenial/ubuntu + num_units: 3 + to: + - '1' + - '2' + - '3' + annotations: + gui-x: '2000' + gui-y: '0' + compute-host-pa1-cl1: + charm: cs:xenial/ubuntu + num_units: 3 + bindings: + "": *network_space_default + to: + - '4' + - '5' + - '6' + annotations: + gui-x: '2000' + gui-y: '500' + network-host-pa1-cl1: + charm: cs:xenial/ubuntu + num_units: 1 + to: + - '0' + annotations: + gui-x: '2000' + gui-y: '800' + ntp-pa1-cl1: + charm: cs:xenial/ntp + options: + source: *source_ntp + annotations: + gui-x: '2200' + gui-y: '500' + defaultgw-pa1-cl1: + charm: cs:~csd-garr/defaultgw + options: + gateway: *default_gw_pub + annotations: + gui-x: '800' + gui-y: '0' + ceph-radosgw-hacluster-pa1-cl1: + charm: cs:xenial/hacluster + bindings: + "": *network_space_os_mgmt + options: + corosync_transport: 'unicast' + corosync_key: *corosync_key + nagios_servicegroups: ceph,object,storage + nagios_context: *nagios_context + annotations: + gui-x: '1000' + gui-y: '-200' + cinder-hacluster-pa1-cl1: + charm: cs:xenial/hacluster + bindings: + "": *network_space_os_mgmt + options: + corosync_transport: 'unicast' + corosync_key: *corosync_key + nagios_servicegroups: ceph,block,storage + nagios_context: *nagios_context + annotations: + gui-x: '1250' + gui-y: '350' + controller-hacluster-pa1-cl1: + charm: cs:xenial/hacluster + bindings: + "": *network_space_os_mgmt + options: + corosync_transport: 'unicast' + corosync_key: *corosync_key + nagios_servicegroups: nova,compute + nagios_context: *nagios_context + annotations: + gui-x: '-200' + gui-y: '500' + glance-hacluster-pa1-cl1: + charm: cs:xenial/hacluster + bindings: + "": *network_space_os_mgmt + options: + corosync_transport: 'unicast' + corosync_key: *corosync_key + nagios_servicegroups: ceph,object,storage + nagios_context: *nagios_context + annotations: + gui-x: '1200' + gui-y: '600' + horizon-hacluster-pa1-cl1: + charm: cs:xenial/hacluster + bindings: + "": *network_space_os_mgmt + options: + corosync_transport: 'unicast' + corosync_key: *corosync_key + nagios_servicegroups: dashboard,web + nagios_context: *nagios_context + annotations: + gui-x: '250' + gui-y: '50' + keystone-hacluster-pa1-cl1: + charm: cs:xenial/hacluster + bindings: + "": *network_space_os_mgmt + options: + corosync_transport: 'unicast' + corosync_key: *corosync_key + nagios_servicegroups: keystone + nagios_context: *nagios_context + annotations: + gui-x: '350' + gui-y: '350' + neutron-api-hacluster-pa1-cl1: + charm: cs:xenial/hacluster + bindings: + "": *network_space_os_mgmt + options: + corosync_transport: 'unicast' + corosync_key: *corosync_key + nagios_servicegroups: neutron + nagios_context: *nagios_context + annotations: + gui-x: '550' + gui-y: '1350' + pxc-hacluster-pa1-cl1: + charm: cs:xenial/hacluster + bindings: + "": *network_space_os_mgmt + options: + corosync_transport: 'unicast' + corosync_key: *corosync_key + nagios_servicegroups: database + nagios_context: *nagios_context + annotations: + gui-x: '1300' + gui-y: '800' +# Nagios + nagios-server-pa1-cl1: + charm: cs:nagios + num_units: 1 + bindings: + "": *network_space_os_mgmt + website: *network_space_pub + options: + admin_email: csd-support@garr.it + monitor_self: true + password: theNagiosPwd + ro-password: nagiosadmin + to: + - 'lxd:2' + nrpe-ctrl-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-cinder-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-glance-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-radosgw-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-keystone-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-dashboard-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-neutron-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-neutrongw-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-nova-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-novacompute-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-percona-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-rabbitmq-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' + nrpe-memcache-pa1-cl1: + charm: cs:nrpe + options: + swap: '-w 40% -c 25% -n ok' +# Charms + rabbitmq-server-pa1-cl1: + charm: cs:xenial/rabbitmq-server + num_units: 3 + bindings: + "": *network_space_default + amqp: *network_space_os_mgmt + options: + min-cluster-size: 2 + access-network: *access_network + cluster-partition-handling: pause_minority + management_plugin: True + nagios_servicegroups: messaging + nagios_context: *nagios_context + use-syslog: True + to: + - 'lxd:1' + - 'lxd:2' + - 'lxd:3' + annotations: + gui-x: '400' + gui-y: '800' + percona-cluster-pa1-cl1: + charm: cs:xenial/percona-cluster + 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 + min-cluster-size: 2 + innodb-buffer-pool-size: 10G + lp1366997-workaround: True + max-connections: 30000 + nagios_servicegroups: database + nagios_context: *nagios_context + root-password: *root_password + sst-password: *sst_password + vip: *vip_percona + to: + - 'lxd:3' + - 'lxd:2' + - 'lxd:1' + annotations: + gui-x: '1000' + gui-y: '800' + keystone-pa1-cl1: + charm: cs:xenial/keystone + 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: + openstack-origin: *openstack_origin + debug: 'False' + verbose: 'False' + admin-password: *admin_password + admin-token: *admin_token + admin-user: admin + nagios_servicegroups: keystone + nagios_context: *nagios_context + os-public-hostname: *os_public_hostname + worker-multiplier: *worker_multiplier + preferred-api-version: *preferred_api_version + region: *region + use-syslog: True + vip: *vip_keystone + to: + - 'lxd:3' + - 'lxd:2' + - 'lxd:1' + annotations: + gui-x: '500' + gui-y: '500' + openstack-dashboard-pa1-cl1: + charm: cs:xenial/openstack-dashboard + 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: + openstack-origin: *openstack_origin + debug: 'False' + endpoint-type: internalURL,publicURL + nagios_servicegroups: dashboard,web + nagios_context: *nagios_context + secret: *secret_dashboard + use-syslog: True + vip: *vip_dashboard + webroot: '/' +#FG# neutron-network-l3ha: True +#FG# neutron-network-dvr: *neutron-dvr +#FG# cinder-backup: True + to: + - 'lxd:1' + - 'lxd:2' + - 'lxd:3' + annotations: + gui-x: '500' + gui-y: '0' + nova-compute-pa1-cl1: + charm: cs:xenial/nova-compute + num_units: 3 + 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: + openstack-origin: *openstack_origin + debug: 'False' + verbose: 'False' + config-flags: *nova_compute_config_flags + cpu-mode: *cpu-mode +#AC# hugepages: *hugepages + enable-live-migration: False + enable-resize: False + migration-auth-type: none +#FG# enable-resize: True +#FG# enable-live-migration: True +#FG# migration-auth-type: ssh + os-internal-network: &os_internal_network + libvirt-image-backend: *libvirt_image_backend + nagios_servicegroups: nova,compute + nagios_context: *nagios_context + use-internal-endpoints: True + enable-resize: True + enable-live-migration: True +#FG# pci-passthrough-whitelist: *pci_passthrough_whitelist +#AC# vcpu-pin-set: *vcpu_pin_set + to: + - '4' + - '5' + - '6' + annotations: + gui-x: '0' + gui-y: '200' + nova-cloud-controller-pa1-cl1: + charm: cs:xenial/nova-cloud-controller + 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: + openstack-origin: *openstack_origin + debug: 'False' + verbose: 'False' + region: *region + console-access-protocol: 'vnc' + console-proxy-ip: *console_proxy_ip + nagios_servicegroups: nova,compute + nagios_context: *nagios_context + network-manager: Neutron + cpu-allocation-ratio: *cpu_allocation_ratio + ram-allocation-ratio: *ram_allocation_ratio +#FG# config-flags: *n_c_c_config_flags + service-guard: True + single-nova-consoleauth: False + use-internal-endpoints: True + vip: *vip_nova_cloud_controller + worker-multiplier: *worker_multiplier + to: + - 'lxd:1' + - 'lxd:2' + - 'lxd:3' + annotations: + gui-x: '0' + gui-y: '450' + neutron-api-pa1-cl1: + charm: cs:xenial/neutron-api + 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: + openstack-origin: *openstack_origin + debug: 'False' + verbose: 'False' + region: *region + enable-ml2-port-security: True + flat-network-providers: *flat_network_providers + nagios_servicegroups: neutron + nagios_context: *nagios_context + neutron-external-network: *neutron_external_network + neutron-security-groups: True + network-device-mtu: *network_device_mtu +#FG# overlay-network-type: *overlay_network_type + use-internal-endpoints: True + use-syslog: True + vip: *vip_neutron + worker-multiplier: *worker_multiplier +#FG# enable-l3ha: True +#FG# dhcp-agents-per-network: 2 +#FG# enable-ml2-port-security: True +#FG# enable-sriov: True +#FG# enable-dvr: *dvr-mode + to: + - 'lxd:1' + - 'lxd:2' + - 'lxd:3' + annotations: + gui-x: '500' + gui-y: '1100' + neutron-openvswitch-pa1-cl1: + charm: cs:xenial/neutron-openvswitch + 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: + debug: 'False' + verbose: 'False' +#FG# data-port: *data_port +#FG# bridge-mappings: *bridge_mappings +#FG# vlan-ranges: *vlan_ranges +#FG# enable-local-dhcp-and-metadata: *enable_local_dhcp_and_metadata + disable-security-groups: False + flat-network-providers: *flat_network_providers + os-data-network: *os_data_network + use-syslog: True + annotations: + gui-x: '1100' + gui-y: '1100' + cinder-pa1-cl1: + num_units: 3 + charm: cs:xenial/cinder + 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: + block-device: None + openstack-origin: *openstack_origin + glance-api-version: 2 + nagios_servicegroups: ceph,block,storage + nagios_context: *nagios_context + region: *region + use-syslog: True + use-internal-endpoints: True + vip: *vip_cinder + worker-multiplier: *worker_multiplier + to: + - 'lxd:3' + - 'lxd:2' + - 'lxd:1' + annotations: + gui-x: '1000' + gui-y: '200' + cinder-ceph-pa1-cl1: + charm: cs:xenial/cinder-ceph + num_units: 0 + bindings: + "": *network_space_default + ceph: *network_space_os_mgmt + storage-backend: *network_space_os_mgmt + annotations: + gui-x: '1330' + gui-y: '230' + options: + restrict-ceph-pools: True + ceph-proxy-pa1-cl1: + num_units: 1 + charm: cs:xenial/ceph-proxy + bindings: + "": *network_space_default + public: *network_space_os_mgmt + client: *network_space_os_mgmt + radosgw: *network_space_os_mgmt + options: + fsid: *ceph_fsid + monitor-hosts: *ceph_monitor_hosts + admin-key: *ceph_admin_key + to: + - 'lxd:1' + annotations: + gui-x: '1300' + gui-y: '0' + ceph-radosgw-pa1-cl1: + charm: cs:xenial/ceph-radosgw + bindings: + "": *network_space_default + public: *network_space_pub + admin: *network_space_os_mgmt + internal: *network_space_os_mgmt + cluster: *network_space_os_mgmt + num_units: 3 + options: + ceph-osd-replication-count: *ceph_radosgw_ceph_osd_replication_count + config-flags: *ceph_radosgw_config_flags + nagios_servicegroups: ceph,object,storage + nagios_context: *nagios_context + pool-prefix: *ceph_radosgw_pool_prefix + region: *region + restrict-ceph-pools: True + rgw-buckets-pool-weight: *ceph_radosgw_rgw_buckets_pool_weight + rgw-lightweight-pool-pg-num: *ceph_radosgw_lightweight_pool_pg_num + use-syslog: True + vip: *vip_ceph_radosgw + annotations: + "gui-x": "1000" + "gui-y": "0" + to: + - 'lxd:1' + - 'lxd:2' + - 'lxd:3' + glance-pa1-cl1: + num_units: 3 + charm: cs:xenial/glance + 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: + openstack-origin: *openstack_origin + debug: 'False' + verbose: 'False' + region: *region + nagios_servicegroups: ceph,object,storage + nagios_context: *nagios_context + worker-multiplier: *worker_multiplier + use-internal-endpoints: True + use-syslog: True + vip: *vip_glance + restrict-ceph-pools: True + to: + - 'lxd:3' + - 'lxd:2' + - 'lxd:1' + annotations: + gui-x: '1000' + gui-y: '400' + memcached-pa1-cl1: + num_units: 3 + charm: cs:xenial/memcached + bindings: + "": *network_space_default + cache: *network_space_os_mgmt + cluster: *network_space_os_mgmt + options: + allow-ufw-ip6-softfail: True + nagios_context: *nagios_context + to: + - 'lxd:1' + - 'lxd:2' + - 'lxd:3' + annotations: + gui-x: '100' + gui-y: '800' + neutron-gateway-pa1-cl1: + charm: cs:xenial/neutron-gateway + 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: + openstack-origin: *openstack_origin + bridge-mappings: *bridge_mappings + data-port: *data_port +# Lower instance MTU to fit GRE tunnel (without changing switch config etc) + instance-mtu: *instance_mtu + nagios_servicegroups: neutron + nagios_context: *nagios_context + os-data-network: *os_data_network + to: + - '0' + annotations: + gui-x: '0' + gui-y: '1100' +relations: + - [ ntp-pa1-cl1, ctrl-host-pa1-cl1 ] + - [ ntp-pa1-cl1, compute-host-pa1-cl1 ] + - [ ntp-pa1-cl1, network-host-pa1-cl1 ] + - [ percona-cluster-pa1-cl1, pxc-hacluster-pa1-cl1 ] + - [ cinder-pa1-cl1, cinder-hacluster-pa1-cl1 ] + - [ glance-pa1-cl1, glance-hacluster-pa1-cl1 ] + - [ keystone-pa1-cl1, keystone-hacluster-pa1-cl1 ] + - [ neutron-api-pa1-cl1, neutron-api-hacluster-pa1-cl1 ] + - [ nova-cloud-controller-pa1-cl1, controller-hacluster-pa1-cl1 ] + - [ openstack-dashboard-pa1-cl1, horizon-hacluster-pa1-cl1 ] + - [ keystone-pa1-cl1, percona-cluster-pa1-cl1 ] + - [ neutron-api-pa1-cl1, percona-cluster-pa1-cl1 ] + - [ neutron-api-pa1-cl1, rabbitmq-server-pa1-cl1 ] + - [ neutron-api-pa1-cl1, nova-cloud-controller-pa1-cl1 ] + - [ neutron-api-pa1-cl1, keystone-pa1-cl1 ] + - [ neutron-openvswitch-pa1-cl1, rabbitmq-server-pa1-cl1 ] + - [ neutron-openvswitch-pa1-cl1, neutron-api-pa1-cl1 ] + - [ neutron-openvswitch-pa1-cl1, nova-compute-pa1-cl1 ] + - [ nova-cloud-controller-pa1-cl1, memcached-pa1-cl1 ] + - [ nova-cloud-controller-pa1-cl1, percona-cluster-pa1-cl1 ] + - [ nova-cloud-controller-pa1-cl1, rabbitmq-server-pa1-cl1 ] + - [ nova-cloud-controller-pa1-cl1, glance-pa1-cl1 ] + - [ nova-cloud-controller-pa1-cl1, keystone-pa1-cl1 ] + - [ nova-compute-pa1-cl1, nova-cloud-controller-pa1-cl1 ] + - - nova-compute-pa1-cl1:amqp + - rabbitmq-server-pa1-cl1:amqp + - [ nova-compute-pa1-cl1, glance-pa1-cl1 ] + - [ nova-compute-pa1-cl1, percona-cluster-pa1-cl1 ] + - [ glance-pa1-cl1, percona-cluster-pa1-cl1 ] + - [ glance-pa1-cl1, keystone-pa1-cl1 ] + - - glance-pa1-cl1:image-service + - cinder-pa1-cl1:image-service + - - glance-pa1-cl1:amqp + - rabbitmq-server-pa1-cl1:amqp + - [ cinder-pa1-cl1, percona-cluster-pa1-cl1 ] + - [ cinder-pa1-cl1, rabbitmq-server-pa1-cl1 ] + - [ cinder-pa1-cl1, nova-cloud-controller-pa1-cl1 ] + - [ cinder-pa1-cl1, keystone-pa1-cl1 ] + - [ openstack-dashboard-pa1-cl1, keystone-pa1-cl1 ] + - - neutron-gateway-pa1-cl1:amqp + - rabbitmq-server-pa1-cl1:amqp + - - neutron-gateway-pa1-cl1:neutron-plugin-api + - neutron-api-pa1-cl1:neutron-plugin-api + - - nova-cloud-controller-pa1-cl1:quantum-network-service + - neutron-gateway-pa1-cl1:quantum-network-service + - - ceph-proxy-pa1-cl1:client + - nova-compute-pa1-cl1:ceph + - - ceph-proxy-pa1-cl1:client + - cinder-ceph-pa1-cl1:ceph + - - cinder-ceph-pa1-cl1:storage-backend + - cinder-pa1-cl1:storage-backend +#FG# - - ceph-proxy-pa1-cl1:client +#FG# - cinder-backup-pa1-cl1:ceph +#FG# - - cinder-backup-pa1-cl1:backup-backend +#FG# - cinder-pa1-cl1:backup-backend + - - ceph-proxy-pa1-cl1:client + - glance-pa1-cl1:ceph +# ceph-radosgw + - - ceph-radosgw-pa1-cl1:ha + - ceph-radosgw-hacluster-pa1-cl1:ha + - - keystone-pa1-cl1:identity-service + - ceph-radosgw-pa1-cl1:identity-service + - - ceph-radosgw-pa1-cl1:mon + - ceph-proxy-pa1-cl1:radosgw + - - ceph-radosgw-pa1-cl1:juju-info + - defaultgw-pa1-cl1:juju-info +# default-gw + - - keystone-pa1-cl1:juju-info + - defaultgw-pa1-cl1:juju-info + - - openstack-dashboard-pa1-cl1:juju-info + - defaultgw-pa1-cl1:juju-info + - - nova-cloud-controller-pa1-cl1:juju-info + - defaultgw-pa1-cl1:juju-info + - - glance-pa1-cl1:juju-info + - defaultgw-pa1-cl1:juju-info + - - cinder-pa1-cl1:juju-info + - defaultgw-pa1-cl1:juju-info + - - neutron-api-pa1-cl1:juju-info + - defaultgw-pa1-cl1:juju-info +# nagios server + - - nagios-server-pa1-cl1:juju-info + - defaultgw-pa1-cl1:juju-info +# nagios controllers (physical) + - [ctrl-host-pa1-cl1, nrpe-ctrl-pa1-cl1] + - - nrpe-ctrl-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors +# nagios ceph + - [cinder-pa1-cl1, nrpe-cinder-pa1-cl1] + - [cinder-hacluster-pa1-cl1, nrpe-cinder-pa1-cl1] + - - nrpe-cinder-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors + - [glance-pa1-cl1, nrpe-glance-pa1-cl1] + - [glance-hacluster-pa1-cl1, nrpe-glance-pa1-cl1] + - - nrpe-glance-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors + - [ceph-radosgw-pa1-cl1, nrpe-radosgw-pa1-cl1] + - [ceph-radosgw-hacluster-pa1-cl1, nrpe-radosgw-pa1-cl1] + - - nrpe-radosgw-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors +# nagios keystone + - [keystone-pa1-cl1, nrpe-keystone-pa1-cl1] + - [keystone-hacluster-pa1-cl1, nrpe-keystone-pa1-cl1] + - - nrpe-keystone-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors +# nagios horizon + - [openstack-dashboard-pa1-cl1, nrpe-dashboard-pa1-cl1] + - [horizon-hacluster-pa1-cl1, nrpe-dashboard-pa1-cl1] + - - nrpe-dashboard-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors +# nagios neutron + - [neutron-api-pa1-cl1, nrpe-neutron-pa1-cl1] + - [neutron-api-hacluster-pa1-cl1, nrpe-neutron-pa1-cl1] + - - nrpe-neutron-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors + - [network-host-pa1-cl1, nrpe-neutrongw-pa1-cl1] + - [neutron-gateway-pa1-cl1, nrpe-neutrongw-pa1-cl1] + - - nrpe-neutrongw-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors +# nagios nova + - [nova-cloud-controller-pa1-cl1, nrpe-nova-pa1-cl1] + - [controller-hacluster-pa1-cl1, nrpe-nova-pa1-cl1] + - - nrpe-nova-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors + - [compute-host-pa1-cl1, nrpe-novacompute-pa1-cl1] + - [nova-compute-pa1-cl1, nrpe-novacompute-pa1-cl1] + - - nrpe-novacompute-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors +# nagios percona + - [percona-cluster-pa1-cl1, nrpe-percona-pa1-cl1] + - [pxc-hacluster-pa1-cl1, nrpe-percona-pa1-cl1] + - - nrpe-percona-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors +# nagios memcache + - - memcached-pa1-cl1:nrpe-external-master + - nrpe-memcache-pa1-cl1:nrpe-external-master + - - nrpe-memcache-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors +# nagios rabbitmq + - [rabbitmq-server-pa1-cl1, nrpe-rabbitmq-pa1-cl1] + - - nrpe-rabbitmq-pa1-cl1:monitors + - nagios-server-pa1-cl1:monitors diff --git a/bundles/openstack/deploy-openstack.rst b/bundles/openstack/deploy-openstack.rst index f0195855..3623aaa9 100644 --- a/bundles/openstack/deploy-openstack.rst +++ b/bundles/openstack/deploy-openstack.rst @@ -1,13 +1,22 @@ # GARR OpenStack Cloud -This is a collection of bundles to deploy the GARR OpenStack Cloud (Mitaka release) on Ubuntu 16.04 LTS, providing Dashboard, Compute, Network, Block Storage, Object Storage, Identity and Image services. +This is a collection of bundles to deploy the GARR OpenStack Cloud (Mitaka release) on Ubuntu 16.04 LTS, providing +Dashboard, Compute, Network, Block Storage, Object Storage, Identity and Image services. + +The latest addition, non-obsolete, also includes Nagios as well as a nice highlighting of the variables +which need to be changed if you want to try the bundle: all such variables are in the top part of the +file and are marked with a comment starting with the EDIT keyword. You are welcome to modify any other +variable, too. Requirements ------------ The most up-to-date bundles are: - - bundle_template.juju2.2ctrl.yaml, relying on an external Ceph cluster - - bundle_template.juju2.cephlocal.yaml, creating a minimal Ceph installation on the compute nodes + - bundle_template.juju2.yaml, works with Juju 2.2, includes Nagios, relies on external Ceph cluster + +The two "obsolete" bundles are for Juju 2.0 and likely won't work with more recent Juju due to lack of support for default bindings: + - bundle_template.juju2.2ctrl.yaml.obsolete, relying on an external Ceph cluster + - bundle_template.juju2.cephlocal.yaml.obsolete, creating a minimal Ceph installation on the compute nodes The bundle is designed to run on bare metal using Juju with [MAAS][] (Metal-as-a-Service); you will need to have setup a [MAAS][] deployment with a minimum of 4 physical servers prior to using this bundle. -- GitLab