Fuel UI
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

openstack.yaml 88KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402
  1. ---
  2. - &base_release
  3. model: "nailgun.release"
  4. fields:
  5. state: "available"
  6. modes_metadata:
  7. ha_compact:
  8. description: "This configuration Deploys OpenStack ready for high availability (HA). Controller services are prepared for HA by setting up a base MySQL/Galera, RabbitMQ and HAProxy so that additional controllers can be deployed NOW, or scaled out LATER. 3 or more controllers are required for a true HA environment."
  9. roles_metadata:
  10. controller:
  11. name: "Controller"
  12. description: "The Controller initiates orchestration activities and provides an external API. Other components like Glance (image storage), Keystone (identity management), Horizon (OpenStack dashboard) and Nova-Scheduler are installed on the controller as well."
  13. weight: 10
  14. conflicts:
  15. - compute
  16. update_required:
  17. - compute
  18. - cinder
  19. public_ip_required: true
  20. public_for_dvr_required: true
  21. group: "base"
  22. limits:
  23. min: 1
  24. recommended: 3
  25. overrides:
  26. - condition: "settings:neutron_advanced_configuration.neutron_l3_ha.value == true"
  27. min: 2
  28. message: "Neutron L3 HA requires at least 2 Controller nodes to function properly."
  29. tags:
  30. - controller
  31. - rabbitmq
  32. - database
  33. - keystone
  34. - neutron
  35. compute:
  36. name: "Compute"
  37. description: "A Compute node creates, manages, and terminates virtual machine instances."
  38. weight: 20
  39. public_for_dvr_required: true
  40. group: "compute"
  41. limits:
  42. recommended: 1
  43. fault_tolerance: "2%"
  44. tags:
  45. - compute
  46. cinder:
  47. # NOTE: naming, see https://bugs.launchpad.net/fuel/+bug/1383224
  48. name: "Cinder"
  49. description: "Cinder provides scheduling of block storage resources, typically delivered over iSCSI and other compatible backend storage systems. Block storage can be used for database storage, expandable file systems, or to provide a server with access to raw block level devices."
  50. weight: 30
  51. group: "storage"
  52. limits:
  53. recommended: 1
  54. restrictions:
  55. - condition: "settings:storage.volumes_lvm.value == false"
  56. message: "Cinder LVM should be enabled in the environment settings."
  57. # NOTE: https://bugs.launchpad.net/fuel/+bug/1372914 - Prohibit possibility of adding cinder nodes to an environment with Ceph RBD
  58. - condition: "settings:storage.volumes_ceph.value == true"
  59. message: "Ceph RBD cannot be used with Cinder"
  60. tags:
  61. - cinder
  62. cinder-block-device:
  63. name: 'Cinder Block Device'
  64. description: 'Host node for Cinder Block Devices.'
  65. public_ip_required: false
  66. weight: 35
  67. group: "storage"
  68. conflicts:
  69. - controller
  70. - cinder
  71. - ceph-osd
  72. restrictions:
  73. - condition: "settings:storage.volumes_block_device.value == false"
  74. message: "Cinder Block Device driver should be enabled in the environment settings."
  75. - condition: "settings:storage.volumes_ceph.value == true"
  76. message: "Ceph RBD cannot be used with Cinder Block Device"
  77. tags:
  78. - cinder-block-device
  79. ceph-osd:
  80. name: "Ceph OSD"
  81. description: "Ceph storage can be configured to provide storage for block volumes (Cinder), images (Glance) and ephemeral instance storage (Nova). It can also provide object storage through the S3 and Swift API (See settings to enable each)."
  82. weight: 50
  83. group: "storage"
  84. limits:
  85. min: "settings:storage.osd_pool_size.value"
  86. restrictions:
  87. - condition: "settings:storage.volumes_ceph.value == false and settings:storage.images_ceph.value == false and settings:storage.ephemeral_ceph.value == false and settings:storage.objects_ceph.value == false"
  88. message: "Ceph should be enabled in the environment settings."
  89. update_once:
  90. - controller
  91. tags:
  92. - ceph-osd
  93. mongo:
  94. name: "Telemetry - MongoDB"
  95. description: "A feature-complete and recommended database for storage of metering data from OpenStack Telemetry (Ceilometer)."
  96. weight: 60
  97. group: "other"
  98. conflicts:
  99. - compute
  100. - ceph-osd
  101. limits:
  102. min: 1
  103. overrides:
  104. - condition: "cluster:mode != 'ha_compact'"
  105. max: 1
  106. message: "At most 1 MongoDB node can be added for non-HA deployment"
  107. - condition: "cluster:mode == 'ha_compact'"
  108. recommended: 3
  109. message: "At least 3 MongoDB nodes are recommended for HA deployment."
  110. restrictions:
  111. - condition: "settings:additional_components.ceilometer.value == false"
  112. message: "Ceilometer should be enabled in the environment settings."
  113. - condition: "settings:additional_components.mongo.value == true"
  114. message: "You are already using external MongoDB."
  115. tags:
  116. - mongo
  117. base-os:
  118. name: "Operating System"
  119. description: "Install base Operating System without additional packages and configuration."
  120. weight: 70
  121. group: "other"
  122. tags:
  123. - base-os
  124. virt:
  125. name: "Virtual"
  126. description: "ADVANCED: Make available possibilities to spawn vms on this node that can be assign as a normal nodes."
  127. weight: 80
  128. group: "compute"
  129. public_ip_required: true
  130. conflicts:
  131. - controller
  132. - base-os
  133. restrictions:
  134. - condition: "not ('advanced' in version:feature_groups)"
  135. action: "hide"
  136. message: "Advanced feature should be enabled in feature groups"
  137. tags:
  138. - virt
  139. ironic:
  140. name: "Ironic"
  141. description: "Ironic conductor."
  142. weight: 100
  143. group: "compute"
  144. limits:
  145. min: 1
  146. recommended: 3
  147. conflicts:
  148. - compute
  149. restrictions:
  150. - condition: "settings:additional_components.ironic.value == false"
  151. message: "Ironic should be enabled in the environment settings."
  152. tags:
  153. - ironic
  154. tags_metadata:
  155. controller:
  156. has_primary: true
  157. rabbitmq:
  158. has_primary: true
  159. database:
  160. has_primary: true
  161. keystone:
  162. has_primary: true
  163. neutron:
  164. has_primary: true
  165. compute:
  166. has_primary: false
  167. cinder:
  168. has_primary: false
  169. cinder-block-device:
  170. has_primary: false
  171. ceph-osd:
  172. has_primary: false
  173. mongo:
  174. has_primary: true
  175. base-os:
  176. has_primary: false
  177. virt:
  178. has_primary: false
  179. ironic:
  180. has_primary: false
  181. network_roles_metadata:
  182. -
  183. id: "keystone/api"
  184. default_mapping: "management"
  185. properties: &default_network_roles_metadata_properties
  186. subnet: true
  187. gateway: false
  188. vip: []
  189. -
  190. id: "admin/pxe"
  191. default_mapping: "fuelweb_admin"
  192. properties:
  193. subnet: true
  194. gateway: true
  195. vip: []
  196. -
  197. id: "swift/api"
  198. default_mapping: "management"
  199. properties: *default_network_roles_metadata_properties
  200. -
  201. id: "neutron/api"
  202. default_mapping: "management"
  203. properties: *default_network_roles_metadata_properties
  204. -
  205. id: "sahara/api"
  206. default_mapping: "management"
  207. properties: *default_network_roles_metadata_properties
  208. -
  209. id: "aodh/api"
  210. default_mapping: "management"
  211. properties: *default_network_roles_metadata_properties
  212. -
  213. id: "ceilometer/api"
  214. default_mapping: "management"
  215. properties: *default_network_roles_metadata_properties
  216. -
  217. id: "cinder/api"
  218. default_mapping: "management"
  219. properties: *default_network_roles_metadata_properties
  220. -
  221. id: "glance/api"
  222. default_mapping: "management"
  223. properties: *default_network_roles_metadata_properties
  224. -
  225. id: "glance/glare"
  226. default_mapping: "management"
  227. properties: *default_network_roles_metadata_properties
  228. -
  229. id: "heat/api"
  230. default_mapping: "management"
  231. properties: *default_network_roles_metadata_properties
  232. -
  233. id: "nova/api"
  234. default_mapping: "management"
  235. properties: *default_network_roles_metadata_properties
  236. -
  237. id: "murano/api"
  238. default_mapping: "management"
  239. properties: *default_network_roles_metadata_properties
  240. -
  241. id: "murano/cfapi"
  242. default_mapping: "management"
  243. properties: *default_network_roles_metadata_properties
  244. -
  245. id: "horizon"
  246. default_mapping: "management"
  247. properties: *default_network_roles_metadata_properties
  248. -
  249. id: "mgmt/memcache"
  250. default_mapping: "management"
  251. properties: *default_network_roles_metadata_properties
  252. -
  253. id: "mgmt/database"
  254. default_mapping: "management"
  255. properties: *default_network_roles_metadata_properties
  256. -
  257. id: "mgmt/messaging"
  258. default_mapping: "management"
  259. properties: *default_network_roles_metadata_properties
  260. -
  261. id: "mgmt/corosync"
  262. default_mapping: "management"
  263. properties: *default_network_roles_metadata_properties
  264. -
  265. id: "mgmt/vip"
  266. default_mapping: "management"
  267. properties:
  268. subnet: true
  269. gateway: false
  270. vip:
  271. -
  272. name: "vrouter"
  273. namespace: "vrouter"
  274. alias: "management_vrouter_vip"
  275. -
  276. name: "management"
  277. namespace: "haproxy"
  278. alias: "management_vip"
  279. -
  280. id: "public/vip"
  281. default_mapping: "public"
  282. properties:
  283. subnet: true
  284. gateway: true
  285. vip:
  286. -
  287. name: "vrouter_pub"
  288. namespace: "vrouter"
  289. alias: "public_vrouter_vip"
  290. vendor_specific:
  291. iptables_rules:
  292. ns_start:
  293. - "iptables -t nat -A POSTROUTING -o <%INT%> -j MASQUERADE"
  294. ns_stop:
  295. - "iptables -t nat -D POSTROUTING -o <%INT%> -j MASQUERADE"
  296. -
  297. name: "public"
  298. namespace: "haproxy"
  299. alias: "public_vip"
  300. -
  301. id: "neutron/private"
  302. default_mapping: "private"
  303. properties:
  304. subnet: false
  305. gateway: false
  306. vip: []
  307. -
  308. id: "neutron/mesh"
  309. default_mapping: "private"
  310. properties: *default_network_roles_metadata_properties
  311. -
  312. id: "neutron/floating"
  313. default_mapping: "public"
  314. properties:
  315. subnet: false
  316. gateway: false
  317. vip: []
  318. -
  319. id: "swift/replication"
  320. default_mapping: "storage"
  321. properties: *default_network_roles_metadata_properties
  322. -
  323. id: "ceph/public"
  324. default_mapping: "storage"
  325. properties: *default_network_roles_metadata_properties
  326. -
  327. id: "ceph/radosgw"
  328. default_mapping: "public"
  329. properties: *default_network_roles_metadata_properties
  330. -
  331. id: "ceph/replication"
  332. default_mapping: "storage"
  333. properties: *default_network_roles_metadata_properties
  334. -
  335. id: "cinder/iscsi"
  336. default_mapping: "storage"
  337. properties: *default_network_roles_metadata_properties
  338. -
  339. id: "mongo/db"
  340. default_mapping: "management"
  341. properties: *default_network_roles_metadata_properties
  342. -
  343. id: "fw-admin"
  344. default_mapping: "fuelweb_admin"
  345. properties:
  346. subnet: true
  347. gateway: true
  348. vip: []
  349. -
  350. id: "management"
  351. default_mapping: "management"
  352. properties: *default_network_roles_metadata_properties
  353. -
  354. id: "ex"
  355. default_mapping: "public"
  356. properties:
  357. subnet: true
  358. gateway: true
  359. vip: []
  360. -
  361. id: "storage"
  362. default_mapping: "storage"
  363. properties: *default_network_roles_metadata_properties
  364. -
  365. id: "nova/migration"
  366. default_mapping: "management"
  367. properties: *default_network_roles_metadata_properties
  368. -
  369. id: "ironic/api"
  370. default_mapping: "management"
  371. properties: *default_network_roles_metadata_properties
  372. -
  373. id: "ironic/baremetal"
  374. default_mapping: "baremetal"
  375. properties:
  376. subnet: true
  377. gateway: false
  378. vip:
  379. -
  380. name: "baremetal"
  381. namespace: "haproxy"
  382. alias: "baremetal_vip"
  383. vendor_specific:
  384. iptables_rules:
  385. ns_start:
  386. - "iptables -A INPUT -i <%INT%> -s <%CIDR%> -d <%IP%> -p tcp -m multiport --dports 6385,8080 -m state --state NEW -j ACCEPT"
  387. - "iptables -A INPUT -i <%INT%> -s <%CIDR%> -d <%IP%> -m state --state ESTABLISHED,RELATED -j ACCEPT"
  388. - "iptables -A INPUT -i <%INT%> -j DROP"
  389. ns_stop:
  390. - "iptables -D INPUT -i <%INT%> -s <%CIDR%> -d <%IP%> -p tcp -m multiport --dports 6385,8080 -m state --state NEW -j ACCEPT"
  391. - "iptables -D INPUT -i <%INT%> -s <%CIDR%> -d <%IP%> -m state --state ESTABLISHED,RELATED -j ACCEPT"
  392. - "iptables -D INPUT -i <%INT%> -j DROP"
  393. networks_metadata:
  394. bonding:
  395. availability:
  396. - dpdkovs: "'experimental' in version:feature_groups and interface:pxe == false and
  397. nic_attributes:dpdk.enabled.value and not nic_attributes:sriov.enabled.value"
  398. - linux: "not nic_attributes:sriov.enabled.value"
  399. properties:
  400. linux:
  401. mode:
  402. - values: ["balance-rr", "active-backup"]
  403. - values: ["802.3ad"]
  404. condition: "'experimental' in version:feature_groups or
  405. interface:pxe == false"
  406. - values: ["balance-xor", "broadcast", "balance-tlb", "balance-alb"]
  407. condition: "'experimental' in version:feature_groups"
  408. xmit_hash_policy:
  409. - values: ["layer2", "layer2+3", "layer3+4", "encap2+3", "encap3+4"]
  410. for_modes: ["802.3ad", "balance-xor", "balance-tlb", "balance-alb"]
  411. lacp_rate:
  412. - values: ["slow", "fast"]
  413. for_modes: ["802.3ad"]
  414. dpdkovs:
  415. mode:
  416. - values: ["active-backup", "balance-slb", "balance-tcp"]
  417. lacp:
  418. - values: ["active", "passive"]
  419. for_modes: ["balance-tcp"]
  420. lacp_rate:
  421. - values: ["slow", "fast"]
  422. for_modes: ["balance-tcp"]
  423. xmit_hash_policy:
  424. - values: ["layer2", "layer2+3", "layer3+4", "encap2+3", "encap3+4"]
  425. for_modes: ["balance-tcp"]
  426. nova_network:
  427. networks:
  428. - name: "public"
  429. cidr: "172.16.0.0/24"
  430. gateway: "172.16.0.1"
  431. ip_range: ["172.16.0.2", "172.16.0.127"]
  432. vlan_start: null
  433. use_gateway: true
  434. notation: "ip_ranges"
  435. render_type: null
  436. render_addr_mask: "public"
  437. map_priority: 1
  438. configurable: true
  439. vips: ["haproxy", "vrouter"]
  440. - name: "management"
  441. cidr: "192.168.0.0/24"
  442. vlan_start: 101
  443. use_gateway: false
  444. notation: "cidr"
  445. render_type: "cidr"
  446. render_addr_mask: "internal"
  447. map_priority: 2
  448. configurable: true
  449. vips: ["haproxy", "vrouter"]
  450. - name: "storage"
  451. cidr: "192.168.1.0/24"
  452. vlan_start: 102
  453. use_gateway: false
  454. notation: "cidr"
  455. render_type: "cidr"
  456. render_addr_mask: "storage"
  457. map_priority: 2
  458. configurable: true
  459. - name: "fixed"
  460. vlan_start: null
  461. use_gateway: false
  462. notation: null
  463. render_type: null
  464. render_addr_mask: null
  465. map_priority: 2
  466. ext_net_data: ["fixed_networks_vlan_start", "fixed_networks_amount"]
  467. configurable: false
  468. config:
  469. net_manager: "FlatDHCPManager"
  470. fixed_networks_cidr: "10.0.0.0/16"
  471. fixed_networks_vlan_start: 103
  472. fixed_network_size: 256
  473. fixed_networks_amount: 1
  474. floating_ranges: [["172.16.0.128", "172.16.0.254"]]
  475. neutron:
  476. networks:
  477. - name: "public"
  478. cidr: "172.16.0.0/24"
  479. ip_range: ["172.16.0.2", "172.16.0.126"]
  480. vlan_start: null
  481. use_gateway: true
  482. notation: "ip_ranges"
  483. render_type: null
  484. render_addr_mask: "public"
  485. map_priority: 1
  486. configurable: true
  487. floating_range_var: "floating_ranges"
  488. vips: ["haproxy", "vrouter"]
  489. - name: "management"
  490. cidr: "192.168.0.0/24"
  491. vlan_start: 101
  492. use_gateway: false
  493. notation: "cidr"
  494. render_type: "cidr"
  495. render_addr_mask: "internal"
  496. map_priority: 2
  497. configurable: true
  498. vips: ["haproxy", "vrouter"]
  499. - name: "storage"
  500. cidr: "192.168.1.0/24"
  501. vlan_start: 102
  502. use_gateway: false
  503. notation: "cidr"
  504. render_type: "cidr"
  505. render_addr_mask: "storage"
  506. map_priority: 2
  507. configurable: true
  508. - name: "private"
  509. seg_type: "vlan"
  510. vlan_start: null
  511. use_gateway: false
  512. notation: null
  513. render_type: null
  514. render_addr_mask: null
  515. map_priority: 2
  516. neutron_vlan_range: true
  517. configurable: false
  518. - name: "private"
  519. seg_type: "gre"
  520. cidr: "192.168.2.0/24"
  521. vlan_start: 103
  522. use_gateway: false
  523. notation: "cidr"
  524. render_type: "cidr"
  525. render_addr_mask: null
  526. map_priority: 2
  527. configurable: true
  528. - name: "private"
  529. seg_type: "tun"
  530. cidr: "192.168.2.0/24"
  531. vlan_start: 103
  532. use_gateway: false
  533. notation: "cidr"
  534. render_type: "cidr"
  535. render_addr_mask: null
  536. map_priority: 2
  537. configurable: true
  538. - name: "baremetal"
  539. cidr: "192.168.3.0/24"
  540. ip_range: ["192.168.3.2", "192.168.3.50"]
  541. vlan_start: 104
  542. use_gateway: false
  543. notation: "ip_ranges"
  544. render_type: null
  545. map_priority: 2
  546. configurable: true
  547. restrictions:
  548. - condition: "settings:additional_components.ironic.value == false"
  549. config:
  550. vlan_range: [1000, 1030]
  551. gre_id_range: [2, 65535]
  552. base_mac: "fa:16:3e:00:00:00"
  553. internal_name: "admin_internal_net"
  554. internal_cidr: "192.168.111.0/24"
  555. internal_gateway: "192.168.111.1"
  556. floating_name: "admin_floating_net"
  557. floating_ranges: [["172.16.0.130", "172.16.0.254"]]
  558. baremetal_gateway: "192.168.3.51"
  559. baremetal_range: ["192.168.3.52", "192.168.3.254"]
  560. parameters:
  561. amqp:
  562. provider: "rabbitmq"
  563. username: null
  564. passwd: ""
  565. hosts: "hostname1:5672, hostname2:5672"
  566. database:
  567. provider: "mysql"
  568. port: "3306"
  569. database: null
  570. username: null
  571. passwd: ""
  572. keystone:
  573. admin_user: null
  574. admin_password: ""
  575. metadata:
  576. metadata_proxy_shared_secret: ""
  577. volumes_metadata:
  578. volumes_roles_mapping:
  579. controller:
  580. - {allocate_size: "min", id: "os"}
  581. - {allocate_size: "min", id: "logs"}
  582. - {allocate_size: "all", id: "image"}
  583. - {allocate_size: "min", id: "mysql"}
  584. - {allocate_size: "min", id: "horizon"}
  585. compute:
  586. - {allocate_size: "min", id: "os"}
  587. - {allocate_size: "all", id: "vm"}
  588. cinder:
  589. - {allocate_size: "min", id: "os"}
  590. - {allocate_size: "all", id: "cinder"}
  591. ceph-osd:
  592. - {allocate_size: "min", id: "os"}
  593. - {allocate_size: "min", id: "cephjournal"}
  594. - {allocate_size: "full-disk", id: "ceph"}
  595. cinder-block-device:
  596. - {allocate_size: "min", id: "os"}
  597. - {allocate_size: "full-disk", id: "cinder-block-device"}
  598. mongo:
  599. - {allocate_size: "min", id: "os"}
  600. - {allocate_size: "all", id: "mongo"}
  601. other:
  602. - {allocate_size: "all", id: "os"}
  603. # NOTE(eli): it's better to use entire disk
  604. # for OS, but currently we have a bug for
  605. # Ubuntu which doesn't allow to do that:
  606. # https://bugs.launchpad.net/fuel/+bug/1278964
  607. base-os:
  608. - {allocate_size: "min", id: "os"}
  609. virt:
  610. - {allocate_size: "min", id: "os"}
  611. - {allocate_size: "all", id: "vm"}
  612. ironic:
  613. - {allocate_size: "min", id: "os"}
  614. - {allocate_size: "min", id: "logs"}
  615. volumes:
  616. - id: "os"
  617. type: "vg"
  618. min_size: {generator: "calc_min_os_size"}
  619. label: "Base System"
  620. volumes:
  621. - mount: "/"
  622. type: "lv"
  623. name: "root"
  624. size: {generator: "calc_total_root_vg"}
  625. file_system: "ext4"
  626. - mount: "swap"
  627. type: "lv"
  628. name: "swap"
  629. size: {generator: "calc_swap_size"}
  630. file_system: "swap"
  631. - id: "logs"
  632. type: "vg"
  633. min_size:
  634. generator: "calc_gb_to_mb"
  635. generator_args: [10]
  636. label: "Logs"
  637. volumes:
  638. - mount: "/var/log"
  639. type: "lv"
  640. name: "log"
  641. size:
  642. generator: "calc_total_vg"
  643. generator_args: ["logs"]
  644. file_system: "ext4"
  645. - id: "mongo"
  646. type: "vg"
  647. label: "MongoDB"
  648. min_size: {generator: "calc_min_mongo_size"}
  649. volumes:
  650. - mount: "/var/lib/mongo"
  651. type: "lv"
  652. name: "mongodb"
  653. size:
  654. generator: "calc_total_vg"
  655. generator_args: ["mongo"]
  656. file_system: "ext4"
  657. - id: "ceph"
  658. type: "partition"
  659. min_size: {generator: "calc_min_ceph_size"}
  660. label: "Ceph"
  661. name: "Ceph"
  662. mount: "none"
  663. partition_guid: "4fbd7e29-9d25-41b8-afd0-062c0ceff05d"
  664. file_system: "none"
  665. - id: "cephjournal"
  666. type: "partition"
  667. min_size: {generator: "calc_min_ceph_journal_size"}
  668. name: "Ceph Journal"
  669. label: "Ceph Journal"
  670. mount: "none"
  671. partition_guid: "45b0969e-9b03-4f30-b4c6-b4b80ceff106"
  672. file_system: "none"
  673. - id: "mysql"
  674. type: "vg"
  675. min_size: {generator: "calc_min_mysql_size"}
  676. label: "Mysql Database"
  677. volumes:
  678. - mount: "/var/lib/mysql"
  679. type: "lv"
  680. name: "root"
  681. size:
  682. generator: "calc_total_vg"
  683. generator_args: ["mysql"]
  684. file_system: "ext4"
  685. - id: "vm"
  686. type: "vg"
  687. min_size: {generator: "calc_min_vm_size"}
  688. label: "Virtual Storage"
  689. volumes:
  690. - mount: "/var/lib/nova"
  691. type: "lv"
  692. name: "nova"
  693. size:
  694. generator: "calc_total_vg"
  695. generator_args: ["vm"]
  696. file_system: "xfs"
  697. - id: "image"
  698. type: "vg"
  699. min_size: {generator: "calc_min_glance_size"}
  700. label: "Image Storage"
  701. volumes:
  702. - mount: "/var/lib/glance"
  703. type: "lv"
  704. name: "glance"
  705. size:
  706. generator: "calc_total_vg"
  707. generator_args: ["image"]
  708. file_system: "xfs"
  709. - id: "horizon"
  710. type: "vg"
  711. min_size:
  712. generator: "calc_gb_to_mb"
  713. generator_args: [11]
  714. label: "Horizon Temp Storage"
  715. volumes:
  716. - mount: "/var/lib/horizon"
  717. type: "lv"
  718. name: "horizontmp"
  719. size:
  720. generator: "calc_total_vg"
  721. generator_args: ["horizon"]
  722. file_system: "xfs"
  723. - id: "cinder"
  724. type: "vg"
  725. label: "Cinder"
  726. min_size: {generator: "calc_min_cinder_size"}
  727. volumes: []
  728. - id: "cinder-block-device"
  729. type: "vg"
  730. label: "Cinder Block Device"
  731. min_size: { generator: "calc_min_cinder_size" }
  732. mount: "none"
  733. volumes: []
  734. rule_to_pick_boot_disk:
  735. - type: "exclude_disks_by_name"
  736. regex: "^nvme"
  737. description: "NVMe drives should be skipped as accessing such drives during the boot typically requires using UEFI which is still not supported by fuel-agent (it always installs BIOS variant of grub). grub bug (http://savannah.gnu.org/bugs/?41883)"
  738. - type: "pick_root_disk_if_disk_name_match"
  739. regex: "^md"
  740. root_mount: "/"
  741. description: "If we have /root on fake raid, then /boot partition should land on to it too. We can't proceed with grub-install otherwise."
  742. attributes_metadata:
  743. editable:
  744. access:
  745. metadata:
  746. label: "OpenStack Access"
  747. weight: 10
  748. group: "general"
  749. user:
  750. value: "admin"
  751. label: "Username"
  752. description: "Username for Administrator"
  753. weight: 10
  754. type: "text"
  755. regex:
  756. source: &user_tenant_blacklist '^(?!services$)(?!nova$)(?!glance$)(?!keystone$)(?!neutron$)(?!cinder$)(?!swift$)(?!ceph$)(?!ironic$)(?![Gg]uest$)(?!.* +.*$).+'
  757. error: "Invalid username"
  758. email:
  759. value: "admin@localhost"
  760. label: "Email"
  761. description: "Email address for Administrator"
  762. weight: 40
  763. type: "text"
  764. regex:
  765. source: "^\\S+@\\S+$"
  766. error: "Invalid email"
  767. tenant:
  768. value: "admin"
  769. label: "Tenant"
  770. description: "Tenant (project) name for Administrator"
  771. weight: 30
  772. type: "text"
  773. regex:
  774. source: *user_tenant_blacklist
  775. error: "Invalid tenant name"
  776. password:
  777. value: "admin"
  778. label: "Password"
  779. description: "Password for Administrator"
  780. weight: 20
  781. type: "password"
  782. regex:
  783. source: &non_empty_string '\S'
  784. error: "Empty password"
  785. operator_user:
  786. metadata:
  787. label: "Operating System Access"
  788. weight: 15
  789. group: "general"
  790. name:
  791. label: "Username"
  792. description: "Username for operator user"
  793. weight: 50
  794. type: 'text'
  795. value: 'fueladmin'
  796. regex:
  797. source: *non_empty_string
  798. error: "Empty username"
  799. password:
  800. label: "Password"
  801. description: "Password for operator user"
  802. weight: 60
  803. type: 'password'
  804. value:
  805. generator: 'password'
  806. regex:
  807. source: *non_empty_string
  808. error: "Empty password"
  809. homedir:
  810. label: "Home directory"
  811. description: "Home directory for operator user"
  812. weight: 70
  813. type: 'text'
  814. value: '/home/fueladmin'
  815. regex:
  816. source: '^/\S'
  817. error: "Invalid path"
  818. authkeys:
  819. label: "Authorized SSH keys"
  820. description: "Public SSH keys to include to operator user's authorized keys, one per line."
  821. weight: 80
  822. type: 'textarea'
  823. value: ''
  824. sudo:
  825. label: "Sudoers configuration"
  826. description: "Sudoers configuration directives for operator user, one per line."
  827. weight: 90
  828. type: 'textarea'
  829. value: 'ALL=(ALL) NOPASSWD: ALL'
  830. service_user:
  831. metadata:
  832. label: "Service user account"
  833. weight: 10
  834. group: "general"
  835. restrictions:
  836. - condition: "true"
  837. action: "hide"
  838. password:
  839. type: 'hidden'
  840. value:
  841. generator: 'password'
  842. name:
  843. type: 'hidden'
  844. value: 'fuel'
  845. sudo:
  846. type: 'hidden'
  847. value: 'ALL=(ALL) NOPASSWD: ALL'
  848. homedir:
  849. type: 'hidden'
  850. value: '/var/lib/fuel'
  851. root_password:
  852. type: 'hidden'
  853. value: 'r00tme'
  854. workloads_collector:
  855. metadata:
  856. label: "Workloads Collector User"
  857. weight: 10
  858. group: "general"
  859. restrictions:
  860. - condition: "true"
  861. action: "hide"
  862. enabled:
  863. value: true
  864. type: "hidden"
  865. user:
  866. value: "fuel_stats_user"
  867. type: "text"
  868. password:
  869. value:
  870. generator: "password"
  871. type: "password"
  872. tenant:
  873. value: "services"
  874. type: "text"
  875. murano_settings:
  876. metadata:
  877. label: "Murano Settings"
  878. weight: 20
  879. group: "openstack_services"
  880. restrictions:
  881. - condition: "settings:additional_components.murano.value == false"
  882. message: "Murano is not enabled on the Additional Components section"
  883. action: "hide"
  884. murano_repo_url:
  885. value: "http://storage.apps.openstack.org/"
  886. label: "Murano Repository URL"
  887. description: ""
  888. weight: 10
  889. type: "text"
  890. murano_glance_artifacts_plugin:
  891. value: true
  892. label: "Enable glance artifact repository"
  893. description: "If selected glance artifact repository will be enabled"
  894. weight: 40
  895. type: "checkbox"
  896. external_mongo:
  897. metadata:
  898. label: "External MongoDB"
  899. weight: 30
  900. group: "openstack_services"
  901. restrictions:
  902. - condition: "settings:additional_components.mongo.value == false"
  903. message: "Ceilometer and MongoDB are not enabled on the Additional Components section"
  904. action: "hide"
  905. hosts_ip:
  906. value: ""
  907. label: "MongoDB hosts IP"
  908. description: "IP Addresses of MongoDB. Use comma to split IPs"
  909. weight: 30
  910. type: "text"
  911. regex:
  912. 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]?)$'
  913. error: "Invalid hosts ip sequence"
  914. mongo_user:
  915. value: "ceilometer"
  916. label: "Username"
  917. description: "Mongo database username"
  918. weight: 30
  919. type: "text"
  920. regex:
  921. source: '^\w+$'
  922. error: "Empty username"
  923. mongo_password:
  924. value: "ceilometer"
  925. label: "Password"
  926. description: "Mongo database password"
  927. weight: 30
  928. type: "password"
  929. regex:
  930. source: '^\S*$'
  931. error: "Password contains spaces"
  932. mongo_db_name:
  933. value: "ceilometer"
  934. label: "Database name"
  935. description: "Mongo database name"
  936. weight: 30
  937. type: "text"
  938. regex:
  939. source: '^\w+$'
  940. error: "Invalid database name"
  941. mongo_replset:
  942. value: ""
  943. label: "Replset"
  944. description: "Name for Mongo replication set"
  945. weight: 30
  946. type: "text"
  947. additional_components:
  948. metadata:
  949. label: "Additional Components"
  950. weight: 10
  951. group: "openstack_services"
  952. sahara:
  953. value: false
  954. label: "Install Sahara"
  955. description: "If selected, Sahara component will be installed"
  956. weight: 10
  957. type: "checkbox"
  958. murano:
  959. value: false
  960. label: "Install Murano"
  961. description: "If selected, Murano component will be installed"
  962. weight: 20
  963. type: "checkbox"
  964. murano-cfapi:
  965. value: false
  966. label: "Install Murano service broker for Cloud Foundry"
  967. description: "If selected, Murano service broker will be installed"
  968. weight: 30
  969. type: "checkbox"
  970. restrictions:
  971. - condition: "settings:additional_components.murano.value == false"
  972. message: "Murano should be enabled"
  973. - condition: "not ('experimental' in version:feature_groups)"
  974. action: "hide"
  975. heat:
  976. value: true
  977. label: ""
  978. description: ""
  979. weight: 50
  980. type: "hidden"
  981. ceilometer:
  982. value: false
  983. label: "Install Ceilometer and Aodh"
  984. description: "If selected, Ceilometer and Aodh components will be installed"
  985. weight: 60
  986. type: "checkbox"
  987. mongo:
  988. value: false
  989. label: "Use external Mongo DB"
  990. description: "If selected, You can use external Mongo DB as ceilometer backend"
  991. weight: 70
  992. type: "checkbox"
  993. restrictions:
  994. - "settings:additional_components.ceilometer.value == false": "External Mongo aims to be an external backend for Ceilometer. Without Ceilometer enabled, External Mongo is useless and should not be installed."
  995. ironic:
  996. value: false
  997. label: "Install Ironic"
  998. description: "If selected, Ironic component will be installed"
  999. weight: 80
  1000. type: "checkbox"
  1001. restrictions:
  1002. - "cluster:net_provider != 'neutron' or networking_parameters:segmentation_type != 'vlan'": "Ironic requires Neutron with VLAN segmentation."
  1003. - "settings:storage.images_ceph.value == true and settings:storage.objects_ceph.value == false": "Ironic requires Swift or RadosGW for Glance images."
  1004. common:
  1005. metadata:
  1006. label: "Common"
  1007. weight: 10
  1008. debug:
  1009. value: false
  1010. label: "OpenStack debug logging"
  1011. group: "logging"
  1012. description: "Debug logging mode provides more information, but requires more disk space."
  1013. weight: 20
  1014. type: "checkbox"
  1015. puppet_debug:
  1016. value: true
  1017. label: "Puppet debug logging"
  1018. group: "logging"
  1019. description: "Debug puppet logging mode provides more information, but requires more disk space."
  1020. weight: 20
  1021. type: "checkbox"
  1022. nova_quota:
  1023. value: false
  1024. label: "Nova quotas"
  1025. group: "compute"
  1026. description: "Quotas are used to limit CPU and memory usage for tenants. Enabling quotas will increase load on the Nova database."
  1027. weight: 30
  1028. type: "checkbox"
  1029. auto_assign_floating_ip:
  1030. value: false
  1031. label: "Auto assign floating IP"
  1032. group: "network"
  1033. description: "If selected, OpenStack will automatically assign a floating IP to a new instance"
  1034. weight: 40
  1035. type: "checkbox"
  1036. restrictions:
  1037. - condition: "cluster:net_provider == 'neutron'"
  1038. action: "hide"
  1039. run_ping_checker:
  1040. value: true
  1041. label: "Public Gateway is Available"
  1042. group: "network"
  1043. description: "Uncheck this box if the public gateway will not be available or will not respond to ICMP requests to the deployed cluster. If unchecked, the controllers will not take public gateway availability into account as part of the cluster health. If the cluster will not have internet access, you will need to make sure to provide proper offline mirrors for the deployment to succeed."
  1044. weight: 50
  1045. type: "checkbox"
  1046. libvirt_type:
  1047. value: "qemu"
  1048. values:
  1049. - data: "kvm"
  1050. label: "KVM"
  1051. description: "Choose this type of hypervisor if you run OpenStack on hardware"
  1052. - data: "qemu"
  1053. label: "QEMU"
  1054. description: "Choose this type of hypervisor if you run OpenStack on virtual hosts."
  1055. label: "Hypervisor type"
  1056. group: "compute"
  1057. weight: 30
  1058. type: "radio"
  1059. resume_guests_state_on_host_boot:
  1060. value: true
  1061. label: "Resume guests state on host boot"
  1062. group: "compute"
  1063. 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."
  1064. weight: 50
  1065. type: "checkbox"
  1066. use_cow_images:
  1067. value: true
  1068. label: "Use qcow format for images"
  1069. group: "storage"
  1070. 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."
  1071. weight: 60
  1072. type: "checkbox"
  1073. auth_key:
  1074. value: ""
  1075. # label: "Public Key"
  1076. # description: "Public key(s) to include in authorized_keys on deployed nodes"
  1077. group: "security"
  1078. weight: 70
  1079. type: "hidden"
  1080. task_deploy:
  1081. value: true
  1082. # label: "Enable task based deploy"
  1083. # description: "The new deployment engine based on cross-node dependencies for deployment tasks."
  1084. weight: 11
  1085. type: "hidden"
  1086. propagate_task_deploy:
  1087. value: false
  1088. label: "Propagate task based deployment."
  1089. description: "Enables adaptation of granular tasks for task deployment."
  1090. weight: 12
  1091. type: "checkbox"
  1092. security_groups:
  1093. value: "iptables_hybrid"
  1094. values:
  1095. - data: "openvswitch"
  1096. label: "Open vSwitch Firewall Driver"
  1097. description: "Choose this driver for OVS based security groups implementation. NOTE: Open vSwitch Firewall Driver requires kernel version >= 4.3 for non-dpdk case."
  1098. - data: "iptables_hybrid"
  1099. label: "Iptables-based Firewall Driver (No firewall for DPDK case)"
  1100. description: "Choose this driver for iptables/linux bridge based security groups implementation."
  1101. label: "Security Groups"
  1102. group: "security"
  1103. weight: 20
  1104. type: "radio"
  1105. public_network_assignment:
  1106. metadata:
  1107. weight: 10
  1108. label: "Public network assignment"
  1109. group: "network"
  1110. restrictions:
  1111. - condition: "cluster:net_provider != 'neutron'"
  1112. action: "hide"
  1113. assign_to_all_nodes:
  1114. value: false
  1115. label: "Assign public network to all nodes"
  1116. description: "When disabled, public network will be assigned to controllers only"
  1117. weight: 10
  1118. type: "checkbox"
  1119. neutron_advanced_configuration:
  1120. metadata:
  1121. weight: 20
  1122. label: "Neutron Advanced Configuration"
  1123. group: "network"
  1124. restrictions:
  1125. - condition: "cluster:net_provider != 'neutron'"
  1126. action: "hide"
  1127. neutron_l2_pop:
  1128. value: false
  1129. label: "Neutron L2 population"
  1130. description: "Enable L2 population mechanism in Neutron"
  1131. weight: 10
  1132. type: "checkbox"
  1133. restrictions:
  1134. - condition: "networking_parameters:segmentation_type == 'vlan'"
  1135. action: "hide"
  1136. neutron_dvr:
  1137. value: false
  1138. label: "Neutron DVR"
  1139. description: "Enable Distributed Virtual Routers in Neutron"
  1140. weight: 20
  1141. type: "checkbox"
  1142. restrictions:
  1143. - "networking_parameters:segmentation_type != 'vlan' and settings:neutron_advanced_configuration.neutron_l2_pop.value == false": "DVR requires L2 population to be enabled."
  1144. neutron_l3_ha:
  1145. value: false
  1146. label: "Neutron L3 HA"
  1147. description: |
  1148. Enable High Availability features for Virtual Routers in Neutron
  1149. Requires at least 2 Controller nodes to function properly
  1150. weight: 30
  1151. type: "checkbox"
  1152. restrictions:
  1153. - condition: "settings:neutron_advanced_configuration.neutron_dvr.value == true"
  1154. message: "Neutron DVR must be disabled in order to use Neutron L3 HA"
  1155. neutron_qos:
  1156. value: false
  1157. label: "Neutron QoS"
  1158. description: "Enable Neutron QoS advanced service plug-in"
  1159. weight: 40
  1160. type: "checkbox"
  1161. corosync:
  1162. metadata:
  1163. label: "Corosync"
  1164. weight: 50
  1165. group: "general"
  1166. restrictions:
  1167. - condition: "true"
  1168. action: "hide"
  1169. group:
  1170. value: "226.94.1.1"
  1171. label: "Group"
  1172. description: ""
  1173. weight: 10
  1174. type: "text"
  1175. port:
  1176. value: "12000"
  1177. label: "Port"
  1178. description: ""
  1179. weight: 20
  1180. type: "text"
  1181. verified:
  1182. value: false
  1183. label: "Need to pass network verification."
  1184. description: "Set True only if multicast is configured correctly on router."
  1185. weight: 10
  1186. type: "checkbox"
  1187. syslog:
  1188. metadata:
  1189. label: "Syslog"
  1190. weight: 50
  1191. group: "logging"
  1192. toggleable: true
  1193. enabled: false
  1194. syslog_transport:
  1195. value: "tcp"
  1196. values:
  1197. - data: "udp"
  1198. label: "UDP"
  1199. description: ""
  1200. - data: "tcp"
  1201. label: "TCP"
  1202. description: ""
  1203. label: "Syslog transport protocol"
  1204. weight: 30
  1205. type: "radio"
  1206. syslog_server:
  1207. value: ""
  1208. label: "Hostname"
  1209. description: "Remote syslog hostname"
  1210. weight: 10
  1211. type: "text"
  1212. regex:
  1213. source: &ipv4_or_hostname_regex '^[a-zA-Z\d]+[-\.\da-zA-Z]*$'
  1214. error: "Invalid hostname"
  1215. syslog_port:
  1216. value: "514"
  1217. label: "Port"
  1218. description: "Remote syslog port"
  1219. weight: 20
  1220. type: "text"
  1221. regex:
  1222. 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])$"
  1223. error: "Invalid syslog port"
  1224. atop:
  1225. metadata:
  1226. label: "Advanced System & Process Monitor (atop)"
  1227. weight: 60
  1228. group: "logging"
  1229. toggleable: false
  1230. enabled: true
  1231. service_enabled:
  1232. value: true
  1233. label: "Enable atop service"
  1234. description: |
  1235. NOTE: When enabled, the service may generate logs up to a gigabyte in size per day.
  1236. This should be taken into consideration when determining the correct size for the log partition.
  1237. weight: 10
  1238. type: "checkbox"
  1239. interval:
  1240. description: "Interval between the snapshots in seconds"
  1241. value: "20"
  1242. label: "Interval between the snapshots"
  1243. weight: 20
  1244. type: "text"
  1245. regex:
  1246. source: '^[1-9]\d*$'
  1247. error: "Should be a number of seconds"
  1248. restrictions:
  1249. - condition: "settings:atop.service_enabled.value == false"
  1250. action: "hide"
  1251. rotate:
  1252. description: "Number of days to keep log files"
  1253. value: "7"
  1254. label: "Rotate days"
  1255. weight: 30
  1256. type: "text"
  1257. regex:
  1258. source: '^[1-9]\d*$'
  1259. error: "Should be a number of days"
  1260. restrictions:
  1261. - condition: "settings:atop.service_enabled.value == false"
  1262. action: "hide"
  1263. provision:
  1264. metadata:
  1265. label: "Provision"
  1266. weight: 80
  1267. group: "general"
  1268. restrictions:
  1269. - condition: "true"
  1270. action: "hide"
  1271. method:
  1272. type: "hidden"
  1273. value: "image"
  1274. cgroups:
  1275. metadata:
  1276. label: "Cgroups conguration for services"
  1277. weight: 90
  1278. group: "general"
  1279. always_editable: true
  1280. restrictions:
  1281. - condition: "true"
  1282. action: "hide"
  1283. external_dns:
  1284. metadata:
  1285. label: "Host OS DNS Servers"
  1286. weight: 30
  1287. group: "network"
  1288. dns_list:
  1289. value:
  1290. generator: "from_settings"
  1291. generator_arg: "DNS_UPSTREAM"
  1292. label: "DNS list"
  1293. description: "List of upstream DNS servers"
  1294. weight: 10
  1295. type: "text_list"
  1296. max: 3
  1297. regex:
  1298. source: &ipv4_regex '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$'
  1299. error: "Invalid IP address"
  1300. external_ntp:
  1301. metadata:
  1302. label: "Host OS NTP Servers"
  1303. weight: 40
  1304. group: "network"
  1305. ntp_list:
  1306. value:
  1307. generator: "from_settings"
  1308. generator_arg: "NTP_UPSTREAM"
  1309. label: "NTP server list"
  1310. description: "List of upstream NTP servers"
  1311. weight: 10
  1312. type: "text_list"
  1313. min: 1
  1314. regex:
  1315. source: *ipv4_or_hostname_regex
  1316. error: "Invalid NTP server"
  1317. public_ssl:
  1318. metadata:
  1319. label: "Public TLS"
  1320. weight: 110
  1321. group: "security"
  1322. services:
  1323. value: false
  1324. label: "TLS for OpenStack public endpoints"
  1325. description: "Enable TLS termination on HAProxy for OpenStack services"
  1326. weight: 10
  1327. type: "checkbox"
  1328. horizon:
  1329. value: false
  1330. label: "HTTPS for Horizon"
  1331. description: "Secure access to Horizon enabling HTTPS instead of HTTP"
  1332. weight: 20
  1333. type: "checkbox"
  1334. restrictions:
  1335. - "settings:public_ssl.services.value == false": "TLS for OpenStack public endpoints should be enabled"
  1336. cert_source:
  1337. type: "radio"
  1338. weight: 30
  1339. label: "Select source for certificate"
  1340. description: "From where we'll get certificate and private key"
  1341. value: "self_signed"
  1342. values:
  1343. - data: "self_signed"
  1344. label: "Self-signed"
  1345. description: "Generate private key and certificate that will be signed by this key"
  1346. - data: "user_uploaded"
  1347. label: "I have my own keypair with certificate"
  1348. description: "Use pre-generated key and certificate"
  1349. restrictions:
  1350. - condition: "settings:public_ssl.horizon.value == false and settings:public_ssl.services.value == false"
  1351. action: "hide"
  1352. cert_data:
  1353. value: ""
  1354. label: "Certificate"
  1355. description: "Certificate and private key data, concatenated into a single file"
  1356. weight: 40
  1357. type: "file"
  1358. restrictions:
  1359. - condition: "(settings:public_ssl.cert_source.value != 'user_uploaded') or (settings:public_ssl.horizon.value == false and settings:public_ssl.services.value == false)"
  1360. action: "hide"
  1361. hostname:
  1362. value: "public.fuel.local"
  1363. label: "DNS hostname for public TLS endpoints"
  1364. description: "Your DNS entries should point to this name. Self-signed certificates also will use this hostname"
  1365. weight: 50
  1366. type: "text"
  1367. regex:
  1368. source: *ipv4_or_hostname_regex
  1369. error: "Invalid DNS hostname"
  1370. restrictions:
  1371. - condition: "settings:public_ssl.horizon.value == false and settings:public_ssl.services.value == false"
  1372. action: "hide"
  1373. ssh:
  1374. metadata:
  1375. label: "SSH security"
  1376. weight: 120
  1377. group: "security"
  1378. toggleable: false
  1379. enabled: true
  1380. security_enabled:
  1381. value: false
  1382. label: "Restrict SSH service on network"
  1383. description: |
  1384. NOTE: When enabled, provide at least one working IP address (the Fuel Master node IP is already added).
  1385. We recommend adding new addresses instead of replacing the provided Fuel Master node IP.
  1386. When disabled (by default), the admin, management, and storage networks are only allowed to connect to the SSH service.
  1387. weight: 10
  1388. type: "checkbox"
  1389. security_networks:
  1390. value:
  1391. - "{settings.MASTER_IP}"
  1392. label: "Restrict access to"
  1393. description: "IPv4/CIDR address"
  1394. weight: 20
  1395. type: "text_list"
  1396. regex:
  1397. source: &ipv4_cidr_regex '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))*$'
  1398. error: "Invalid IPv4/CIDR address"
  1399. restrictions:
  1400. - condition: "settings:ssh.security_enabled.value == false"
  1401. action: "hide"
  1402. brute_force_protection:
  1403. value: false
  1404. label: "Brute force protection"
  1405. description: "When enabled, the access from all networks (except the provided ones) will be granted, but the networks will be checked against the brute force attack."
  1406. weight: 30
  1407. type: "checkbox"
  1408. restrictions:
  1409. - condition: "settings:ssh.security_enabled.value == false"
  1410. action: "hide"
  1411. kernel_params:
  1412. metadata:
  1413. label: "Kernel parameters"
  1414. weight: 60
  1415. group: "general"
  1416. kernel:
  1417. value: "console=tty0 biosdevname=0 rootdelay=90 nomodeset"
  1418. label: "Initial parameters"
  1419. description: "Default kernel parameters"
  1420. type: "text"
  1421. storage:
  1422. metadata:
  1423. label: "Storage Backends"
  1424. weight: 60
  1425. group: "storage"
  1426. volumes_lvm:
  1427. value: true
  1428. label: "Cinder LVM over iSCSI for volumes"
  1429. description: "It is recommended to have at least one Cinder node."
  1430. weight: 10
  1431. type: "checkbox"
  1432. restrictions:
  1433. - "settings:storage.volumes_ceph.value == true"
  1434. volumes_block_device:
  1435. value: false
  1436. label: "Cinder Block device driver"
  1437. description: "High performance block device storage. It is recommended to have at least one Cinder Block Device"
  1438. weight: 15
  1439. type: "checkbox"
  1440. restrictions:
  1441. - "settings:storage.volumes_ceph.value == true"
  1442. volumes_ceph:
  1443. value: false
  1444. label: "Ceph RBD for volumes (Cinder)"
  1445. description: "Configures Cinder to store volumes in Ceph RBD images."
  1446. weight: 20
  1447. type: "checkbox"
  1448. restrictions:
  1449. - "settings:storage.volumes_lvm.value == true or settings:storage.volumes_block_device.value == true"
  1450. images_ceph:
  1451. value: false
  1452. label: "Ceph RBD for images (Glance)"
  1453. description: "Configures Glance to use the Ceph RBD backend to store images. If enabled, this option will prevent Swift from installing."
  1454. weight: 30
  1455. type: "checkbox"
  1456. ephemeral_ceph:
  1457. value: false
  1458. label: "Ceph RBD for ephemeral volumes (Nova)"
  1459. 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)."
  1460. weight: 75
  1461. type: "checkbox"
  1462. objects_ceph:
  1463. value: false
  1464. label: "Ceph RadosGW for objects (Swift API)"
  1465. description: "Configures RadosGW front end for Ceph RBD. This exposes S3 and Swift API Interfaces. If enabled, this option will prevent Swift from installing."
  1466. weight: 80
  1467. type: "checkbox"
  1468. auth_s3_keystone_ceph:
  1469. value: false
  1470. label: "Enable S3 API Authentication via Keystone in Ceph RadosGW"
  1471. description: "This allows to authenticate S3 requests basing on EC2/S3 credentials managed by Keystone. Please note that enabling the integration will increase the latency of S3 requests as well as load on Keystone service. Please consult with Mirantis Technical Bulletin 27 and Mirantis Support on mitigating the risks related with load."
  1472. weight: 82
  1473. type: "checkbox"
  1474. restrictions:
  1475. - condition: "settings:storage.objects_ceph.value == false"
  1476. action: "hide"
  1477. osd_pool_size:
  1478. value: "3"
  1479. label: "Ceph object replication factor"
  1480. description: "Configures the default number of object replicas in Ceph. This number must be equal to or lower than the number of deployed 'Ceph OSD' nodes."
  1481. weight: 85
  1482. type: "text"
  1483. regex:
  1484. source: '^[1-9]\d*$'
  1485. error: "Invalid number"
  1486. fsid:
  1487. type: "hidden"
  1488. value:
  1489. generator: "uuid4"
  1490. mon_key:
  1491. type: "hidden"
  1492. value:
  1493. generator: "cephx_key"
  1494. admin_key:
  1495. type: "hidden"
  1496. value:
  1497. generator: "cephx_key"
  1498. bootstrap_osd_key:
  1499. type: "hidden"
  1500. value:
  1501. generator: "cephx_key"
  1502. radosgw_key:
  1503. type: "hidden"
  1504. value:
  1505. generator: "cephx_key"
  1506. generated:
  1507. mysql:
  1508. root_password:
  1509. generator: "password"
  1510. wsrep_password:
  1511. generator: "password"
  1512. keystone:
  1513. db_password:
  1514. generator: "password"
  1515. admin_token:
  1516. generator: "password"
  1517. glance:
  1518. db_password:
  1519. generator: "password"
  1520. user_password:
  1521. generator: "password"
  1522. glance_glare:
  1523. user_password:
  1524. generator: "password"
  1525. nova:
  1526. db_password:
  1527. generator: "password"
  1528. user_password:
  1529. generator: "password"
  1530. state_path: "/var/lib/nova"
  1531. rabbit:
  1532. password:
  1533. generator: "password"
  1534. swift:
  1535. user_password:
  1536. generator: "password"
  1537. cinder:
  1538. db_password:
  1539. generator: "password"
  1540. user_password:
  1541. generator: "password"
  1542. fixed_key:
  1543. generator: "hexstring"
  1544. generator_arg: "64"
  1545. horizon:
  1546. secret_key:
  1547. generator: "hexstring"
  1548. generator_arg: "64"
  1549. base_syslog:
  1550. syslog_server:
  1551. generator: "ip"
  1552. generator_arg: "admin"
  1553. syslog_port:
  1554. generator: "identical"
  1555. generator_arg: "514"
  1556. cobbler:
  1557. profile:
  1558. generator: "identical"
  1559. sahara:
  1560. user_password:
  1561. generator: "password"
  1562. db_password:
  1563. generator: "password"
  1564. murano:
  1565. user_password:
  1566. generator: "password"
  1567. rabbit_password:
  1568. generator: "password"
  1569. db_password:
  1570. generator: "password"
  1571. murano-cfapi:
  1572. user_password:
  1573. generator: "password"
  1574. rabbit_password:
  1575. generator: "password"
  1576. db_password:
  1577. generator: "password"
  1578. aodh:
  1579. user_password:
  1580. generator: "password"
  1581. db_password:
  1582. generator: "password"
  1583. heat:
  1584. user_password:
  1585. generator: "password"
  1586. rabbit_password:
  1587. generator: "password"
  1588. db_password:
  1589. generator: "password"
  1590. auth_encryption_key:
  1591. generator: "hexstring"
  1592. generator_arg: "32"
  1593. ceilometer:
  1594. db_password:
  1595. generator: "password"
  1596. user_password:
  1597. generator: "password"
  1598. metering_secret:
  1599. generator: "password"
  1600. quantum_settings:
  1601. database:
  1602. passwd:
  1603. generator: "password"
  1604. keystone:
  1605. admin_password:
  1606. generator: "password"
  1607. metadata:
  1608. metadata_proxy_shared_secret:
  1609. generator: "password"
  1610. ironic:
  1611. user_password:
  1612. generator: "password"
  1613. db_password:
  1614. generator: "password"
  1615. swift_tempurl_key:
  1616. generator: "password"
  1617. puppet:
  1618. manifests: "rsync://{settings.MASTER_IP}:/puppet/{cluster.release.version}/manifests/"
  1619. modules: "rsync://{settings.MASTER_IP}:/puppet/{cluster.release.version}/modules/"
  1620. deployed_before:
  1621. value: false
  1622. components_metadata:
  1623. - name: hypervisor:qemu
  1624. default: true
  1625. bind: !!pairs
  1626. - "settings:common.libvirt_type.value": "qemu"
  1627. weight: 5
  1628. label: "dialog.create_cluster_wizard.compute.qemu"
  1629. description: "dialog.create_cluster_wizard.compute.qemu_description"
  1630. compatible:
  1631. - name: hypervisor:*
  1632. - name: network:neutron:core:ml2
  1633. default: true
  1634. weight: 1000
  1635. label: "dialog.create_cluster_wizard.network.neutron_ml2"
  1636. description: "dialog.create_cluster_wizard.network.neutron_ml2_description"
  1637. compatible:
  1638. - name: hypervisor:*
  1639. - name: network:neutron:ml2:*
  1640. - name: network:neutron:ml2:vlan
  1641. default: true
  1642. bind: !!pairs
  1643. - "cluster:net_provider": "neutron"
  1644. - "cluster:net_segment_type": "vlan"
  1645. weight: 5
  1646. label: "common.network.neutron_vlan"
  1647. description: "dialog.create_cluster_wizard.network.neutron_vlan_description"
  1648. incompatible:
  1649. - name: network:neutron:ml2:tun
  1650. message: "dialog.create_cluster_wizard.network.vlan_tun_alert"
  1651. compatible:
  1652. - name: network:neutron:core:ml2
  1653. - name: hypervisor:qemu
  1654. requires:
  1655. - one_of:
  1656. items:
  1657. - network:neutron:core:ml2
  1658. - name: network:neutron:ml2:tun
  1659. bind: !!pairs
  1660. - "cluster:net_provider": "neutron"
  1661. - "cluster:net_segment_type": "tun"
  1662. weight: 10
  1663. label: "common.network.neutron_tun"
  1664. description: "dialog.create_cluster_wizard.network.neutron_tun_description"
  1665. compatible:
  1666. - name: network:neutron:core:ml2
  1667. - name: hypervisor:qemu
  1668. incompatible:
  1669. - name: network:neutron:ml2:vlan
  1670. message: "dialog.create_cluster_wizard.network.vlan_tun_alert"
  1671. - name: additional_service:ironic
  1672. message: "dialog.create_cluster_wizard.additional.ironic_network_mode_alert"
  1673. requires:
  1674. - one_of:
  1675. items:
  1676. - network:neutron:core:ml2
  1677. - name: storage:block:lvm
  1678. label: "dialog.create_cluster_wizard.storage.lvm"
  1679. description: "dialog.create_cluster_wizard.storage.default_provider"
  1680. default: true
  1681. weight: 5
  1682. bind:
  1683. - "settings:storage.volumes_lvm.value"
  1684. compatible:
  1685. - name: hypervisor:qemu
  1686. - name: network:neutron:core:ml2
  1687. - name: network:neutron:ml2:vlan
  1688. - name: network:neutron:ml2:tun
  1689. incompatible:
  1690. - name: storage:block:ceph
  1691. message: "LVM not compatible with Ceph"
  1692. - name: storage:block:ceph
  1693. label: "dialog.create_cluster_wizard.storage.ceph"
  1694. description: "dialog.create_cluster_wizard.storage.ceph_block"
  1695. weight: 10
  1696. bind: !!pairs
  1697. - "settings:storage.volumes_ceph.value": true
  1698. - "settings:storage.volumes_lvm.value": false
  1699. compatible:
  1700. - name: hypervisor:qemu
  1701. - name: network:neutron:core:ml2
  1702. - name: network:neutron:ml2:vlan
  1703. - name: network:neutron:ml2:tun
  1704. - name: storage:object:ceph
  1705. - name: storage:ephemeral:ceph
  1706. - name: storage:image:ceph
  1707. incompatible:
  1708. - name: storage:block:lvm
  1709. message: "Ceph not compatible with LVM"
  1710. - name: storage:object:ceph
  1711. label: "dialog.create_cluster_wizard.storage.ceph"
  1712. description: "dialog.create_cluster_wizard.storage.ceph_object"
  1713. weight: 10
  1714. bind:
  1715. - "settings:storage.objects_ceph.value"
  1716. compatible:
  1717. - name: hypervisor:qemu
  1718. - name: network:neutron:core:ml2
  1719. - name: network:neutron:ml2:vlan
  1720. - name: network:neutron:ml2:tun
  1721. - name: storage:block:lvm
  1722. - name: storage:block:ceph
  1723. - name: storage:ephemeral:ceph
  1724. - name: storage:image:ceph
  1725. - name: storage:ephemeral:ceph
  1726. label: "dialog.create_cluster_wizard.storage.ceph"
  1727. description: "dialog.create_cluster_wizard.storage.ceph_ephemeral"
  1728. weight: 10
  1729. bind:
  1730. - "settings:storage.ephemeral_ceph.value"
  1731. compatible:
  1732. - name: hypervisor:qemu
  1733. - name: network:neutron:core:ml2
  1734. - name: network:neutron:ml2:vlan
  1735. - name: network:neutron:ml2:tun
  1736. - name: storage:block:lvm
  1737. - name: storage:block:ceph
  1738. - name: storage:object:ceph
  1739. - name: storage:image:ceph
  1740. - name: storage:image:ceph
  1741. label: "dialog.create_cluster_wizard.storage.ceph"
  1742. description: "dialog.create_cluster_wizard.storage.ceph_image"
  1743. weight: 10
  1744. bind:
  1745. - "settings:storage.images_ceph.value"
  1746. compatible:
  1747. - name: hypervisor:qemu
  1748. - name: network:neutron:core:ml2
  1749. - name: network:neutron:ml2:vlan
  1750. - name: network:neutron:ml2:tun
  1751. - name: storage:block:lvm
  1752. - name: storage:block:ceph
  1753. - name: storage:object:ceph
  1754. - name: storage:ephemeral:ceph
  1755. - name: additional_service:sahara
  1756. bind:
  1757. - "settings:additional_components.sahara.value"
  1758. weight: 10
  1759. label: "dialog.create_cluster_wizard.additional.install_sahara"
  1760. description: "dialog.create_cluster_wizard.additional.install_sahara_description"
  1761. compatible:
  1762. - name: hypervisor:qemu
  1763. - name: network:neutron:core:ml2
  1764. - name: network:neutron:ml2:vlan
  1765. - name: network:neutron:ml2:tun
  1766. - name: storage:block:lvm
  1767. - name: storage:block:ceph
  1768. - name: storage:object:ceph
  1769. - name: storage:ephemeral:ceph
  1770. - name: storage:image:ceph
  1771. - name: additional_service:sahara
  1772. - name: additional_service:murano
  1773. - name: additional_service:ceilometer
  1774. - name: additional_service:ironic
  1775. - name: additional_service:murano
  1776. bind:
  1777. - "settings:additional_components.murano.value"
  1778. weight: 20
  1779. label: "dialog.create_cluster_wizard.additional.install_murano"
  1780. description: "dialog.create_cluster_wizard.additional.install_murano_description"
  1781. compatible:
  1782. - name: hypervisor:qemu
  1783. - name: network:neutron:core:ml2
  1784. - name: network:neutron:ml2:vlan
  1785. - name: network:neutron:ml2:tun
  1786. - name: storage:block:lvm
  1787. - name: storage:block:ceph
  1788. - name: storage:object:ceph
  1789. - name: storage:ephemeral:ceph
  1790. - name: storage:image:ceph
  1791. - name: additional_service:sahara
  1792. - name: additional_service:ceilometer
  1793. - name: additional_service:ironic
  1794. - name: additional_service:ceilometer
  1795. bind:
  1796. - "settings:additional_components.ceilometer.value"
  1797. weight: 30
  1798. label: "dialog.create_cluster_wizard.additional.install_ceilometer"
  1799. description: "dialog.create_cluster_wizard.additional.install_ceilometer_description"
  1800. compatible:
  1801. - name: hypervisor:qemu
  1802. - name: network:neutron:core:ml2
  1803. - name: network:neutron:ml2:vlan
  1804. - name: network:neutron:ml2:tun
  1805. - name: storage:block:lvm
  1806. - name: storage:block:ceph
  1807. - name: storage:object:ceph
  1808. - name: storage:ephemeral:ceph
  1809. - name: storage:image:ceph
  1810. - name: additional_service:sahara
  1811. - name: additional_service:murano
  1812. - name: additional_service:ironic
  1813. - name: additional_service:ironic
  1814. bind:
  1815. - "settings:additional_components.ironic.value"
  1816. weight: 40
  1817. label: "dialog.create_cluster_wizard.additional.install_ironic"
  1818. description: "dialog.create_cluster_wizard.additional.install_ironic_description"
  1819. compatible:
  1820. - name: hypervisor:qemu
  1821. - name: network:neutron:core:ml2
  1822. - name: network:neutron:ml2:vlan
  1823. - name: storage:block:lvm
  1824. - name: storage:block:ceph
  1825. - name: storage:object:ceph
  1826. - name: storage:ephemeral:ceph
  1827. - name: storage:image:ceph
  1828. - name: additional_service:sahara
  1829. - name: additional_service:murano
  1830. - name: additional_service:ceilometer
  1831. incompatible:
  1832. - name: network:neutron:ml2:tun
  1833. message: "dialog.create_cluster_wizard.additional.ironic_network_mode_alert"
  1834. required_component_types:
  1835. - hypervisor
  1836. - network
  1837. - storage
  1838. nic_attributes:
  1839. offloading:
  1840. metadata:
  1841. label: "Offloading"
  1842. weight: 10
  1843. disable:
  1844. label: "Disable Offloading"
  1845. weight: 10
  1846. type: "checkbox"
  1847. value: False
  1848. modes:
  1849. label: "Offloading Modes"
  1850. weight: 20
  1851. type: "offloading_modes"
  1852. value: {}
  1853. mtu:
  1854. metadata:
  1855. label: "MTU"
  1856. weight: 20
  1857. value:
  1858. label: "Use Custom MTU"
  1859. weight: 10
  1860. type: "number"
  1861. nullable: True
  1862. value: null
  1863. min: 42
  1864. max: 65536
  1865. sriov:
  1866. metadata:
  1867. label: "SR-IOV"
  1868. weight: 30
  1869. enabled:
  1870. label: "Enable SR-IOV"
  1871. description: 'Single-root I/O Virtualization (SR-IOV) is a specification that, when implemented by a physical PCIe device, enables it to appear as multiple separate PCIe devices. This enables multiple virtualized guests to share direct access to the physical device, offering improved performance over an equivalent virtual device.'
  1872. weight: 10
  1873. type: "checkbox"
  1874. value: False
  1875. restrictions:
  1876. - "settings:common.libvirt_type.value != 'kvm'": "Only KVM hypervisor works with SR-IOV"
  1877. numvfs:
  1878. label: "Custom Number of Virtual Functions"
  1879. weight: 20
  1880. type: "number"
  1881. nullable: True
  1882. min: 1
  1883. value: null
  1884. restrictions:
  1885. - "nic_attributes:sriov.enabled.value == false"
  1886. physnet:
  1887. label: "Physical Network Name"
  1888. weight: 30
  1889. type: "text"
  1890. value: ""
  1891. regex:
  1892. source: "^[A-Za-z0-9 _]*[A-Za-z0-9][A-Za-z0-9 _]*$"
  1893. error: "Invalid physical network name"
  1894. restrictions:
  1895. - "nic_attributes:sriov.enabled.value == false"
  1896. - condition: "nic_attributes:sriov.physnet.value != 'physnet2'"
  1897. message: "Only \"physnet2\" will be configured by Fuel in Neutron. Configuration of other physical networks is up to Operator or plugin. Fuel will just configure appropriate pci_passthrough_whitelist option in nova.conf for such interface and physical networks."
  1898. action: "none"
  1899. dpdk:
  1900. metadata:
  1901. restrictions:
  1902. - condition: "not ('experimental' in version:feature_groups)"
  1903. action: "hide"
  1904. label: "DPDK"
  1905. weight: 40
  1906. enabled:
  1907. label: "Enable DPDK"
  1908. description: 'The Data Plane Development Kit (DPDK) provides high-performance packet processing libraries and user space drivers.'
  1909. weight: 10
  1910. type: "checkbox"
  1911. value: False
  1912. restrictions:
  1913. - "settings:common.libvirt_type.value != 'kvm'": "Only KVM hypervisor works with DPDK"
  1914. bond_attributes:
  1915. type__:
  1916. type: 'hidden'
  1917. value: null
  1918. mode:
  1919. metadata:
  1920. label: "Mode"
  1921. weight: 10
  1922. value:
  1923. label: "Mode"
  1924. weight: 10
  1925. type: "select"
  1926. value: ''
  1927. offloading:
  1928. metadata:
  1929. label: "Offloading"
  1930. weight: 20
  1931. disable:
  1932. label: "Disable Offloading"
  1933. weight: 10
  1934. type: "checkbox"
  1935. value: False
  1936. modes:
  1937. label: "Offloading Modes"
  1938. weight: 20
  1939. type: "offloading_modes"
  1940. value: {}
  1941. mtu:
  1942. metadata:
  1943. label: "MTU"
  1944. weight: 30
  1945. value:
  1946. label: "Use Custom MTU"
  1947. weight: 10
  1948. type: "number"
  1949. nullable: True
  1950. value: null
  1951. min: 42
  1952. max: 65536
  1953. dpdk:
  1954. metadata:
  1955. restrictions:
  1956. - condition: "not ('experimental' in version:feature_groups)"
  1957. action: "hide"
  1958. label: "DPDK"
  1959. weight: 40
  1960. enabled:
  1961. label: "Enable DPDK"
  1962. description: 'The Data Plane Development Kit (DPDK) provides high-performance packet processing libraries and user space drivers.'
  1963. weight: 10
  1964. type: "checkbox"
  1965. value: False
  1966. restrictions:
  1967. - "settings:common.libvirt_type.value != 'kvm'": "Only KVM hypervisor works with DPDK"
  1968. lacp:
  1969. metadata:
  1970. label: "Lacp"
  1971. weight: 50
  1972. value:
  1973. label: "Lacp"
  1974. weight: 10
  1975. type: "select"
  1976. value: ''
  1977. lacp_rate:
  1978. metadata:
  1979. label: "Lacp rate"
  1980. weight: 60
  1981. value:
  1982. label: "Lacp rate"
  1983. weight: 10
  1984. type: "select"
  1985. value: ''
  1986. xmit_hash_policy:
  1987. metadata:
  1988. label: "Xmit hash policy"
  1989. weight: 70
  1990. value:
  1991. label: "Xmit hash policy"
  1992. weight: 10
  1993. type: "select"
  1994. value: ''
  1995. modes: ['ha_compact']
  1996. extensions: ['volume_manager', 'network_manager']
  1997. - pk: 1
  1998. extend: *base_release
  1999. fields:
  2000. name: "Newton on CentOS 6.5"
  2001. state: "unavailable"
  2002. version: "newton-10.0"
  2003. operating_system: "CentOS"
  2004. description: "This option will install the OpenStack Mitaka packages using a CentOS based operating system. With high availability features built in, you are getting a robust, enterprise-grade OpenStack deployment."
  2005. attributes_metadata:
  2006. editable:
  2007. kernel_params:
  2008. kernel:
  2009. value: "console=tty0 biosdevname=0 crashkernel=none rootdelay=90 nomodeset"
  2010. use_fedora_lt:
  2011. metadata:
  2012. label: "Use Fedora longterm kernel"
  2013. weight: 50
  2014. kernel:
  2015. label: "Select kernel"
  2016. weight: 55
  2017. type: "radio"
  2018. value: "default_kernel"
  2019. values:
  2020. - data: "default_kernel"
  2021. label: "CentOS default kernel"
  2022. description: "Install default 2.6.32 kernel."
  2023. - data: "fedora_lt_kernel"
  2024. label: "Fedora LT kernel"
  2025. description: "EXPERIMENTAL: Install the Fedora 3.10 longterm kernel instead of the default 2.6.32 kernel. This kernel may not work with all hardware platforms, use with caution."
  2026. repo_setup:
  2027. metadata:
  2028. label: "Repositories"
  2029. weight: 50
  2030. group: "general"
  2031. always_editable: true
  2032. repos:
  2033. type: "custom_repo_configuration"
  2034. extra_priority: null
  2035. description: |
  2036. To create a local repository mirror on the Fuel master node, please follow the instructions provided by running "fuel-package-updates --help" on the Fuel master node.
  2037. Please make sure your Fuel master node has Internet access to the repository before attempting to create a mirror.
  2038. value:
  2039. - type: "rpm"
  2040. name: "mos"
  2041. uri: "http://{settings.MASTER_IP}:8080/{cluster.release.version}/centos/x86_64"
  2042. priority: null
  2043. - type: "rpm"
  2044. name: "mos-updates"
  2045. uri: "http://mirror.fuel-infra.org/mos-repos/centos/mos{cluster.release.environment_version}-centos7/updates/x86_64"
  2046. priority: null
  2047. - type: "rpm"
  2048. name: "mos-security"
  2049. uri: "http://mirror.fuel-infra.org/mos-repos/centos/mos{cluster.release.environment_version}-centos7/security/x86_64"
  2050. priority: null
  2051. - type: "rpm"
  2052. name: "Auxiliary"
  2053. uri: "http://{settings.MASTER_IP}:8080/{cluster.release.version}/centos/auxiliary"
  2054. priority: 15
  2055. generated:
  2056. cobbler:
  2057. profile:
  2058. generator_arg: "centos-x86_64"
  2059. provision:
  2060. image_data:
  2061. /:
  2062. uri: "http://{settings.MASTER_IP}:8080/targetimages/centos_65_x86_64.img.gz"
  2063. format: "ext4"
  2064. container: "gzip"
  2065. /boot:
  2066. uri: "http://{settings.MASTER_IP}:8080/targetimages/centos_65_x86_64-boot.img.gz"
  2067. format: "ext2"
  2068. container: "gzip"
  2069. node_attributes: {}
  2070. - &ubuntu_xenial
  2071. pk: 2
  2072. extend: *base_release
  2073. fields:
  2074. name: "Newton on Ubuntu 16.04"
  2075. version: "newton-10.0"
  2076. operating_system: "Ubuntu"
  2077. description: "This option will install the OpenStack Newton packages using Ubuntu as a base operating system. With high availability features built in, you are getting a robust, enterprise-grade OpenStack deployment."
  2078. attributes_metadata:
  2079. editable:
  2080. kernel_params:
  2081. kernel:
  2082. value: "console=tty0 net.ifnames=1 biosdevname=0 rootdelay=90 nomodeset"
  2083. repo_setup:
  2084. metadata:
  2085. label: "Repositories"
  2086. weight: 50
  2087. group: "general"
  2088. always_editable: true
  2089. repos:
  2090. type: "custom_repo_configuration"
  2091. extra_priority: null
  2092. description: |
  2093. Please note: the first repository will be considered the operating system mirror that will be used during node provisioning.
  2094. 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.
  2095. Please make sure your Fuel master node has Internet access to the repository before attempting to create a mirror.
  2096. value:
  2097. - type: "deb"
  2098. name: "ubuntu"
  2099. uri: "http://archive.ubuntu.com/ubuntu/"
  2100. suite: "xenial"
  2101. section: "main universe multiverse"
  2102. priority: null
  2103. - type: "deb"
  2104. name: "ubuntu-updates"
  2105. uri: "http://archive.ubuntu.com/ubuntu/"
  2106. suite: "xenial-updates"
  2107. section: "main universe multiverse"
  2108. priority: null
  2109. - type: "deb"
  2110. name: "ubuntu-security"
  2111. uri: "http://archive.ubuntu.com/ubuntu/"
  2112. suite: "xenial-security"
  2113. section: "main universe multiverse"
  2114. priority: null
  2115. - type: "deb"
  2116. name: "mos"
  2117. uri: "http://{settings.MASTER_IP}:8080/{cluster.release.version}/ubuntu/x86_64"
  2118. suite: "mos10.0"
  2119. section: "main restricted"
  2120. priority: 1050
  2121. - type: "deb"
  2122. name: "mos-updates"
  2123. uri: "http://mirror.fuel-infra.org/mos-repos/ubuntu/{cluster.release.environment_version}/"
  2124. suite: "mos10.0-updates"
  2125. section: "main restricted"
  2126. priority: 1050
  2127. - type: "deb"
  2128. name: "mos-security"
  2129. uri: "http://mirror.fuel-infra.org/mos-repos/ubuntu/{cluster.release.environment_version}/"
  2130. suite: "mos10.0-security"
  2131. section: "main restricted"
  2132. priority: 1050
  2133. - type: "deb"
  2134. name: "mos-holdback"
  2135. uri: "http://mirror.fuel-infra.org/mos-repos/ubuntu/{cluster.release.environment_version}/"
  2136. suite: "mos10.0-holdback"
  2137. section: "main restricted"
  2138. priority: 1100
  2139. - type: "deb"
  2140. name: "Auxiliary"
  2141. uri: "http://{settings.MASTER_IP}:8080/{cluster.release.version}/ubuntu/auxiliary"
  2142. suite: "auxiliary"
  2143. section: "main restricted"
  2144. priority: 1150
  2145. provision:
  2146. metadata:
  2147. label: "Provision"
  2148. weight: 80
  2149. group: "general"
  2150. restrictions:
  2151. - condition: "false"
  2152. action: "hide"
  2153. packages:
  2154. label: "Initial packages"
  2155. weight: 10
  2156. type: "textarea"
  2157. value: |
  2158. acl
  2159. anacron
  2160. bash-completion
  2161. bridge-utils
  2162. bsdmainutils
  2163. build-essential
  2164. cloud-init
  2165. curl
  2166. daemonize
  2167. debconf-utils
  2168. gdisk
  2169. grub-pc
  2170. hwloc
  2171. linux-firmware
  2172. linux-headers-generic-lts-xenial
  2173. linux-image-generic-lts-xenial
  2174. lvm2
  2175. mcollective
  2176. mdadm
  2177. multipath-tools
  2178. multipath-tools-boot
  2179. nailgun-agent
  2180. nailgun-mcagents
  2181. network-checker
  2182. ntp
  2183. ntpdate
  2184. openssh-client
  2185. openssh-server
  2186. puppet
  2187. python-amqp
  2188. ruby-augeas
  2189. ruby-ipaddress
  2190. ruby-json
  2191. ruby-netaddr
  2192. ruby-openstack
  2193. ruby-shadow
  2194. ruby-stomp
  2195. telnet
  2196. ubuntu-minimal
  2197. ubuntu-standard
  2198. uuid-runtime
  2199. vim
  2200. virt-what
  2201. vlan
  2202. generated:
  2203. cobbler:
  2204. profile:
  2205. generator_arg: "ubuntu_bootstrap"
  2206. provision:
  2207. codename: "xenial"
  2208. image_data:
  2209. /:
  2210. uri: "http://{settings.MASTER_IP}:8080/targetimages/env_{cluster.id}_ubuntu_1604_amd64.img.gz"
  2211. format: "ext4"
  2212. container: "gzip"
  2213. /boot:
  2214. uri: "http://{settings.MASTER_IP}:8080/targetimages/env_{cluster.id}_ubuntu_1604_amd64-boot.img.gz"
  2215. format: "ext2"
  2216. container: "gzip"
  2217. node_attributes:
  2218. cpu_pinning:
  2219. metadata:
  2220. group: "nfv"
  2221. label: "CPU pinning"
  2222. weight: 10
  2223. restrictions:
  2224. - condition: "settings:common.libvirt_type.value != 'kvm'"
  2225. action: "hide"
  2226. nova:
  2227. weight: 10
  2228. description: "Number of CPUs for Nova usage"
  2229. label: "Nova CPU pinning"
  2230. type: "number"
  2231. value: 0
  2232. min: 0
  2233. dpdk:
  2234. weight: 20
  2235. description: "Number of CPUs for DPDK usage"
  2236. label: "DPDK CPU pinning"
  2237. type: "number"
  2238. value: 0
  2239. min: 0
  2240. restrictions:
  2241. - condition: "not ('experimental' in version:feature_groups)"
  2242. action: "hide"
  2243. hugepages:
  2244. metadata:
  2245. group: "nfv"
  2246. label: "Huge Pages"
  2247. weight: 20
  2248. restrictions:
  2249. - condition: "settings:common.libvirt_type.value != 'kvm'"
  2250. action: "hide"
  2251. nova:
  2252. weight: 10
  2253. description: "Nova Huge Pages configuration"
  2254. label: "Nova Huge Pages"
  2255. type: "custom_hugepages"
  2256. value: {}
  2257. dpdk:
  2258. weight: 20
  2259. description: "DPDK Huge Pages per NUMA node in MB"
  2260. label: "DPDK Huge Pages"
  2261. type: "number"
  2262. value: 0
  2263. min: 0
  2264. restrictions:
  2265. - condition: "not ('experimental' in version:feature_groups)"
  2266. action: "hide"
  2267. networks_metadata:
  2268. dpdk_drivers:
  2269. # Sources:
  2270. # http://dpdk.org/browse/dpdk/tree/doc/guides/rel_notes/known_issues.rst?h=releases&id=7173acefc7cfdfbbb9b91fcba1c9a67adb4c07c9#n168
  2271. # http://dpdk.org/browse/dpdk/tree/lib/librte_eal/common/include/rte_pci_dev_ids.h?h=releases&id=7173acefc7cfdfbbb9b91fcba1c9a67adb4c07c9
  2272. igb_uio: [
  2273. "8086:100e", "8086:100f", "8086:1011", "8086:1010", "8086:1012",
  2274. "8086:101d", "8086:105e", "8086:105f", "8086:1060", "8086:10d9",
  2275. "8086:10da", "8086:10a4", "8086:10d5", "8086:10a5", "8086:10bc",
  2276. "8086:107d", "8086:107e", "8086:107f", "8086:10b9", "8086:109a",
  2277. "8086:10d3", "8086:10f6", "8086:150c", "8086:10c9", "8086:10e6",
  2278. "8086:10e7", "8086:10e8", "8086:1526", "8086:150a", "8086:1518",
  2279. "8086:150d", "8086:10a7", "8086:10a9", "8086:10d6", "8086:150e",
  2280. "8086:150f", "8086:1510", "8086:1511", "8086:1516", "8086:1527",
  2281. "8086:1521", "8086:1522", "8086:1523", "8086:1524", "8086:1546",
  2282. "8086:1533", "8086:1534", "8086:1535", "8086:1536", "8086:1537",
  2283. "8086:1538", "8086:1539", "8086:1f40", "8086:1f41", "8086:1f45",
  2284. "8086:0438", "8086:043a", "8086:043c", "8086:0440", "8086:10b6",
  2285. "8086:1508", "8086:10c6", "8086:10c8", "8086:150b", "8086:10db",
  2286. "8086:10dd", "8086:10ec", "8086:10f1", "8086:10f4", "8086:10f7",
  2287. "8086:1514", "8086:1517", "8086:10f9", "8086:10fb", "8086:11a9",
  2288. "8086:1f72", "8086:17d0", "8086:0470", "8086:152a", "8086:1529",
  2289. "8086:1507", "8086:154d", "8086:154a", "8086:1558", "8086:1557",
  2290. "8086:10fc", "8086:151c", "8086:154f", "8086:1528", "8086:1560",
  2291. "8086:15ae", "8086:1563", "8086:15aa", "8086:15ab", "8086:155d",
  2292. "8086:1572", "8086:1574", "8086:157f", "8086:1580", "8086:1581",
  2293. "8086:1583", "8086:1584", "8086:1585", "8086:1586", "8086:15a4",
  2294. "8086:10ca", "8086:152d", "8086:1520", "8086:152f", "8086:10ed",
  2295. "8086:152e", "8086:1515", "8086:1530", "8086:1564", "8086:1565",
  2296. "8086:15a8", "8086:15a9", "8086:154c", "8086:1571", "1af4:1000",
  2297. "15ad:07b0", "8086:15a5", "1137:0043", "1137:0071", "14e4:168a",
  2298. "14e4:16a9", "14e4:164f", "14e4:168e", "14e4:16af", "14e4:163d",
  2299. "14e4:163f", "14e4:168d", "14e4:16a1", "14e4:16a2", "14e4:16ad",
  2300. "14e4:16ae", "14e4:163e", "14e4:16a4", "8086:10f8"
  2301. ]
  2302. - pk: 3
  2303. extend: *ubuntu_xenial
  2304. fields:
  2305. name: "Newton on Ubuntu+UCA 16.04"
  2306. version: "newton-10.0"
  2307. description: "This option will install the OpenStack Newton packages using Ubuntu as a base operating system, including Ubuntu Cloud Archive OpenStack packages. With high availability features built in, you are getting a robust, enterprise-grade OpenStack deployment."
  2308. attributes_metadata:
  2309. editable:
  2310. repo_setup:
  2311. repos:
  2312. type: "custom_repo_configuration"
  2313. extra_priority: null
  2314. description: |
  2315. Please note: the first repository will be considered the operating system mirror that will be used during node provisioning.
  2316. 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.
  2317. Please make sure your Fuel master node has Internet access to the repository before attempting to create a mirror.
  2318. value:
  2319. - type: "deb"
  2320. name: "ubuntu"
  2321. uri: "http://archive.ubuntu.com/ubuntu/"
  2322. suite: "xenial"
  2323. section: "main universe multiverse"
  2324. priority: null
  2325. - type: "deb"
  2326. name: "ubuntu-updates"
  2327. uri: "http://archive.ubuntu.com/ubuntu/"
  2328. suite: "xenial-updates"
  2329. section: "main universe multiverse"
  2330. priority: null
  2331. - type: "deb"
  2332. name: "ubuntu-security"
  2333. uri: "http://archive.ubuntu.com/ubuntu/"
  2334. suite: "xenial-security"
  2335. section: "main universe multiverse"
  2336. priority: null
  2337. - type: "deb"
  2338. name: "uca"
  2339. uri: "http://ubuntu-cloud.archive.canonical.com/ubuntu"
  2340. suite: "xenial-updates/newton"
  2341. section: "main"
  2342. priority: 1080
  2343. - type: "deb"
  2344. name: "uca-proposed"
  2345. uri: "http://ubuntu-cloud.archive.canonical.com/ubuntu"
  2346. suite: "xenial-proposed/newton"
  2347. section: "main"
  2348. priority: 1080
  2349. - type: "deb"
  2350. name: "mos"
  2351. uri: "http://{settings.MASTER_IP}:8080/{cluster.release.version}/ubuntu/x86_64"
  2352. suite: "mos10.0"
  2353. section: "main restricted"
  2354. priority: 1050
  2355. - type: "deb"
  2356. name: "mos-updates"
  2357. uri: "http://mirror.fuel-infra.org/mos-repos/ubuntu/{cluster.release.environment_version}/"
  2358. suite: "mos10.0-updates"
  2359. section: "main restricted"
  2360. priority: 1050
  2361. - type: "deb"
  2362. name: "mos-security"
  2363. uri: "http://mirror.fuel-infra.org/mos-repos/ubuntu/{cluster.release.environment_version}/"
  2364. suite: "mos10.0-security"
  2365. section: "main restricted"
  2366. priority: 1050
  2367. - type: "deb"
  2368. name: "mos-holdback"
  2369. uri: "http://mirror.fuel-infra.org/mos-repos/ubuntu/{cluster.release.environment_version}/"
  2370. suite: "mos10.0-holdback"
  2371. section: "main restricted"
  2372. priority: 1100
  2373. - type: "deb"
  2374. name: "Auxiliary"
  2375. uri: "http://{settings.MASTER_IP}:8080/{cluster.release.version}/ubuntu/auxiliary"
  2376. suite: "auxiliary"
  2377. section: "main restricted"
  2378. priority: 1150
  2379. repo_type:
  2380. type: "hidden"
  2381. weight: 58
  2382. value: "uca"
  2383. pin_haproxy:
  2384. label: "HAProxy APT Pinning"
  2385. description: "Use Fuel HAProxy packages instead of upstream"
  2386. weight: 59
  2387. type: "checkbox"
  2388. value: true
  2389. pin_rabbitmq:
  2390. label: "RabbitMQ APT Pinning"
  2391. description: "Use Fuel RabbitMQ packages instead of upstream"
  2392. weight: 60
  2393. type: "checkbox"
  2394. value: true
  2395. pin_ceph:
  2396. label: "Ceph APT Pinning"
  2397. description: "Use Fuel Ceph packages instead of upstream"
  2398. weight: 61
  2399. type: "checkbox"
  2400. value: true