Updates docs for SR1 with final revision
[genesis.git] / fuel / prototypes / auto-deploy / documentation / 2-dea.txt
1 The structure is being reworked. This page describes the DEA.yaml
2 file.
3
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.
7
8 The top level fields and their origin
9
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!
12
13 controller: Network translations for the compute nodes (from
14 astute.yaml) Hoping that this is sufficient and we don't need to be
15 more granular!
16
17 created: Creation time for this DEA file.
18
19 environment_mode: Environment mode from "fuel env" (ha_compact,
20 multinode, ...)
21
22 fuel: The networking, DNS and NTP information from the Fuel node
23 astute.yaml.
24
25 network: The "fuel network" part.
26
27 nodes: A data structure describing the role and network configuration
28 for all nodes.
29
30 opnfv: This structure contains two sub structures "controller" and
31 "compute" containing the "opnfv" namespace from their respective
32 astute.yaml.
33
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).
38
39 title: Deployment Environment Adapter (DEA)
40
41 version: DEA API to be used for parsing this file. Currently 1.1.
42
43 Live example (looooong!)
44
45 # DEA API version supported
46 version: 1.1
47 created: Wed Apr 22 09:43:22 UTC 2015
48 comment: Small libvirt deployment
49 nodes:
50 - id: 1
51   interfaces:
52     eth0:
53     - fuelweb_admin
54     - management
55     eth1:
56     - storage
57     eth2:
58     - private
59     eth3:
60     - public
61   role: compute
62 - id: 2
63   interfaces:
64     eth0:
65     - fuelweb_admin
66     - management
67     eth1:
68     - storage
69     eth2:
70     - private
71     eth3:
72     - public
73   role: controller
74 environment_mode: multinode
75 fuel:
76   ADMIN_NETWORK:
77     dhcp_pool_end: 10.20.0.254
78     dhcp_pool_start: 10.20.0.3
79     ipaddress: 10.20.0.2
80     netmask: 255.255.255.0
81   DNS_DOMAIN: domain.tld
82   DNS_SEARCH: domain.tld
83   DNS_UPSTREAM: 8.8.8.8
84   FUEL_ACCESS:
85     password: admin
86     user: admin
87   HOSTNAME: fuel
88   NTP1: 0.pool.ntp.org
89   NTP2: 1.pool.ntp.org
90   NTP3: 2.pool.ntp.org
91 controller:
92 - action: add-br
93   name: br-eth0
94 - action: add-port
95   bridge: br-eth0
96   name: eth0
97 - action: add-br
98   name: br-eth1
99 - action: add-port
100   bridge: br-eth1
101   name: eth1
102 - action: add-br
103   name: br-eth2
104 - action: add-port
105   bridge: br-eth2
106   name: eth2
107 - action: add-br
108   name: br-eth3
109 - action: add-port
110   bridge: br-eth3
111   name: eth3
112 - action: add-br
113   name: br-ex
114 - action: add-br
115   name: br-mgmt
116 - action: add-br
117   name: br-storage
118 - action: add-br
119   name: br-fw-admin
120 - action: add-patch
121   bridges:
122   - br-eth1
123   - br-storage
124   tags:
125   - 102
126   - 0
127   vlan_ids:
128   - 102
129   - 0
130 - action: add-patch
131   bridges:
132   - br-eth0
133   - br-mgmt
134   tags:
135   - 101
136   - 0
137   vlan_ids:
138   - 101
139   - 0
140 - action: add-patch
141   bridges:
142   - br-eth0
143   - br-fw-admin
144   trunks:
145   - 0
146 - action: add-patch
147   bridges:
148   - br-eth3
149   - br-ex
150   trunks:
151   - 0
152 - action: add-br
153   name: br-prv
154 - action: add-patch
155   bridges:
156   - br-eth2
157   - br-prv
158 compute:
159 - action: add-br
160   name: br-eth0
161 - action: add-port
162   bridge: br-eth0
163   name: eth0
164 - action: add-br
165   name: br-eth1
166 - action: add-port
167   bridge: br-eth1
168   name: eth1
169 - action: add-br
170   name: br-eth2
171 - action: add-port
172   bridge: br-eth2
173   name: eth2
174 - action: add-br
175   name: br-eth3
176 - action: add-port
177   bridge: br-eth3
178   name: eth3
179 - action: add-br
180   name: br-mgmt
181 - action: add-br
182   name: br-storage
183 - action: add-br
184   name: br-fw-admin
185 - action: add-patch
186   bridges:
187   - br-eth1
188   - br-storage
189   tags:
190   - 102
191   - 0
192   vlan_ids:
193   - 102
194   - 0
195 - action: add-patch
196   bridges:
197   - br-eth0
198   - br-mgmt
199   tags:
200   - 101
201   - 0
202   vlan_ids:
203   - 101
204   - 0
205 - action: add-patch
206   bridges:
207   - br-eth0
208   - br-fw-admin
209   trunks:
210   - 0
211 - action: add-br
212   name: br-prv
213 - action: add-patch
214   bridges:
215   - br-eth2
216   - br-prv
217 opnfv:
218   compute:
219     dns:
220       compute:
221       - 8.8.8.8
222       - 8.8.4.4
223       controller:
224       - 8.8.8.8
225       - 8.8.4.4
226     hosts:
227     - address: 46.253.206.181
228       fqdn: tor.e1.se
229       name: tor
230     ntp:
231       compute: 'server node-4.domain.tld
232
233         '
234       controller: 'server 0.ubuntu.pool.ntp.org
235
236         server 1.ubuntu.pool.ntp.org
237
238         server 2.ubuntu.pool.ntp.org
239
240         server 3.ubuntu.pool.ntp.org
241
242         '
243   controller:
244     dns:
245       compute:
246       - 8.8.8.8
247       - 8.8.4.4
248       controller:
249       - 8.8.8.8
250       - 8.8.4.4
251     hosts:
252     - address: 46.253.206.181
253       fqdn: tor.e1.se
254       name: tor
255     ntp:
256       compute: 'server node-4.domain.tld
257
258         '
259       controller: 'server 0.ubuntu.pool.ntp.org
260
261         server 1.ubuntu.pool.ntp.org
262
263         server 2.ubuntu.pool.ntp.org
264
265         server 3.ubuntu.pool.ntp.org
266
267         '
268 network:
269   networking_parameters:
270     base_mac: fa:16:3e:00:00:00
271     dns_nameservers:
272     - 8.8.4.4
273     - 8.8.8.8
274     floating_ranges:
275     - - 172.16.0.130
276       - 172.16.0.254
277     gre_id_range:
278     - 2
279     - 65535
280     internal_cidr: 192.168.111.0/24
281     internal_gateway: 192.168.111.1
282     net_l23_provider: ovs
283     segmentation_type: vlan
284     vlan_range:
285     - 1000
286     - 1200
287   networks:
288   - cidr: 172.16.0.0/24
289     gateway: 172.16.0.1
290     ip_ranges:
291     - - 172.16.0.2
292       - 172.16.0.126
293     meta:
294       assign_vip: true
295       cidr: 172.16.0.0/24
296       configurable: true
297       floating_range_var: floating_ranges
298       ip_range:
299       - 172.16.0.2
300       - 172.16.0.126
301       map_priority: 1
302       name: public
303       notation: ip_ranges
304       render_addr_mask: public
305       render_type: null
306       use_gateway: true
307       vlan_start: null
308     name: public
309     vlan_start: null
310   - cidr: 192.168.0.0/24
311     gateway: null
312     ip_ranges:
313     - - 192.168.0.2
314       - 192.168.0.254
315     meta:
316       assign_vip: true
317       cidr: 192.168.0.0/24
318       configurable: true
319       map_priority: 2
320       name: management
321       notation: cidr
322       render_addr_mask: internal
323       render_type: cidr
324       use_gateway: false
325       vlan_start: 101
326     name: management
327     vlan_start: 101
328   - cidr: 192.168.1.0/24
329     gateway: null
330     ip_ranges:
331     - - 192.168.1.2
332       - 192.168.1.254
333     meta:
334       assign_vip: false
335       cidr: 192.168.1.0/24
336       configurable: true
337       map_priority: 2
338       name: storage
339       notation: cidr
340       render_addr_mask: storage
341       render_type: cidr
342       use_gateway: false
343       vlan_start: 102
344     name: storage
345     vlan_start: 102
346   - cidr: null
347     gateway: null
348     ip_ranges: []
349     meta:
350       assign_vip: false
351       configurable: false
352       map_priority: 2
353       name: private
354       neutron_vlan_range: true
355       notation: null
356       render_addr_mask: null
357       render_type: null
358       seg_type: vlan
359       use_gateway: false
360       vlan_start: null
361     name: private
362     vlan_start: null
363   - cidr: 10.20.0.0/24
364     gateway: null
365     ip_ranges:
366     - - 10.20.0.3
367       - 10.20.0.254
368     meta:
369       assign_vip: false
370       configurable: false
371       map_priority: 0
372       notation: ip_ranges
373       render_addr_mask: null
374       render_type: null
375       unmovable: true
376       use_gateway: true
377     name: fuelweb_admin
378     vlan_start: null
379 interfaces:
380   eth0:
381   - fuelweb_admin
382   - management
383   eth1:
384   - storage
385   eth2:
386   - private
387   eth3:
388   - public
389 settings:
390   editable:
391     access:
392       email:
393         description: Email address for Administrator
394         label: email
395         type: text
396         value: admin@localhost
397         weight: 40
398       metadata:
399         label: Access
400         weight: 10
401       password:
402         description: Password for Administrator
403         label: password
404         type: password
405         value: admin
406         weight: 20
407       tenant:
408         description: Tenant (project) name for Administrator
409         label: tenant
410         regex:
411           error: Invalid tenant name
412           source: ^(?!services$)(?!nova$)(?!glance$)(?!keystone$)(?!neutron$)(?!cinder$)(?!swift
413 $)(?!ceph$)(?![Gg]uest$).*
414         type: text
415         value: admin
416         weight: 30
417       user:
418         description: Username for Administrator
419         label: username
420         regex:
421           error: Invalid username
422           source: ^(?!services$)(?!nova$)(?!glance$)(?!keystone$)(?!neutron$)(?!cinder$)(?!swift
423 $)(?!ceph$)(?![Gg]uest$).*
424         type: text
425         value: admin
426         weight: 10
427     additional_components:
428       ceilometer:
429         description: If selected, Ceilometer component will be installed
430         label: Install Ceilometer
431         type: checkbox
432         value: false
433         weight: 40
434       heat:
435         description: ''
436         label: ''
437         type: hidden
438         value: true
439         weight: 30
440       metadata:
441         label: Additional Components
442         weight: 20
443       murano:
444         description: If selected, Murano component will be installed
445         label: Install Murano
446         restrictions:
447         - cluster:net_provider != 'neutron'
448         type: checkbox
449         value: false
450         weight: 20
451       sahara:
452         description: If selected, Sahara component will be installed
453         label: Install Sahara
454         type: checkbox
455         value: false
456         weight: 10
457     common:
458       auth_key:
459         description: Public key(s) to include in authorized_keys on deployed nodes
460         label: Public Key
461         type: text
462         value: ''
463         weight: 70
464       auto_assign_floating_ip:
465         description: If selected, OpenStack will automatically assign a floating IP
466           to a new instance
467         label: Auto assign floating IP
468         restrictions:
469         - cluster:net_provider == 'neutron'
470         type: checkbox
471         value: false
472         weight: 40
473       compute_scheduler_driver:
474         label: Scheduler driver
475         type: radio
476         value: nova.scheduler.filter_scheduler.FilterScheduler
477         values:
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
484             host
485           label: Simple scheduler
486         weight: 40
487       debug:
488         description: Debug logging mode provides more information, but requires more
489           disk space.
490         label: OpenStack debug logging
491         type: checkbox
492         value: false
493         weight: 20
494       disable_offload:
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
498         restrictions:
499         - action: hide
500           condition: cluster:net_provider == 'neutron' and networking_parameters:segmentation_ty
501 pe
502             == 'gre'
503         type: checkbox
504         value: true
505         weight: 80
506       libvirt_type:
507         label: Hypervisor type
508         type: radio
509         value: kvm
510         values:
511         - data: kvm
512           description: Choose this type of hypervisor if you run OpenStack on hardware
513           label: KVM
514           restrictions:
515           - settings:common.libvirt_type.value == 'vcenter'
516         - data: qemu
517           description: Choose this type of hypervisor if you run OpenStack on virtual
518             hosts.
519           label: QEMU
520           restrictions:
521           - settings:common.libvirt_type.value == 'vcenter
522                   - data: vcenter
523           description: Choose this type of hypervisor if you run OpenStack in a vCenter
524             environment.
525           label: vCenter
526           restrictions:
527           - settings:common.libvirt_type.value != 'vcenter' or cluster:net_provider
528             == 'neutron'
529         weight: 30
530       metadata:
531         label: Common
532         weight: 30
533       nova_quota:
534         description: Quotas are used to limit CPU and memory usage for tenants. Enabling
535           quotas will increase load on the Nova database.
536         label: Nova quotas
537         type: checkbox
538         value: false
539         weight: 25
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
547         type: checkbox
548         value: false
549         weight: 60
550       use_cow_images:
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
555         type: checkbox
556         value: true
557         weight: 50
558     corosync:
559       group:
560         description: ''
561         label: Group
562         type: text
563         value: 226.94.1.1
564         weight: 10
565       metadata:
566         label: Corosync
567         restrictions:
568         - action: hide
569           condition: 'true'
570         weight: 50
571       port:
572         description: ''
573         label: Port
574         type: text
575         value: '12000'
576         weight: 20
577       verified:
578         description: Set True only if multicast is configured correctly on router.
579         label: Need to pass network verification.
580         type: checkbox
581         value: false
582         weight: 10
583     external_dns:
584       dns_list:
585         description: List of upstream DNS servers, separated by comma
586         label: DNS list
587         type: text
588         value: 8.8.8.8, 8.8.4.4
589         weight: 10
590       metadata:
591         label: Upstream DNS
592         weight: 90
593     external_ntp:
594       metadata:
595         label: Upstream NTP
596         weight: 100
597       ntp_list:
598         description: List of upstream NTP servers, separated by comma
599         label: NTP servers list
600         type: text
601         value: 0.pool.ntp.org, 1.pool.ntp.org
602         weight: 10
603     kernel_params:
604       kernel:
605         description: Default kernel parameters
606         label: Initial parameters
607         type: text
608         value: console=ttyS0,9600 console=tty0 rootdelay=90 nomodeset
609         weight: 45
610       metadata:
611         label: Kernel parameters
612         weight: 40
613     neutron_mellanox:
614       metadata:
615         enabled: true
616         label: Mellanox Neutron components
617         toggleable: false
618         weight: 50
619       plugin:
620         label: Mellanox drivers and SR-IOV plugin
621         type: radio
622         value: disabled
623         values:
624         - data: disabled
625           description: If selected, Mellanox drivers, Neutron and Cinder plugin will
626             not be installed.
627           label: Mellanox drivers and plugins disabled
628           restrictions:
629           - settings:storage.iser.value == true
630         - data: drivers_only
631           description: If selected, Mellanox Ethernet drivers will be installed to
632             support networking over Mellanox NIC. Mellanox Neutron plugin will not
633             be installed.
634           label: Install only Mellanox drivers
635           restrictions:
636           - settings:common.libvirt_type.value != 'kvm'
637         - data: ethernet
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
641           restrictions:
642           - settings:common.libvirt_type.value != 'kvm' or not (cluster:net_provider
643             == 'neutron' and networking_parameters:segmentation_type == 'vlan')
644         weight: 60
645       vf_num:
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
649         restrictions:
650         - settings:neutron_mellanox.plugin.value != 'ethernet'
651         type: text
652         value: '16'
653         weight: 70
654     nsx_plugin:
655       connector_type:
656         description: Default network transport type to use
657         label: NSX connector type
658         type: select
659         value: stt
660         values:
661         - data: gre
662           label: GRE
663         - data: ipsec_gre
664           label: GRE over IPSec
665         - data: stt
666           label: STT
667         - data: ipsec_stt
668           label: STT over IPSec
669         - data: bridge
670           label: Bridge
671         weight: 80
672       l3_gw_service_uuid:
673         description: UUID for the default L3 gateway service to use with this cluster
674         label: L3 service UUID
675         regex:
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}'
678         type: text
679         value: ''
680         weight: 50
681       metadata:
682         enabled: false
683         label: VMware NSX
684         restrictions:
685         - action: hide
686           condition: cluster:net_provider != 'neutron' or networking_parameters:net_l23_provider
687             != 'nsx'
688         weight: 20
689       nsx_controllers:
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
693         regex:
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}))?)*$
699         type: text
700         value: ''
701         weight: 60
702       nsx_password:
703         description: Password for Administrator
704         label: NSX password
705         regex:
706           error: Empty password
707           source: \S
708         type: password
709         value: ''
710         weight: 30
711       nsx_username:
712         description: NSX administrator's username
713         label: NSX username
714         regex:
715           error: Empty username
716           source: \S
717         type: text
718         value: admin
719         weight: 20
720       packages_url:
721         description: URL to NSX specific packages
722         label: URL to NSX bits
723         regex:
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][
728 \d]{0,3}))?(/.*)?$
729         type: text
730         value: ''
731         weight: 70
732       replication_mode:
733         description: ''
734         label: NSX cluster has Service nodes
735         type: checkbox
736         value: true
737         weight: 90
738       transport_zone_uuid:
739         description: UUID of the pre-existing default NSX Transport zone
740         label: Transport zone UUID
741         regex:
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}'
744         type: text
745         value: ''
746         weight: 40
747     provision:
748       metadata:
749         label: Provision
750         restrictions:
751         - action: hide
752           condition: not ('experimental' in version:feature_groups)
753         weight: 80
754       method:
755         description: Which provision method to use for this cluster.
756         label: Provision method
757         type: radio
758         value: cobbler
759         values:
760         - data: image
761           description: Copying pre-built images on a disk.
762           label: Image
763         - data: cobbler
764           description: Install from scratch using anaconda or debian-installer.
765           label: Classic (use anaconda or debian-installer)
766     public_network_assignment:
767       assign_to_all_nodes:
768         description: When disabled, public network will be assigned to controllers
769           and zabbix-server only
770         label: Assign public network to all nodes
771         type: checkbox
772         value: false
773         weight: 10
774       metadata:
775         label: Public network assignment
776         restrictions:
777         - action: hide
778           condition: cluster:net_provider != 'neutron'
779         weight: 50
780     storage:
781       ephemeral_ceph:
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)
787         restrictions:
788         - settings:common.libvirt_type.value == 'vcenter'
789         type: checkbox
790         value: false
791         weight: 75
792       images_ceph:
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)
796         type: checkbox
797         value: false
798         weight: 30
799       images_vcenter:
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)
803         restrictions:
804         - settings:common.libvirt_type.value != 'vcenter'
805         type: checkbox
806         value: false
807         weight: 35
808       iser:
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)
813         restrictions:
814         - settings:storage.volumes_lvm.value != true or settings:common.libvirt_type.value
815           != 'kvm'
816         type: checkbox
817         value: false
818         weight: 11
819       metadata:
820         label: Storage
821         weight: 60
822       objects_ceph:
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)
826         restrictions:
827         - settings:storage.images_ceph.value == false
828         type: checkbox
829         value: false
830         weight: 80
831       osd_pool_size:
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 -
834           Ceph OSD' nodes.
835         label: Ceph object replication factor
836         regex:
837           error: Invalid number
838           source: ^[1-9]\d*$
839         restrictions:
840         - settings:common.libvirt_type.value == 'vcenter'
841         type: text
842         value: '2'
843         weight: 85
844       vc_datacenter:
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
848         regex:
849           error: Empty datacenter
850           source: \S
851         restrictions:
852         - action: hide
853           condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
854 ype.value
855             != 'vcenter'
856         type: text
857         value: ''
858         weight: 65
859       vc_datastore:
860         description: Datastore associated with the datacenter.
861         label: Datastore name
862         regex:
863           error: Empty datastore
864          source: \S
865         restrictions:
866         - action: hide
867           condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
868 ype.value
869             != 'vcenter'
870         type: text
871         value: ''
872         weight: 60
873       vc_host:
874         description: IP Address of vCenter/ESXi
875         label: vCenter/ESXi IP
876         regex:
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
879 [0-4][\d]|25[0-5])$
880         restrictions:
881         - action: hide
882           condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
883 ype.value
884             != 'vcenter'
885         type: text
886         value: ''
887         weight: 45
888       vc_image_dir:
889         description: The name of the directory where the glance images will be stored
890           in the VMware datastore.
891         label: Datastore Images directory
892         regex:
893           error: Empty images directory
894           source: \S
895         restrictions:
896         - action: hide
897           condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
898 ype.value
899             != 'vcenter'
900         type: text
901         value: /openstack_glance
902         weight: 70
903       vc_password:
904         description: vCenter/ESXi admin password
905         label: Password
906         regex:
907           error: Empty password
908           source: \S
909         restrictions:
910         - action: hide
911           condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
912 ype.value
913             != 'vcenter'
914         type: password
915         value: ''
916         weight: 55
917       vc_user:
918         description: vCenter/ESXi admin username
919         label: Username
920         regex:
921           error: Empty username
922           source: \S
923         restrictions:
924         - action: hide
925           condition: settings:storage.images_vcenter.value == false or settings:common.libvirt_t
926 ype.value
927             != 'vcenter'
928         type: text
929         value: ''
930         weight: 50
931       volumes_ceph:
932         description: Configures Cinder to store volumes in Ceph RBD images.
933         label: Ceph RBD for volumes (Cinder)
934         restrictions:
935         - settings:storage.volumes_lvm.value == true or settings:common.libvirt_type.value
936           == 'vcenter'
937         type: checkbox
938         value: false
939         weight: 20
940       volumes_lvm:
941         description: Requires at least one Storage - Cinder LVM node.
942         label: Cinder LVM over iSCSI for volumes
943         restrictions:
944         - settings:storage.volumes_ceph.value == true
945         type: checkbox
946         value: false
947         weight: 10
948       volumes_vmdk:
949         description: Configures Cinder to store volumes via VMware vCenter.
950         label: VMware vCenter for volumes (Cinder)
951         restrictions:
952         - settings:common.libvirt_type.value != 'vcenter' or settings:storage.volumes_lvm.value
953           == true
954         type: checkbox
955         value: false
956         weight: 15
957     syslog:
958       metadata:
959         label: Syslog
960         weight: 50
961       syslog_port:
962         description: Remote syslog port
963         label: Port
964         regex:
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
967 553[0-5])$
968         type: text
969         value: '514'
970         weight: 20
971       syslog_server:
972         description: Remote syslog hostname
973         label: Hostname
974         type: text
975         value: ''
976         weight: 10
977       syslog_transport:
978         label: Syslog transport protocol
979         type: radio
980         value: tcp
981         values:
982         - data: udp
983           description: ''
984           label: UDP
985         - data: tcp
986           description: ''
987           label: TCP
988         weight: 30
989     vcenter:
990       cluster:
991         description: vCenter cluster name. If you have multiple clusters, use comma
992           to separate names
993         label: Cluster
994         regex:
995           error: Invalid cluster list
996           source: ^([^,\ ]+([\ ]*[^,\ ])*)(,[^,\ ]+([\ ]*[^,\ ])*)*$
997         type: text
998         value: ''
999         weight: 40
1000       datastore_regex:
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
1005         regex:
1006           error: Invalid datastore regexp
1007           source: ^(\S.*\S|\S|)$
1008         type: text
1009         value: ''
1010         weight: 50
1011       host_ip:
1012         description: IP Address of vCenter
1013         label: vCenter IP
1014         regex:
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
1017 [0-4][\d]|25[0-5])$
1018         type: text
1019         value: ''
1020         weight: 10
1021       metadata:
1022         label: vCenter
1023         restrictions:
1024         - action: hide
1025           condition: settings:common.libvirt_type.value != 'vcenter'
1026         weight: 20
1027       use_vcenter:
1028         description: ''
1029         label: ''
1030         type: hidden
1031         value: true
1032         weight: 5
1033       vc_password:
1034         description: vCenter admin password
1035         label: Password
1036         regex:
1037           error: Empty password
1038           source: \S
1039         type: password
1040         value: admin
1041         weight: 30
1042       vc_user:
1043         description: vCenter admin username
1044         label: Username
1045         regex:
1046           error: Empty username
1047           source: \S
1048         type: text
1049         value: admin
1050         weight: 20
1051       vlan_interface:
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
1055         restrictions:
1056         - action: hide
1057           condition: cluster:net_provider != 'nova_network' or networking_parameters:net_manager
1058             != 'VlanManager'
1059         type: text
1060         value: ''
1061         weight: 60
1062     zabbix:
1063       metadata:
1064         label: Zabbix Access
1065         restrictions:
1066         - action: hide
1067           condition: not ('experimental' in version:feature_groups)
1068         weight: 70
1069       password:
1070         description: Password for Zabbix Administrator
1071         label: password
1072         type: password
1073         value: zabbix
1074         weight: 20
1075       username:
1076         description: Username for Zabbix Administrator
1077         label: username
1078         type: text
1079         value: admin
1080         weight: 10
1081
1082