Heat templates for deploying OpenStack
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.

110 lines
3.7KB

  1. heat_template_version: queens
  2. description: >
  3. OpenStack Octavia Worker service.
  4. parameters:
  5. ServiceData:
  6. default: {}
  7. description: Dictionary packing service data
  8. type: json
  9. ServiceNetMap:
  10. default: {}
  11. description: Mapping of service_name -> network name. Typically set
  12. via parameter_defaults in the resource registry. This
  13. mapping overrides those in ServiceNetMapDefaults.
  14. type: json
  15. DefaultPasswords:
  16. default: {}
  17. type: json
  18. RoleName:
  19. default: ''
  20. description: Role name on which the service is applied
  21. type: string
  22. RoleParameters:
  23. default: {}
  24. description: Parameters specific to the role
  25. type: json
  26. EndpointMap:
  27. default: {}
  28. description: Mapping of service endpoint -> protocol. Typically set
  29. via parameter_defaults in the resource registry.
  30. type: json
  31. OctaviaAmphoraImageTag:
  32. default: 'amphora-image'
  33. description: Glance image tag for identifying the amphora image.
  34. type: string
  35. OctaviaAmphoraNetworkList:
  36. default: []
  37. description: List of networks to attach to amphorae.
  38. type: comma_delimited_list
  39. OctaviaAmphoraSshKeyName:
  40. type: string
  41. default: 'octavia-ssh-key'
  42. description: SSH key name.
  43. OctaviaLoadBalancerTopology:
  44. default: ''
  45. description: Load balancer topology configuration.
  46. type: string
  47. OctaviaFlavorId:
  48. default: '65'
  49. description: Nova flavor ID to be used when creating the nova flavor for
  50. amphora.
  51. type: string
  52. type: number
  53. OctaviaConnectionMaxRetries:
  54. default: 120
  55. description: Retry threshold for connecting to amphorae.
  56. type: number
  57. OctaviaConnectionLogging:
  58. default: true
  59. description: When false, tenant connection flows will not be logged.
  60. type: boolean
  61. OctaviaBuildActiveRetries:
  62. default: 120
  63. description: Retry threshold for waiting for a build slot for an amphorae.
  64. type: number
  65. OctaviaPortDetachTimeout:
  66. default: 300
  67. description: Seconds to wait for a port to detach from an amphora.
  68. type: number
  69. conditions:
  70. octavia_topology_unset: {equals : [{get_param: OctaviaLoadBalancerTopology}, ""]}
  71. resources:
  72. OctaviaBase:
  73. type: ./octavia-base.yaml
  74. properties:
  75. ServiceData: {get_param: ServiceData}
  76. ServiceNetMap: {get_param: ServiceNetMap}
  77. DefaultPasswords: {get_param: DefaultPasswords}
  78. EndpointMap: {get_param: EndpointMap}
  79. RoleName: {get_param: RoleName}
  80. RoleParameters: {get_param: RoleParameters}
  81. outputs:
  82. role_data:
  83. description: Role data for Octavia controller services.
  84. value:
  85. service_name: octavia_controller
  86. config_settings:
  87. map_merge:
  88. - get_attr: [OctaviaBase, role_data, config_settings]
  89. - octavia::controller::amp_boot_network_list: {get_param: OctaviaAmphoraNetworkList}
  90. octavia::controller::amp_flavor_id: {get_param: OctaviaFlavorId}
  91. octavia::controller::amp_image_tag: {get_param: OctaviaAmphoraImageTag}
  92. octavia::controller::amp_ssh_key_name: {get_param: OctaviaAmphoraSshKeyName}
  93. octavia::controller::enable_ssh_access: true
  94. octavia::controller::connection_max_retries: {get_param: OctaviaConnectionMaxRetries}
  95. octavia::controller::connection_logging: {get_param: OctaviaConnectionLogging}
  96. octavia::controller::build_active_retries: {get_param: OctaviaBuildActiveRetries}
  97. octavia::controller::port_detach_timeout: {get_param: OctaviaPortDetachTimeout}
  98. -
  99. if:
  100. - octavia_topology_unset
  101. - {}
  102. - octavia::controller::loadbalancer_topology: {get_param: OctaviaLoadBalancerTopology}