1 The structure is being reworked. This page describes the DEA.yaml
4 The DEA.yaml file describes an actual Fuel deployment. This YAML file
5 can either be edited from an existing template or created from an
6 existing deployment by running the "create_templates.sh" script.
8 The top level fields and their origin
10 compute: Network translations for the compute nodes (from astute.yaml)
11 Hoping that this is sufficient and we don't need to be more granular!
13 controller: Network translations for the compute nodes (from
14 astute.yaml) Hoping that this is sufficient and we don't need to be
17 created: Creation time for this DEA file.
19 environment_mode: Environment mode from "fuel env" (ha_compact,
22 fuel: The networking, DNS and NTP information from the Fuel node
25 network: The "fuel network" part.
27 nodes: A data structure describing the role and network configuration
30 opnfv: This structure contains two sub structures "controller" and
31 "compute" containing the "opnfv" namespace from their respective
34 settings: The "fuel settings" part. This is the complete settings,
35 thinking it can come in handy for future modifications. I think that
36 the "pre_deploy.sh" should be replaced by us customising these
37 settings instead (way into the future though).
39 title: Deployment Environment Adapter (DEA)
41 version: DEA API to be used for parsing this file. Currently 1.1.
43 Live example (looooong!)
45 # DEA API version supported
47 created: Wed Apr 22 09:43:22 UTC 2015
48 comment: Small libvirt deployment
74 environment_mode: multinode
77 dhcp_pool_end: 10.20.0.254
78 dhcp_pool_start: 10.20.0.3
80 netmask: 255.255.255.0
81 DNS_DOMAIN: domain.tld
82 DNS_SEARCH: domain.tld
227 - address: 46.253.206.181
231 compute: 'server node-4.domain.tld
234 controller: 'server 0.ubuntu.pool.ntp.org
236 server 1.ubuntu.pool.ntp.org
238 server 2.ubuntu.pool.ntp.org
240 server 3.ubuntu.pool.ntp.org
252 - address: 46.253.206.181
256 compute: 'server node-4.domain.tld
259 controller: 'server 0.ubuntu.pool.ntp.org
261 server 1.ubuntu.pool.ntp.org
263 server 2.ubuntu.pool.ntp.org
265 server 3.ubuntu.pool.ntp.org
269 networking_parameters:
270 base_mac: fa:16:3e:00:00:00
280 internal_cidr: 192.168.111.0/24
281 internal_gateway: 192.168.111.1
282 net_l23_provider: ovs
283 segmentation_type: vlan
288 - cidr: 172.16.0.0/24
297 floating_range_var: floating_ranges
304 render_addr_mask: public
310 - cidr: 192.168.0.0/24
322 render_addr_mask: internal
328 - cidr: 192.168.1.0/24
340 render_addr_mask: storage
354 neutron_vlan_range: true
356 render_addr_mask: null
373 render_addr_mask: null
393 description: Email address for Administrator
396 value: admin@localhost
402 description: Password for Administrator
408 description: Tenant (project) name for Administrator
411 error: Invalid tenant name
412 source: ^(?!services$)(?!nova$)(?!glance$)(?!keystone$)(?!neutron$)(?!cinder$)(?!swift
413 $)(?!ceph$)(?![Gg]uest$).*
418 description: Username for Administrator
421 error: Invalid username
422 source: ^(?!services$)(?!nova$)(?!glance$)(?!keystone$)(?!neutron$)(?!cinder$)(?!swift
423 $)(?!ceph$)(?![Gg]uest$).*
427 additional_components:
429 description: If selected, Ceilometer component will be installed
430 label: Install Ceilometer
441 label: Additional Components
444 description: If selected, Murano component will be installed
445 label: Install Murano
447 - cluster:net_provider != 'neutron'
452 description: If selected, Sahara component will be installed
453 label: Install Sahara
459 description: Public key(s) to include in authorized_keys on deployed nodes
464 auto_assign_floating_ip:
465 description: If selected, OpenStack will automatically assign a floating IP
467 label: Auto assign floating IP
469 - cluster:net_provider == 'neutron'
473 compute_scheduler_driver:
474 label: Scheduler driver
476 value: nova.scheduler.filter_scheduler.FilterScheduler
478 - data: nova.scheduler.filter_scheduler.FilterScheduler
479 description: Currently the most advanced OpenStack scheduler. See the OpenStack
480 documentation for details.
481 label: Filter scheduler
482 - data: nova.scheduler.simple.SimpleScheduler
483 description: This is 'naive' scheduler which tries to find the least loaded
485 label: Simple scheduler
488 description: Debug logging mode provides more information, but requires more
490 label: OpenStack debug logging
495 description: If set, generic segmentation offload (gso) and generic receive
496 offload (gro) on physical nics will be disabled. See ethtool man.
497 label: Disable generic offload on physical nics
500 condition: cluster:net_provider == 'neutron' and networking_parameters:segmentation_ty
507 label: Hypervisor type
512 description: Choose this type of hypervisor if you run OpenStack on hardware
515 - settings:common.libvirt_type.value == 'vcenter'
517 description: Choose this type of hypervisor if you run OpenStack on virtual
521 - settings:common.libvirt_type.value == 'vcenter
523 description: Choose this type of hypervisor if you run OpenStack in a vCenter
527 - settings:common.libvirt_type.value != 'vcenter' or cluster:net_provider
534 description: Quotas are used to limit CPU and memory usage for tenants. Enabling
535 quotas will increase load on the Nova database.
540 resume_guests_state_on_host_boot:
541 description: Whether to resume previous guests state when the host reboots.
542 If enabled, this option causes guests assigned to the host to resume their
543 previous state. If the guest was running a restart will be attempted when
544 nova-compute starts. If the guest was not running previously, a restart
545 will not be attempted.
546 label: Resume guests state on host boot
551 description: For most cases you will want qcow format. If it's disabled, raw
552 image format will be used to run VMs. OpenStack with raw format currently
553 does not support snapshotting.
554 label: Use qcow format for images
578 description: Set True only if multicast is configured correctly on router.
579 label: Need to pass network verification.
585 description: List of upstream DNS servers, separated by comma
588 value: 8.8.8.8, 8.8.4.4
598 description: List of upstream NTP servers, separated by comma
599 label: NTP servers list
601 value: 0.pool.ntp.org, 1.pool.ntp.org
605 description: Default kernel parameters
606 label: Initial parameters
608 value: console=ttyS0,9600 console=tty0 rootdelay=90 nomodeset
611 label: Kernel parameters
616 label: Mellanox Neutron components
620 label: Mellanox drivers and SR-IOV plugin
625 description: If selected, Mellanox drivers, Neutron and Cinder plugin will
627 label: Mellanox drivers and plugins disabled
629 - settings:storage.iser.value == true
631 description: If selected, Mellanox Ethernet drivers will be installed to
632 support networking over Mellanox NIC. Mellanox Neutron plugin will not
634 label: Install only Mellanox drivers
636 - settings:common.libvirt_type.value != 'kvm'
638 description: If selected, both Mellanox Ethernet drivers and Mellanox network
639 acceleration (Neutron) plugin will be installed.
640 label: Install Mellanox drivers and SR-IOV plugin
642 - settings:common.libvirt_type.value != 'kvm' or not (cluster:net_provider
643 == 'neutron' and networking_parameters:segmentation_type == 'vlan')
646 description: Note that one virtual function will be reserved to the storage
647 network, in case of choosing iSER.
648 label: Number of virtual NICs
650 - settings:neutron_mellanox.plugin.value != 'ethernet'
656 description: Default network transport type to use
657 label: NSX connector type
664 label: GRE over IPSec
668 label: STT over IPSec
673 description: UUID for the default L3 gateway service to use with this cluster
674 label: L3 service UUID
676 error: Invalid L3 gateway service UUID
677 source: '[a-f\d]{8}-[a-f\d]{4}-[a-f\d]{4}-[a-f\d]{4}-[a-f\d]{12}'
686 condition: cluster:net_provider != 'neutron' or networking_parameters:net_l23_provider
690 description: One or more IPv4[:port] addresses of NSX controller node, separated
691 by comma (e.g. 10.30.30.2,192.168.110.254:443)
692 label: NSX controller endpoint
694 error: Invalid controller endpoints, specify valid IPv4[:port] pair
695 source: ^(([\d]|[1-9][\d]|1[\d]{2}|2[0-4][\d]|25[0-5])\.){3}([\d]|[1-9][\d]|1[\d]{2}|2
696 [0-4][\d]|25[0-5])(:(6553[0-5]|655[0-2][\d]|65[0-4][\d]{2}|6[0-4][\d]{3}|5[\d]{4}|[\d][\d]{0,3})
697 )?(,(([\d]|[1-9][\d]|1[\d]{2}|2[0-4][\d]|25[0-5])\.){3}([\d]|[1-9][\d]|1[\d]{2}|2[0-4][\d]|25[0-
698 5])(:(6553[0-5]|655[0-2][\d]|65[0-4][\d]{2}|6[0-4][\d]{3}|5[\d]{4}|[\d][\d]{0,3}))?)*$
703 description: Password for Administrator
706 error: Empty password
712 description: NSX administrator's username
715 error: Empty username
721 description: URL to NSX specific packages
722 label: URL to NSX bits
724 error: Invalid URL, specify valid HTTP/HTTPS URL with IPv4 address (e.g.
725 http://10.20.0.2/nsx)
726 source: ^https?://(([\d]|[1-9][\d]|1[\d]{2}|2[0-4][\d]|25[0-5])\.){3}([\d]|[1-9][\d]|1
727 [\d]{2}|2[0-4][\d]|25[0-5])(:(6553[0-5]|655[0-2][\d]|65[0-4][\d]{2}|6[0-4][\d]{3}|5[\d]{4}|[\d][
734 label: NSX cluster has Service nodes
739 description: UUID of the pre-existing default NSX Transport zone
740 label: Transport zone UUID
742 error: Invalid transport zone UUID
743 source: '[a-f\d]{8}-[a-f\d]{4}-[a-f\d]{4}-[a-f\d]{4}-[a-f\d]{12}'
752 condition: not ('experimental' in version:feature_groups)
755 description: Which provision method to use for this cluster.
756 label: Provision method
761 description: Copying pre-built images on a disk.
764 description: Install from scratch using anaconda or debian-installer.
765 label: Classic (use anaconda or debian-installer)
766 public_network_assignment:
768 description: When disabled, public network will be assigned to controllers
769 and zabbix-server only
770 label: Assign public network to all nodes
775 label: Public network assignment
778 condition: cluster:net_provider != 'neutron'
782 description: Configures Nova to store ephemeral volumes in RBD. This works
783 best if Ceph is enabled for volumes and images, too. Enables live migration
784 of all types of Ceph backed VMs (without this option, live migration will
785 only work with VMs launched from Cinder volumes).
786 label: Ceph RBD for ephemeral volumes (Nova)
788 - settings:common.libvirt_type.value == 'vcenter'
793 description: Configures Glance to use the Ceph RBD backend to store images.
794 If enabled, this option will prevent Swift from installing.
795 label: Ceph RBD for images (Glance)
800 description: Configures Glance to use the vCenter/ESXi backend to store images.
801 If enabled, this option will prevent Swift from installing.
802 label: VMWare vCenter/ESXi datastore for images (Glance)
804 - settings:common.libvirt_type.value != 'vcenter'
809 description: 'High performance block storage: Cinder volumes over iSER protocol
810 (iSCSI over RDMA). This feature requires SR-IOV capabilities in the NIC,
811 and will use a dedicated virtual function for the storage network.'
812 label: iSER protocol for volumes (Cinder)
814 - settings:storage.volumes_lvm.value != true or settings:common.libvirt_type.value
823 description: Configures RadosGW front end for Ceph RBD. This exposes S3 and
824 Swift API Interfaces. If enabled, this option will prevent Swift from installing.
825 label: Ceph RadosGW for objects (Swift API)
827 - settings:storage.images_ceph.value == false
832 description: Configures the default number of object replicas in Ceph. This
833 number must be equal to or lower than the number of deployed 'Storage -
835 label: Ceph object replication factor
837 error: Invalid number
840 - settings:common.libvirt_type.value == 'vcenter'
845 description: Inventory path to a datacenter. If you want to use ESXi host
846 as datastore, it should be "ha-datacenter".
847 label: Datacenter name
849 error: Empty datacenter
853 condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
860 description: Datastore associated with the datacenter.
861 label: Datastore name
863 error: Empty datastore
867 condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
874 description: IP Address of vCenter/ESXi
875 label: vCenter/ESXi IP
877 error: Specify valid IPv4 address
878 source: ^(([\d]|[1-9][\d]|1[\d]{2}|2[0-4][\d]|25[0-5])\.){3}([\d]|[1-9][\d]|1[\d]{2}|2
882 condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
889 description: The name of the directory where the glance images will be stored
890 in the VMware datastore.
891 label: Datastore Images directory
893 error: Empty images directory
897 condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
901 value: /openstack_glance
904 description: vCenter/ESXi admin password
907 error: Empty password
911 condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
918 description: vCenter/ESXi admin username
921 error: Empty username
925 condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
932 description: Configures Cinder to store volumes in Ceph RBD images.
933 label: Ceph RBD for volumes (Cinder)
935 - settings:storage.volumes_lvm.value == true or settings:common.libvirt_type.value
941 description: Requires at least one Storage - Cinder LVM node.
942 label: Cinder LVM over iSCSI for volumes
944 - settings:storage.volumes_ceph.value == true
949 description: Configures Cinder to store volumes via VMware vCenter.
950 label: VMware vCenter for volumes (Cinder)
952 - settings:common.libvirt_type.value != 'vcenter' or settings:storage.volumes_lvm.value
962 description: Remote syslog port
965 error: Invalid Syslog port
966 source: ^([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6
972 description: Remote syslog hostname
978 label: Syslog transport protocol
991 description: vCenter cluster name. If you have multiple clusters, use comma
995 error: Invalid cluster list
996 source: ^([^,\ ]+([\ ]*[^,\ ])*)(,[^,\ ]+([\ ]*[^,\ ])*)*$
1001 description: The Datastore regexp setting specifies the data stores to use
1002 with Compute. For example, "nas.*". If you want to use all available datastores,
1003 leave this field blank
1004 label: Datastore regexp
1006 error: Invalid datastore regexp
1007 source: ^(\S.*\S|\S|)$
1012 description: IP Address of vCenter
1015 error: Specify valid IPv4 address
1016 source: ^(([\d]|[1-9][\d]|1[\d]{2}|2[0-4][\d]|25[0-5])\.){3}([\d]|[1-9][\d]|1[\d]{2}|2
1025 condition: settings:common.libvirt_type.value != 'vcenter'
1034 description: vCenter admin password
1037 error: Empty password
1043 description: vCenter admin username
1046 error: Empty username
1052 description: Physical ESXi host ethernet adapter for VLAN networking (e.g.
1053 vmnic1). If empty "vmnic0" is used by default
1054 label: ESXi VLAN interface
1057 condition: cluster:net_provider != 'nova_network' or networking_parameters:net_manager
1064 label: Zabbix Access
1067 condition: not ('experimental' in version:feature_groups)
1070 description: Password for Zabbix Administrator
1076 description: Username for Zabbix Administrator