Smaller non-HA virtual deployment template 21/3521/8
authorStefan K. Berg <stefan.k.berg@ericsson.com>
Mon, 23 Nov 2015 14:07:27 +0000 (15:07 +0100)
committerStefan K. Berg <stefan.k.berg@ericsson.com>
Wed, 25 Nov 2015 08:46:42 +0000 (09:46 +0100)
Change-Id: I8eb9ff059e45d4f72ba7b750ff17661e0f3bade3
Signed-off-by: Stefan K. Berg <stefan.k.berg@ericsson.com>
fuel/deploy/templates/virtual_environment_noha/conf/dea.yaml [new file with mode: 0644]
fuel/deploy/templates/virtual_environment_noha/conf/dha.yaml [new file with mode: 0644]
fuel/deploy/templates/virtual_environment_noha/conf/plugins_conf/.gitkeep [new file with mode: 0644]
fuel/deploy/templates/virtual_environment_noha/networks/fuel1.xml [new file with mode: 0644]
fuel/deploy/templates/virtual_environment_noha/networks/fuel2.xml [new file with mode: 0644]
fuel/deploy/templates/virtual_environment_noha/networks/fuel3.xml [new file with mode: 0644]
fuel/deploy/templates/virtual_environment_noha/networks/fuel4.xml [new file with mode: 0644]
fuel/deploy/templates/virtual_environment_noha/vms/compute.xml [new file with mode: 0644]
fuel/deploy/templates/virtual_environment_noha/vms/controller.xml [new file with mode: 0644]
fuel/deploy/templates/virtual_environment_noha/vms/fuel.xml [new file with mode: 0644]

diff --git a/fuel/deploy/templates/virtual_environment_noha/conf/dea.yaml b/fuel/deploy/templates/virtual_environment_noha/conf/dea.yaml
new file mode 100644 (file)
index 0000000..fbcfcfd
--- /dev/null
@@ -0,0 +1,895 @@
+title: Deployment Environment Adapter (DEA)
+# DEA API version supported
+version:
+created:
+comment: Config for Virtual Environment - HA deployment with Cinder and Opendaylight
+environment:
+  name: opnfv_virt
+  mode: ha
+  net_segment_type: tun
+wanted_release: Kilo on Ubuntu 14.04
+nodes:
+- id: 1
+  interfaces: interfaces_1
+  transformations: transformations_1
+  role: cinder,controller
+- id: 2
+  interfaces: interfaces_1
+  transformations: transformations_2
+  role: compute
+- id: 3
+  interfaces: interfaces_1
+  transformations: transformations_2
+  role: compute
+- id: 4
+  interfaces: interfaces_1
+  transformations: transformations_2
+  role: compute
+fuel:
+  ADMIN_NETWORK:
+    cidr: 10.20.0.0/24
+    dhcp_gateway: 10.20.0.2
+    dhcp_pool_end: 10.20.0.254
+    dhcp_pool_start: 10.20.0.3
+    ipaddress: 10.20.0.2
+    netmask: 255.255.0.0
+  DNS_DOMAIN: opnfvericsson.se
+  DNS_SEARCH: opnfvericsson.se
+  DNS_UPSTREAM: 8.8.8.8
+  FUEL_ACCESS:
+    password: admin
+    user: admin
+  HOSTNAME: opnfv_virt
+  NTP1: 188.126.88.9
+  NTP2: 193.228.143.12
+  NTP3: 178.73.198.130
+interfaces_1:
+  eth0:
+  - fuelweb_admin
+  - management
+  eth1:
+  - storage
+  eth2:
+  - private
+  eth3:
+  - public
+transformations_1:
+  transformations:
+  - action: add-br
+    name: br-fw-admin
+  - action: add-br
+    name: br-mgmt
+  - action: add-br
+    name: br-storage
+  - action: add-br
+    name: br-ex
+  - action: add-br
+    name: br-floating
+    provider: ovs
+  - action: add-patch
+    bridges:
+    - br-floating
+    - br-ex
+    mtu: 65000
+    provider: ovs
+  - action: add-br
+    name: br-mesh
+  - action: add-port
+    bridge: br-fw-admin
+    name: eth0
+  - action: add-port
+    bridge: br-mgmt
+    name: eth0.101
+  - action: add-port
+    bridge: br-storage
+    name: eth1.102
+  - action: add-port
+    bridge: br-mesh
+    name: eth2.103
+  - action: add-port
+    bridge: br-ex
+    name: eth3
+transformations_2:
+  transformations:
+  - action: add-br
+    name: br-fw-admin
+  - action: add-br
+    name: br-mgmt
+  - action: add-br
+    name: br-storage
+  - action: add-br
+    name: br-mesh
+  - action: add-port
+    bridge: br-fw-admin
+    name: eth0
+  - action: add-port
+    bridge: br-mgmt
+    name: eth0.101
+  - action: add-port
+    bridge: br-storage
+    name: eth1.102
+  - action: add-port
+    bridge: br-mesh
+    name: eth2.103
+network:
+  management_vip: 192.168.0.2
+  management_vrouter_vip: 192.168.0.1
+  networking_parameters:
+    base_mac: fa:16:3e:00:00:00
+    configuration_template: null
+    dns_nameservers:
+    - 8.8.8.8
+    floating_ranges:
+    - - 172.16.0.130
+      - 172.16.0.254
+    gre_id_range:
+    - 2
+    - 65535
+    internal_cidr: 192.168.111.0/24
+    internal_gateway: 192.168.111.1
+    net_l23_provider: ovs
+    segmentation_type: tun
+    vlan_range:
+    - 1000
+    - 1030
+  networks:
+  - cidr: 172.16.0.0/24
+    gateway: 172.16.0.1
+    ip_ranges:
+    - - 172.16.0.2
+      - 172.16.0.126
+    meta:
+      cidr: 172.16.0.0/24
+      configurable: true
+      floating_range_var: floating_ranges
+      ip_range:
+      - 172.16.0.2
+      - 172.16.0.126
+      map_priority: 1
+      name: public
+      notation: ip_ranges
+      render_addr_mask: public
+      render_type: null
+      use_gateway: true
+      vips:
+      - haproxy
+      - vrouter
+      vlan_start: null
+    name: public
+    vlan_start: null
+  - cidr: 192.168.0.0/24
+    gateway: null
+    ip_ranges:
+    - - 192.168.0.1
+      - 192.168.0.254
+    meta:
+      cidr: 192.168.0.0/24
+      configurable: true
+      map_priority: 2
+      name: management
+      notation: cidr
+      render_addr_mask: internal
+      render_type: cidr
+      use_gateway: false
+      vips:
+      - haproxy
+      - vrouter
+      vlan_start: 101
+    name: management
+    vlan_start: 101
+  - cidr: 192.168.1.0/24
+    gateway: null
+    ip_ranges:
+    - - 192.168.1.1
+      - 192.168.1.254
+    meta:
+      cidr: 192.168.1.0/24
+      configurable: true
+      map_priority: 2
+      name: storage
+      notation: cidr
+      render_addr_mask: storage
+      render_type: cidr
+      use_gateway: false
+      vlan_start: 102
+    name: storage
+    vlan_start: 102
+  - cidr: 192.168.2.0/24
+    gateway: null
+    ip_ranges:
+    - - 192.168.2.1
+      - 192.168.2.254
+    meta:
+      cidr: 192.168.2.0/24
+      configurable: true
+      map_priority: 2
+      name: private
+      notation: cidr
+      render_addr_mask: null
+      render_type: cidr
+      seg_type: tun
+      use_gateway: false
+      vlan_start: 103
+    name: private
+    vlan_start: 103
+  - cidr: 10.20.0.0/16
+    gateway: 10.20.0.2
+    ip_ranges:
+    - - 10.20.0.3
+      - 10.20.0.254
+    meta:
+      configurable: false
+      map_priority: 0
+      notation: ip_ranges
+      render_addr_mask: null
+      render_type: null
+      unmovable: true
+      use_gateway: true
+    name: fuelweb_admin
+    vlan_start: null
+  public_vip: 172.16.0.3
+  public_vrouter_vip: 172.16.0.2
+  vips:
+    management:
+      ipaddr: 192.168.0.2
+      namespace: haproxy
+      network_role: mgmt/vip
+      node_roles:
+      - controller
+      - primary-controller
+    public:
+      ipaddr: 172.16.0.3
+      namespace: haproxy
+      network_role: public/vip
+      node_roles:
+      - controller
+      - primary-controller
+    vrouter:
+      ipaddr: 192.168.0.1
+      namespace: vrouter
+      network_role: mgmt/vip
+      node_roles:
+      - controller
+      - primary-controller
+    vrouter_pub:
+      ipaddr: 172.16.0.2
+      namespace: vrouter
+      network_role: public/vip
+      node_roles:
+      - controller
+      - primary-controller
+settings:
+  editable:
+    access:
+      email:
+        description: Email address for Administrator
+        label: Email
+        regex:
+          error: Invalid email
+          source: ^\S+@\S+$
+        type: text
+        value: admin@localhost
+        weight: 40
+      metadata:
+        label: Access
+        weight: 10
+      password:
+        description: Password for Administrator
+        label: Password
+        regex:
+          error: Empty password
+          source: \S
+        type: password
+        value: admin
+        weight: 20
+      tenant:
+        description: Tenant (project) name for Administrator
+        label: Tenant
+        regex:
+          error: Invalid tenant name
+          source: ^(?!services$)(?!nova$)(?!glance$)(?!keystone$)(?!neutron$)(?!cinder$)(?!swift$)(?!ceph$)(?![Gg]uest$)(?!.*
+            +.*$).+
+        type: text
+        value: admin
+        weight: 30
+      user:
+        description: Username for Administrator
+        label: Username
+        regex:
+          error: Invalid username
+          source: ^(?!services$)(?!nova$)(?!glance$)(?!keystone$)(?!neutron$)(?!cinder$)(?!swift$)(?!ceph$)(?![Gg]uest$)(?!.*
+            +.*$).+
+        type: text
+        value: admin
+        weight: 10
+    additional_components:
+      ceilometer:
+        description: If selected, Ceilometer component will be installed
+        label: Install Ceilometer
+        type: checkbox
+        value: false
+        weight: 40
+      heat:
+        description: ''
+        label: ''
+        type: hidden
+        value: true
+        weight: 30
+      metadata:
+        label: Additional Components
+        weight: 20
+      mongo:
+        description: If selected, You can use external Mongo DB as ceilometer backend
+        label: Use external Mongo DB
+        restrictions:
+        - settings:additional_components.ceilometer.value == false
+        type: checkbox
+        value: false
+        weight: 40
+      murano:
+        description: If selected, Murano component will be installed
+        label: Install Murano
+        type: checkbox
+        value: false
+        weight: 20
+      sahara:
+        description: If selected, Sahara component will be installed
+        label: Install Sahara
+        type: checkbox
+        value: false
+        weight: 10
+    common:
+      auth_key:
+        description: Public key(s) to include in authorized_keys on deployed nodes
+        label: Public Key
+        type: textarea
+        value: ''
+        weight: 70
+      auto_assign_floating_ip:
+        description: If selected, OpenStack will automatically assign a floating IP
+          to a new instance
+        label: Auto assign floating IP
+        restrictions:
+        - action: hide
+          condition: cluster:net_provider == 'neutron'
+        type: checkbox
+        value: false
+        weight: 40
+      debug:
+        description: Debug logging mode provides more information, but requires more
+          disk space.
+        label: OpenStack debug logging
+        type: checkbox
+        value: false
+        weight: 20
+      libvirt_type:
+        label: Hypervisor type
+        type: radio
+        value: kvm
+        values:
+        - data: kvm
+          description: Choose this type of hypervisor if you run OpenStack on hardware
+          label: KVM
+        - data: qemu
+          description: Choose this type of hypervisor if you run OpenStack on virtual
+            hosts.
+          label: QEMU
+        weight: 30
+      metadata:
+        label: Common
+        weight: 30
+      nova_quota:
+        description: Quotas are used to limit CPU and memory usage for tenants. Enabling
+          quotas will increase load on the Nova database.
+        label: Nova quotas
+        type: checkbox
+        value: false
+        weight: 25
+      puppet_debug:
+        description: Debug puppet logging mode provides more information, but requires
+          more disk space.
+        label: Puppet debug logging
+        type: checkbox
+        value: true
+        weight: 20
+      resume_guests_state_on_host_boot:
+        description: Whether to resume previous guests state when the host reboots.
+          If enabled, this option causes guests assigned to the host to resume their
+          previous state. If the guest was running a restart will be attempted when
+          nova-compute starts. If the guest was not running previously, a restart will
+          not be attempted.
+        label: Resume guests state on host boot
+        type: checkbox
+        value: true
+        weight: 60
+      use_cow_images:
+        description: For most cases you will want qcow format. If it's disabled, raw
+          image format will be used to run VMs. OpenStack with raw format currently
+          does not support snapshotting.
+        label: Use qcow format for images
+        type: checkbox
+        value: true
+        weight: 50
+      use_vcenter:
+        restrictions:
+        - condition: cluster:net_provider == 'nova_network'
+        type: hidden
+        value: false
+        weight: 30
+    corosync:
+      group:
+        description: ''
+        label: Group
+        type: text
+        value: 226.94.1.1
+        weight: 10
+      metadata:
+        label: Corosync
+        restrictions:
+        - action: hide
+          condition: 'true'
+        weight: 50
+      port:
+        description: ''
+        label: Port
+        type: text
+        value: '12000'
+        weight: 20
+      verified:
+        description: Set True only if multicast is configured correctly on router.
+        label: Need to pass network verification.
+        type: checkbox
+        value: false
+        weight: 10
+    external_dns:
+      dns_list:
+        description: List of upstream DNS servers, separated by comma
+        label: DNS list
+        regex:
+          error: Invalid IP address list
+          source: ^\*$|^(?:\d|1?\d\d|2[0-4]\d|25[0-5])(?:\.(?:\d|1?\d\d|2[0-4]\d|25[0-5])){3}(?:\s*,\s*(?:\d|1?\d\d|2[0-4]\d|25[0-5])(?:\.(?:\d|1?\d\d|2[0-4]\d|25[0-5])){3})*$
+        type: text
+        value: 8.8.8.8
+        weight: 10
+      metadata:
+        label: Host OS DNS Servers
+        weight: 90
+    external_mongo:
+      hosts_ip:
+        description: IP Addresses of MongoDB. Use comma to split IPs
+        label: MongoDB hosts IP
+        regex:
+          error: Invalid hosts ip sequence
+          source: ^(((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?),)*((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
+        type: text
+        value: ''
+        weight: 30
+      metadata:
+        label: External MongoDB
+        restrictions:
+        - action: hide
+          condition: settings:additional_components.mongo.value == false
+          message: Ceilometer and MongoDB are not enabled on the Additional Components
+            section
+        weight: 20
+      mongo_db_name:
+        description: Mongo database name
+        label: Database name
+        regex:
+          error: Invalid database name
+          source: ^\w+$
+        type: text
+        value: ceilometer
+        weight: 30
+      mongo_password:
+        description: Mongo database password
+        label: Password
+        regex:
+          error: Password contains spaces
+          source: ^\S*$
+        type: password
+        value: ceilometer
+        weight: 30
+      mongo_replset:
+        description: Name for Mongo replication set
+        label: Replset
+        type: text
+        value: ''
+        weight: 30
+      mongo_user:
+        description: Mongo database username
+        label: Username
+        regex:
+          error: Empty username
+          source: ^\w+$
+        type: text
+        value: ceilometer
+        weight: 30
+    external_ntp:
+      metadata:
+        label: Host OS NTP Servers
+        weight: 100
+      ntp_list:
+        description: List of upstream NTP servers, separated by comma
+        label: NTP server list
+        regex:
+          error: Invalid NTP server list
+          source: ^\s*(?:(?:\w+(?:-+\w+)*\.)+[a-z]+|\d{1,3}(?:\.\d{1,3}){3})\s*(?:,\s*(?:(?:\w+(?:-+\w+)*\.)+[a-z]+|\d{1,3}(\.\d{1,3}){3})\s*)*$
+        type: text
+        value: 188.126.88.9, 193.228.143.12, 178.73.198.130
+        weight: 10
+    kernel_params:
+      kernel:
+        description: Default kernel parameters
+        label: Initial parameters
+        type: text
+        value: console=tty0 net.ifnames=0 biosdevname=0 rootdelay=90 nomodeset
+        weight: 45
+      metadata:
+        label: Kernel parameters
+        weight: 40
+    murano_settings:
+      metadata:
+        label: Murano Settings
+        restrictions:
+        - action: hide
+          condition: settings:additional_components.murano.value == false
+          message: Murano is not enabled on the Additional Components section
+        weight: 20
+      murano_repo_url:
+        description: ''
+        label: Murano Repository URL
+        type: text
+        value: http://storage.apps.openstack.org/
+        weight: 10
+    neutron_advanced_configuration:
+      metadata:
+        label: Neutron Advanced Configuration
+        restrictions:
+        - action: hide
+          condition: cluster:net_provider != 'neutron'
+        weight: 45
+      neutron_dvr:
+        description: Enable Distributed Virtual Routers in Neutron
+        label: Neutron DVR
+        restrictions:
+        - ? networking_parameters:segmentation_type != 'vlan' and settings:neutron_advanced_configuration.neutron_l2_pop.value
+            == false
+          : DVR requires L2 population to be enabled.
+        type: checkbox
+        value: false
+        weight: 20
+      neutron_l2_pop:
+        description: Enable L2 population mechanism in Neutron
+        label: Neutron L2 population
+        restrictions:
+        - action: hide
+          condition: networking_parameters:segmentation_type == 'vlan'
+        type: checkbox
+        value: false
+        weight: 10
+    neutron_mellanox:
+      metadata:
+        enabled: true
+        label: Mellanox Neutron components
+        restrictions:
+        - action: hide
+          condition: not ('experimental' in version:feature_groups)
+        toggleable: false
+        weight: 50
+      plugin:
+        label: Mellanox drivers and SR-IOV plugin
+        type: radio
+        value: disabled
+        values:
+        - data: disabled
+          description: If selected, Mellanox drivers, Neutron and Cinder plugin will
+            not be installed.
+          label: Mellanox drivers and plugins disabled
+          restrictions:
+          - settings:storage.iser.value == true
+        - data: drivers_only
+          description: If selected, Mellanox Ethernet drivers will be installed to support
+            networking over Mellanox NIC. Mellanox Neutron plugin will not be installed.
+          label: Install only Mellanox drivers
+          restrictions:
+          - settings:common.libvirt_type.value != 'kvm'
+        - data: ethernet
+          description: If selected, both Mellanox Ethernet drivers and Mellanox network
+            acceleration (Neutron) plugin will be installed.
+          label: Install Mellanox drivers and SR-IOV plugin
+          restrictions:
+          - settings:common.libvirt_type.value != 'kvm' or not (cluster:net_provider
+            == 'neutron' and networking_parameters:segmentation_type == 'vlan')
+        weight: 60
+      vf_num:
+        description: Note that one virtual function will be reserved to the storage
+          network, in case of choosing iSER.
+        label: Number of virtual NICs
+        restrictions:
+        - settings:neutron_mellanox.plugin.value != 'ethernet'
+        type: text
+        value: '16'
+        weight: 70
+    provision:
+      metadata:
+        label: Provision
+        restrictions:
+        - action: hide
+          condition: 'true'
+        weight: 80
+      method:
+        type: hidden
+        value: image
+    public_network_assignment:
+      assign_to_all_nodes:
+        description: When disabled, public network will be assigned to controllers only
+        label: Assign public network to all nodes
+        type: checkbox
+        value: false
+        weight: 10
+      metadata:
+        label: Public network assignment
+        restrictions:
+        - action: hide
+          condition: cluster:net_provider != 'neutron'
+        weight: 50
+    public_ssl:
+      cert_data:
+        description: Certificate and private key data, concatenated into a single file
+        label: Certificate
+        restrictions:
+        - action: hide
+          condition: (settings:public_ssl.cert_source.value != 'user_uploaded') or (settings:public_ssl.horizon.value
+            == false and settings:public_ssl.services.value == false)
+        type: file
+        value: ''
+        weight: 40
+      cert_source:
+        description: From where we'll get certificate and private key
+        label: Select source for certificate
+        restrictions:
+        - action: hide
+          condition: settings:public_ssl.horizon.value == false and settings:public_ssl.services.value
+            == false
+        type: radio
+        value: self_signed
+        values:
+        - data: self_signed
+          description: Generate private key and certificate that will be signed by this
+            key
+          label: Self-signed
+        - data: user_uploaded
+          description: Use pre-generated key and certificate
+          label: I have my own keypair with certificate
+        weight: 30
+      horizon:
+        description: Secure access to Horizon enabling HTTPS instead of HTTP
+        label: HTTPS for Horizon
+        type: checkbox
+        value: false
+        weight: 10
+      hostname:
+        description: Your DNS entries should point to this name. Self-signed certificates
+          also will use this hostname
+        label: DNS hostname for public TLS endpoints
+        restrictions:
+        - action: hide
+          condition: settings:public_ssl.horizon.value == false and settings:public_ssl.services.value
+            == false
+        type: text
+        value: public.fuel.local
+        weight: 50
+      metadata:
+        label: Public TLS
+        weight: 110
+      services:
+        description: Enable TLS termination on HAProxy for OpenStack services
+        label: TLS for OpenStack public endpoints
+        type: checkbox
+        value: false
+        weight: 20
+    repo_setup:
+      metadata:
+        always_editable: true
+        label: Repositories
+        weight: 50
+      repos:
+        description: 'Please note: the first repository will be considered the operating
+          system mirror that will be used during node provisioning.
+
+          To create a local repository mirror on the Fuel master node, please follow
+          the instructions provided by running "fuel-createmirror --help" on the Fuel
+          master node.
+
+          Please make sure your Fuel master node has Internet access to the repository
+          before attempting to create a mirror.
+
+          For more details, please refer to the documentation (https://docs.mirantis.com/openstack/fuel/fuel-7.0/operations.html#external-ubuntu-ops).
+
+          '
+        extra_priority: null
+        type: custom_repo_configuration
+        value:
+        - name: ubuntu
+          priority: null
+          section: main
+          suite: trusty
+          type: deb
+          uri: http://10.20.0.2:8080/ubuntu-part
+        - name: ubuntu-updates
+          priority: null
+          section: main
+          suite: trusty
+          type: deb
+          uri: http://10.20.0.2:8080/ubuntu-part
+        - name: ubuntu-security
+          priority: null
+          section: main
+          suite: trusty
+          type: deb
+          uri: http://10.20.0.2:8080/ubuntu-part
+        - name: mos
+          priority: 1050
+          section: main restricted
+          suite: mos7.0
+          type: deb
+          uri: http://10.20.0.2:8080/2015.1.0-7.0/ubuntu/x86_64
+        - name: mos-updates
+          priority: 1050
+          section: main restricted
+          suite: mos7.0-updates
+          type: deb
+          uri: http://10.20.0.2:8080/mos-ubuntu
+        - name: mos-security
+          priority: 1050
+          section: main restricted
+          suite: mos7.0-security
+          type: deb
+          uri: http://10.20.0.2:8080/mos-ubuntu
+        - name: mos-holdback
+          priority: 1100
+          section: main restricted
+          suite: mos7.0-holdback
+          type: deb
+          uri: http://10.20.0.2:8080/mos-ubuntu
+        - name: Auxiliary
+          priority: 1150
+          section: main restricted
+          suite: auxiliary
+          type: deb
+          uri: http://10.20.0.2:8080/2015.1.0-7.0/ubuntu/auxiliary
+    storage:
+      ephemeral_ceph:
+        description: Configures Nova to store ephemeral volumes in RBD. This works best
+          if Ceph is enabled for volumes and images, too. Enables live migration of
+          all types of Ceph backed VMs (without this option, live migration will only
+          work with VMs launched from Cinder volumes).
+        label: Ceph RBD for ephemeral volumes (Nova)
+        type: checkbox
+        value: false
+        weight: 75
+      images_ceph:
+        description: Configures Glance to use the Ceph RBD backend to store images.
+          If enabled, this option will prevent Swift from installing.
+        label: Ceph RBD for images (Glance)
+        restrictions:
+        - settings:storage.images_vcenter.value == true: Only one Glance backend could
+            be selected.
+        type: checkbox
+        value: false
+        weight: 30
+      images_vcenter:
+        description: Configures Glance to use the vCenter/ESXi backend to store images.
+          If enabled, this option will prevent Swift from installing.
+        label: VMWare vCenter/ESXi datastore for images (Glance)
+        restrictions:
+        - action: hide
+          condition: settings:common.use_vcenter.value != true
+        - condition: settings:storage.images_ceph.value == true
+          message: Only one Glance backend could be selected.
+        type: checkbox
+        value: false
+        weight: 35
+      iser:
+        description: 'High performance block storage: Cinder volumes over iSER protocol
+          (iSCSI over RDMA). This feature requires SR-IOV capabilities in the NIC, and
+          will use a dedicated virtual function for the storage network.'
+        label: iSER protocol for volumes (Cinder)
+        restrictions:
+        - settings:storage.volumes_lvm.value != true or settings:common.libvirt_type.value
+          != 'kvm'
+        - action: hide
+          condition: not ('experimental' in version:feature_groups)
+        type: checkbox
+        value: false
+        weight: 11
+      metadata:
+        label: Storage
+        weight: 60
+      objects_ceph:
+        description: Configures RadosGW front end for Ceph RBD. This exposes S3 and
+          Swift API Interfaces. If enabled, this option will prevent Swift from installing.
+        label: Ceph RadosGW for objects (Swift API)
+        restrictions:
+        - settings:storage.images_ceph.value == false
+        type: checkbox
+        value: false
+        weight: 80
+      osd_pool_size:
+        description: Configures the default number of object replicas in Ceph. This
+          number must be equal to or lower than the number of deployed 'Storage - Ceph
+          OSD' nodes.
+        label: Ceph object replication factor
+        regex:
+          error: Invalid number
+          source: ^[1-9]\d*$
+        type: text
+        value: '2'
+        weight: 85
+      volumes_ceph:
+        description: Configures Cinder to store volumes in Ceph RBD images.
+        label: Ceph RBD for volumes (Cinder)
+        restrictions:
+        - settings:storage.volumes_lvm.value == true
+        type: checkbox
+        value: false
+        weight: 20
+      volumes_lvm:
+        description: It is recommended to have at least one Storage - Cinder LVM node.
+        label: Cinder LVM over iSCSI for volumes
+        restrictions:
+        - settings:storage.volumes_ceph.value == true
+        type: checkbox
+        value: true
+        weight: 10
+    syslog:
+      metadata:
+        label: Syslog
+        weight: 50
+      syslog_port:
+        description: Remote syslog port
+        label: Port
+        regex:
+          error: Invalid syslog port
+          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]|6553[0-5])$
+        type: text
+        value: '514'
+        weight: 20
+      syslog_server:
+        description: Remote syslog hostname
+        label: Hostname
+        type: text
+        value: ''
+        weight: 10
+      syslog_transport:
+        label: Syslog transport protocol
+        type: radio
+        value: tcp
+        values:
+        - data: udp
+          description: ''
+          label: UDP
+        - data: tcp
+          description: ''
+          label: TCP
+        weight: 30
+    workloads_collector:
+      enabled:
+        type: hidden
+        value: true
+      metadata:
+        label: Workloads Collector User
+        restrictions:
+        - action: hide
+          condition: 'true'
+        weight: 10
+      password:
+        type: password
+        value: sbfn1c8b
+      tenant:
+        type: text
+        value: services
+      user:
+        type: text
+        value: fuel_stats_user
diff --git a/fuel/deploy/templates/virtual_environment_noha/conf/dha.yaml b/fuel/deploy/templates/virtual_environment_noha/conf/dha.yaml
new file mode 100644 (file)
index 0000000..6d476b8
--- /dev/null
@@ -0,0 +1,38 @@
+title: Deployment Hardware Adapter (DHA)
+# DHA API version supported
+version:
+created:
+comment: Config for Virtual Environment
+
+# Adapter to use for this definition
+adapter: libvirt
+
+# Node list.
+# Mandatory property is id, all other properties are adapter specific.
+
+nodes:
+- id: 1
+  libvirtName: controller1
+  libvirtTemplate: templates/virtual_environment/vms/controller.xml
+- id: 2
+  libvirtName: compute1
+  libvirtTemplate: templates/virtual_environment/vms/compute.xml
+- id: 3
+  libvirtName: compute2
+  libvirtTemplate: templates/virtual_environment/vms/compute.xml
+- id: 4
+  libvirtName: compute3
+  libvirtTemplate: templates/virtual_environment/vms/compute.xml
+- id: 5
+  libvirtName: fuel-master
+  libvirtTemplate: templates/virtual_environment/vms/fuel.xml
+  isFuel: yes
+  username: root
+  password: r00tme
+
+virtNetConfDir: templates/virtual_environment/networks
+
+disks:
+  fuel: 50G
+  controller: 50G
+  compute: 50G
diff --git a/fuel/deploy/templates/virtual_environment_noha/conf/plugins_conf/.gitkeep b/fuel/deploy/templates/virtual_environment_noha/conf/plugins_conf/.gitkeep
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/fuel/deploy/templates/virtual_environment_noha/networks/fuel1.xml b/fuel/deploy/templates/virtual_environment_noha/networks/fuel1.xml
new file mode 100644 (file)
index 0000000..7b2b154
--- /dev/null
@@ -0,0 +1,12 @@
+<network>
+  <name>fuel1</name>
+  <forward mode='nat'>
+    <nat>
+      <port start='1024' end='65535'/>
+    </nat>
+  </forward>
+  <bridge name='fuel1' stp='on' delay='0'/>
+  <ip address='10.20.0.1' netmask='255.255.255.0'>
+  </ip>
+</network>
+
diff --git a/fuel/deploy/templates/virtual_environment_noha/networks/fuel2.xml b/fuel/deploy/templates/virtual_environment_noha/networks/fuel2.xml
new file mode 100644 (file)
index 0000000..615c920
--- /dev/null
@@ -0,0 +1,5 @@
+<network>
+  <name>fuel2</name>
+  <bridge name='fuel2' stp='on' delay='0'/>
+</network>
+
diff --git a/fuel/deploy/templates/virtual_environment_noha/networks/fuel3.xml b/fuel/deploy/templates/virtual_environment_noha/networks/fuel3.xml
new file mode 100644 (file)
index 0000000..2383e6c
--- /dev/null
@@ -0,0 +1,5 @@
+<network>
+  <name>fuel3</name>
+  <bridge name='fuel3' stp='on' delay='0'/>
+</network>
+
diff --git a/fuel/deploy/templates/virtual_environment_noha/networks/fuel4.xml b/fuel/deploy/templates/virtual_environment_noha/networks/fuel4.xml
new file mode 100644 (file)
index 0000000..5b69f91
--- /dev/null
@@ -0,0 +1,12 @@
+<network>
+  <name>fuel4</name>
+  <forward mode='nat'>
+    <nat>
+      <port start='1024' end='65535'/>
+    </nat>
+  </forward>
+  <bridge name='fuel4' stp='on' delay='0'/>
+  <ip address='172.16.0.1' netmask='255.255.255.0'>
+  </ip>
+</network>
+
diff --git a/fuel/deploy/templates/virtual_environment_noha/vms/compute.xml b/fuel/deploy/templates/virtual_environment_noha/vms/compute.xml
new file mode 100644 (file)
index 0000000..fbef4bd
--- /dev/null
@@ -0,0 +1,91 @@
+<domain type='kvm'>
+  <name>compute</name>
+  <memory unit='KiB'>8388608</memory>
+  <currentMemory unit='KiB'>8388608</currentMemory>
+  <vcpu placement='static'>2</vcpu>
+  <os>
+    <type arch='x86_64' machine='pc-1.0'>hvm</type>
+    <boot dev='network'/>
+    <boot dev='hd'/>
+    <bios rebootTimeout='30000'/>
+  </os>
+  <features>
+    <acpi/>
+    <apic/>
+    <pae/>
+  </features>
+  <cpu mode='custom' match='exact'>
+    <model fallback='allow'>SandyBridge</model>
+    <vendor>Intel</vendor>
+    <feature policy='require' name='vme'/>
+    <feature policy='require' name='dtes64'/>
+    <feature policy='require' name='vmx'/>
+    <feature policy='require' name='erms'/>
+    <feature policy='require' name='xtpr'/>
+    <feature policy='require' name='smep'/>
+    <feature policy='require' name='pcid'/>
+    <feature policy='require' name='est'/>
+    <feature policy='require' name='monitor'/>
+    <feature policy='require' name='smx'/>
+    <feature policy='require' name='tm'/>
+    <feature policy='require' name='acpi'/>
+    <feature policy='require' name='osxsave'/>
+    <feature policy='require' name='ht'/>
+    <feature policy='require' name='pdcm'/>
+    <feature policy='require' name='fsgsbase'/>
+    <feature policy='require' name='f16c'/>
+    <feature policy='require' name='ds'/>
+    <feature policy='require' name='tm2'/>
+    <feature policy='require' name='ss'/>
+    <feature policy='require' name='pbe'/>
+    <feature policy='require' name='ds_cpl'/>
+    <feature policy='require' name='rdrand'/>
+  </cpu>
+  <clock offset='utc'/>
+  <on_poweroff>destroy</on_poweroff>
+  <on_reboot>restart</on_reboot>
+  <on_crash>restart</on_crash>
+  <devices>
+    <emulator>/usr/bin/kvm</emulator>
+    <disk type='file' device='disk'>
+      <driver name='qemu' type='raw'/>
+      <source file='disk.raw'/>
+      <target dev='vda' bus='virtio'/>
+    </disk>
+    <controller type='usb' index='0'>
+    </controller>
+    <controller type='pci' index='0' model='pci-root'/>
+    <interface type='network'>
+      <source network='fuel1'/>
+      <model type='virtio'/>
+    </interface>
+    <interface type='network'>
+      <source network='fuel2'/>
+      <model type='virtio'/>
+    </interface>
+    <interface type='network'>
+      <source network='fuel3'/>
+      <model type='virtio'/>
+    </interface>
+    <interface type='network'>
+      <source network='fuel4'/>
+      <model type='virtio'/>
+    </interface>
+    <serial type='pty'>
+      <target port='0'/>
+    </serial>
+    <console type='pty'>
+      <target type='serial' port='0'/>
+    </console>
+    <input type='mouse' bus='ps2'/>
+    <input type='keyboard' bus='ps2'/>
+    <graphics type='vnc' port='-1' autoport='yes' keymap='sv'/>
+    <sound model='ich6'>
+    </sound>
+    <video>
+      <model type='cirrus' vram='9216' heads='1'/>
+    </video>
+    <memballoon model='virtio'>
+    </memballoon>
+  </devices>
+</domain>
diff --git a/fuel/deploy/templates/virtual_environment_noha/vms/controller.xml b/fuel/deploy/templates/virtual_environment_noha/vms/controller.xml
new file mode 100644 (file)
index 0000000..3ff2821
--- /dev/null
@@ -0,0 +1,91 @@
+<domain type='kvm'>
+  <name>controller</name>
+  <memory unit='KiB'>8388608</memory>
+  <currentMemory unit='KiB'>8388608</currentMemory>
+  <vcpu placement='static'>2</vcpu>
+  <os>
+    <type arch='x86_64' machine='pc-1.0'>hvm</type>
+    <boot dev='network'/>
+    <boot dev='hd'/>
+    <bios rebootTimeout='30000'/>
+  </os>
+  <features>
+    <acpi/>
+    <apic/>
+    <pae/>
+  </features>
+  <cpu mode='custom' match='exact'>
+    <model fallback='allow'>SandyBridge</model>
+    <vendor>Intel</vendor>
+    <feature policy='require' name='vme'/>
+    <feature policy='require' name='dtes64'/>
+    <feature policy='require' name='vmx'/>
+    <feature policy='require' name='erms'/>
+    <feature policy='require' name='xtpr'/>
+    <feature policy='require' name='smep'/>
+    <feature policy='require' name='pcid'/>
+    <feature policy='require' name='est'/>
+    <feature policy='require' name='monitor'/>
+    <feature policy='require' name='smx'/>
+    <feature policy='require' name='tm'/>
+    <feature policy='require' name='acpi'/>
+    <feature policy='require' name='osxsave'/>
+    <feature policy='require' name='ht'/>
+    <feature policy='require' name='pdcm'/>
+    <feature policy='require' name='fsgsbase'/>
+    <feature policy='require' name='f16c'/>
+    <feature policy='require' name='ds'/>
+    <feature policy='require' name='tm2'/>
+    <feature policy='require' name='ss'/>
+    <feature policy='require' name='pbe'/>
+    <feature policy='require' name='ds_cpl'/>
+    <feature policy='require' name='rdrand'/>
+  </cpu>
+  <clock offset='utc'/>
+  <on_poweroff>destroy</on_poweroff>
+  <on_reboot>restart</on_reboot>
+  <on_crash>restart</on_crash>
+  <devices>
+    <emulator>/usr/bin/kvm</emulator>
+    <disk type='file' device='disk'>
+      <driver name='qemu' type='raw'/>
+      <source file='disk.raw'/>
+      <target dev='vda' bus='virtio'/>
+    </disk>
+    <controller type='usb' index='0'>
+    </controller>
+    <controller type='pci' index='0' model='pci-root'/>
+    <interface type='network'>
+      <source network='fuel1'/>
+      <model type='virtio'/>
+    </interface>
+    <interface type='network'>
+      <source network='fuel2'/>
+      <model type='virtio'/>
+    </interface>
+    <interface type='network'>
+      <source network='fuel3'/>
+      <model type='virtio'/>
+    </interface>
+    <interface type='network'>
+      <source network='fuel4'/>
+      <model type='virtio'/>
+    </interface>
+    <serial type='pty'>
+      <target port='0'/>
+    </serial>
+    <console type='pty'>
+      <target type='serial' port='0'/>
+    </console>
+    <input type='mouse' bus='ps2'/>
+    <input type='keyboard' bus='ps2'/>
+    <graphics type='vnc' port='-1' autoport='yes' keymap='sv'/>
+    <sound model='ich6'>
+    </sound>
+    <video>
+      <model type='cirrus' vram='9216' heads='1'/>
+    </video>
+    <memballoon model='virtio'>
+    </memballoon>
+  </devices>
+</domain>
diff --git a/fuel/deploy/templates/virtual_environment_noha/vms/fuel.xml b/fuel/deploy/templates/virtual_environment_noha/vms/fuel.xml
new file mode 100644 (file)
index 0000000..1a32860
--- /dev/null
@@ -0,0 +1,93 @@
+<domain type='kvm'>
+  <name>fuel</name>
+  <memory unit='KiB'>2097152</memory>
+  <currentMemory unit='KiB'>2097152</currentMemory>
+  <vcpu placement='static'>2</vcpu>
+  <resource>
+    <partition>/machine</partition>
+  </resource>
+  <os>
+    <type arch='x86_64' machine='pc-1.0'>hvm</type>
+    <boot dev='hd'/>
+    <boot dev='cdrom'/>
+    <bootmenu enable='no'/>
+  </os>
+  <features>
+    <acpi/>
+    <apic/>
+    <pae/>
+  </features>
+  <cpu mode='custom' match='exact'>
+    <model fallback='allow'>SandyBridge</model>
+    <vendor>Intel</vendor>
+    <feature policy='require' name='vme'/>
+    <feature policy='require' name='dtes64'/>
+    <feature policy='require' name='vmx'/>
+    <feature policy='require' name='erms'/>
+    <feature policy='require' name='xtpr'/>
+    <feature policy='require' name='smep'/>
+    <feature policy='require' name='pcid'/>
+    <feature policy='require' name='est'/>
+    <feature policy='require' name='monitor'/>
+    <feature policy='require' name='smx'/>
+    <feature policy='require' name='tm'/>
+    <feature policy='require' name='acpi'/>
+    <feature policy='require' name='osxsave'/>
+    <feature policy='require' name='ht'/>
+    <feature policy='require' name='pdcm'/>
+    <feature policy='require' name='fsgsbase'/>
+    <feature policy='require' name='f16c'/>
+    <feature policy='require' name='ds'/>
+    <feature policy='require' name='tm2'/>
+    <feature policy='require' name='ss'/>
+    <feature policy='require' name='pbe'/>
+    <feature policy='require' name='ds_cpl'/>
+    <feature policy='require' name='rdrand'/>
+  </cpu>
+  <clock offset='utc'/>
+  <on_poweroff>destroy</on_poweroff>
+  <on_reboot>restart</on_reboot>
+  <on_crash>restart</on_crash>
+  <devices>
+    <emulator>/usr/bin/kvm</emulator>
+    <disk type='block' device='cdrom'>
+      <driver name='qemu' type='raw'/>
+      <target dev='hdc' bus='ide'/>
+      <readonly/>
+    </disk>
+    <disk type='file' device='disk'>
+      <driver name='qemu' type='raw'/>
+      <source file='disk.raw'/>
+      <target dev='vda' bus='virtio'/>
+    </disk>
+    <controller type='ide' index='0'>
+    </controller>
+    <controller type='usb' index='0'>
+    </controller>
+    <controller type='pci' index='0' model='pci-root'/>
+    <interface type='network'>
+      <source network='fuel1'/>
+      <model type='virtio'/>
+    </interface>
+    <serial type='pty'>
+      <target port='0'/>
+    </serial>
+    <console type='pty'>
+      <target type='serial' port='0'/>
+    </console>
+    <input type='mouse' bus='ps2'/>
+    <input type='keyboard' bus='ps2'/>
+    <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1' keymap='sv'>
+      <listen type='address' address='127.0.0.1'/>
+    </graphics>
+    <sound model='ich6'>
+    </sound>
+    <video>
+      <model type='cirrus' vram='9216' heads='1'/>
+    </video>
+    <memballoon model='virtio'>
+    </memballoon>
+  </devices>
+  <seclabel type='dynamic' model='apparmor' relabel='yes'/>
+</domain>
+