--- aliases: dynamic_address_pool: - &pool_default !os_env POOL_DEFAULT, 10.109.0.0/16:24 default_interface_model: - &interface_model !os_env INTERFACE_MODEL, e1000 template: devops_settings: env_name: !os_env ENV_NAME address_pools: # Network pools used by the environment fuelweb_admin-pool01: net: *pool_default params: vlan_start: 0 # Reserved IP addresses. # - 'l2_network_device' will be used as an IP address for creating # libvirt network with assigned IP on it, if specified. # - 'gateway' should be used in fuel-qa framework to get the gateway # of the address pool. Can be different from libvirt IP address # in case if a network already have another gateway. # - all other IP addresses specified in the template can be used # for different purposes in different test cases. ip_reserved: # Address of the gateway in the address pool fuelweb_admin-pool01. # If string - than is used 'as is', as a real IP address # If numeric - than assumed as a relative address # from the start of the address pool. gateway: +1 # Libvirt bridge will get this IP address l2_network_device: +1 # IP ranges, reserved in the address pool. # - 'default' IP range stands for 'default' nodegroup in Fuel. # - any other IP range names such as 'floating' can be specified to # provide a special IP ranges to configure cluster settings. # For special test cases, several IP ranges can be configured here # for different networks. Names of these ranges should be # agreed for template and test cases. ip_ranges: # Relative or real IP addresses default: [+2, -2] # admin IP range for 'default' nodegroup name public-pool01: net: *pool_default params: vlan_start: 0 ip_reserved: gateway: +1 l2_network_device: +1 # l2_network_device will get this IP address ip_ranges: default: [+2, +127] # public IP range for 'default' nodegroup name floating: [+128, -2] storage-pool01: net: *pool_default params: vlan_start: 101 management-pool01: net: *pool_default params: vlan_start: 102 private-pool01: net: *pool_default params: vlan_start: 960 vlan_end: 1000 groups: - name: rack-01 driver: name: devops.driver.libvirt params: connection_string: !os_env CONNECTION_STRING, qemu:///system storage_pool_name: !os_env STORAGE_POOL_NAME, default stp: True hpet: False use_host_cpu: !os_env DRIVER_USE_HOST_CPU, true network_pools: # Address pools for OpenStack networks. # Actual names should be used for keys # (the same as in Nailgun, for example) fuelweb_admin: fuelweb_admin-pool01 public: public-pool01 storage: storage-pool01 management: management-pool01 private: private-pool01 l2_network_devices: # Libvirt bridges. It is *NOT* Nailgun networks admin: address_pool: fuelweb_admin-pool01 dhcp: false forward: mode: nat public: address_pool: public-pool01 dhcp: false forward: mode: nat storage: address_pool: storage-pool01 dhcp: false management: address_pool: management-pool01 dhcp: false private: address_pool: private-pool01 dhcp: false nodes: - name: admin # Custom name of VM for Fuel admin node role: fuel_master # Fixed role for Fuel master node properties params: vcpu: !os_env ADMIN_NODE_CPU, 2 memory: !os_env ADMIN_NODE_MEMORY, 3072 boot: - hd - cdrom # for boot from usb - without 'cdrom' volumes: - name: system capacity: !os_env ADMIN_NODE_VOLUME_SIZE, 75 format: qcow2 - name: iso source_image: !os_env ISO_PATH # if 'source_image' set, then volume capacity is calculated from it's size format: raw device: cdrom # for boot from usb - 'disk' bus: ide # for boot from usb - 'usb' interfaces: - label: eth0 l2_network_device: admin # Libvirt bridge name. It is *NOT* a Nailgun network interface_model: *interface_model network_config: eth0: networks: - fuelweb_admin # Slave nodes - name: slave-01 role: fuel_slave params: &rack-01-slave-node-params vcpu: !os_env SLAVE_NODE_CPU, 2 memory: !os_env SLAVE_NODE_MEMORY, 3072 boot: - network - hd volumes: - name: system capacity: !os_env NODE_VOLUME_SIZE, 50 format: qcow2 - name: cinder capacity: !os_env NODE_VOLUME_SIZE, 50 format: qcow2 - name: swift capacity: !os_env NODE_VOLUME_SIZE, 50 format: qcow2 # List of node interfaces interfaces: - label: eth0 l2_network_device: admin # Libvirt bridge name. It is *NOT* Nailgun networks interface_model: *interface_model - label: eth1 l2_network_device: public interface_model: *interface_model - label: eth2 l2_network_device: storage interface_model: *interface_model - label: eth3 l2_network_device: management interface_model: *interface_model - label: eth4 l2_network_device: private interface_model: *interface_model # How Nailgun/OpenStack networks should assigned for interfaces network_config: eth0: networks: - fuelweb_admin # Nailgun/OpenStack network name eth1: networks: - public eth2: networks: - storage eth3: networks: - management eth4: networks: - private - name: slave-02 role: fuel_slave params: *rack-01-slave-node-params - name: slave-03 role: fuel_slave params: *rack-01-slave-node-params - name: slave-04 role: fuel_slave params: *rack-01-slave-node-params - name: slave-05 role: fuel_slave params: *rack-01-slave-node-params - name: slave-06 role: fuel_slave params: *rack-01-slave-node-params - name: slave-07 role: fuel_slave params: *rack-01-slave-node-params - name: slave-08 role: fuel_slave params: *rack-01-slave-node-params - name: slave-09 role: fuel_slave params: *rack-01-slave-node-params