Merge "First iteration of libvirt and nova-compute as a composable services"
[apex-tripleo-heat-templates.git] / puppet / controller.yaml
index cfac1f9..e9833b4 100644 (file)
@@ -8,21 +8,37 @@ parameters:
     description: The password for the keystone admin account, used for monitoring, querying neutron etc.
     type: string
     hidden: true
-  AodhApiVirtualIP:
-    type: string
-    default: ''
   AodhPassword:
     description: The password for the aodh services.
     type: string
     hidden: true
   #TODO(composable Redis): Remove the Redis password param
   #As is used by ceilometer
-  CeilometerApiVirtualIP:
+  CeilometerBackend:
+    default: 'mongodb'
+    description: The ceilometer backend type.
     type: string
-    default: ''
-  CinderApiVirtualIP:
+  CeilometerMeteringSecret:
+    description: Secret shared by the ceilometer services.
     type: string
-    default: ''
+    hidden: true
+  CeilometerPassword:
+    description: The password for the ceilometer service  and db account.
+    type: string
+    hidden: true
+  CeilometerStoreEvents:
+    default: false
+    description: Whether to store events in ceilometer.
+    type: boolean
+  CeilometerMeterDispatcher:
+    default: 'database'
+    description: Dispatcher to process meter data
+    type: string
+    constraints:
+    - allowed_values: ['gnocchi', 'database']
+  CeilometerWorkers:
+    default: 0
+    description: Number of workers for Ceilometer service.
     type: number
   controllerExtraConfig:
     default: {}
@@ -71,10 +87,6 @@ parameters:
     default: false
     description: Whether to deploy Ceph Storage (OSD) on the Controller
     type: boolean
-  EnableSwiftStorage:
-    default: true
-    description: Whether to enable Swift Storage on the Controller
-    type: boolean
   ExtraConfig:
     default: {}
     description: |
@@ -129,9 +141,6 @@ parameters:
     default: 'mysql'
     description: The short name of the Gnocchi indexer backend to use.
     type: string
-  GnocchiApiVirtualIP:
-    type: string
-    default: ''
   GnocchiPassword:
     description: The password for the gnocchi service and db account.
     type: string
@@ -194,9 +203,6 @@ parameters:
     default: false
     description: Whether IPtables rules should be purged before setting up the new ones.
     type: boolean
-  SaharaApiVirtualIP:
-    type: string
-    default: ''
   MysqlClusterUniquePart:
     description: A unique identifier of the MySQL cluster the controller is in.
     type: string
@@ -243,9 +249,6 @@ parameters:
       will determine the MTU that is assigned to the VM host through DHCP.
     default: 1400
     type: number
-  NovaApiVirtualIP:
-    type: string
-    default: ''
   NovaEnableDBPurge:
     default: true
     description: |
@@ -269,9 +272,6 @@ parameters:
         Specifies the interface where the public-facing virtual ip will be assigned.
         This should be int_public when a VLAN is being used.
     type: string
-  PublicVirtualIP:
-    type: string
-    default: ''  # Has to be here because of the ignored empty value bug
   RabbitCookie:
     type: string
     default: ''  # Has to be here because of the ignored empty value bug
@@ -305,23 +305,11 @@ parameters:
     type: string
     default: ''  # Has to be here because of the ignored empty value bug
     description: An IP address which is wrapped in brackets in case of IPv6
-  SnmpdReadonlyUserName:
-    default: ro_snmp_user
-    description: The user name for SNMPd with readonly rights running on all Overcloud nodes
-    type: string
-  SnmpdReadonlyUserPassword:
-    description: The user password for SNMPd with readonly rights running on all Overcloud nodes
-    type: string
-    hidden: true
   SwiftHashSuffix:
     description: A random string to be used as a salt when hashing to determine mappings
       in the ring.
     hidden: true
     type: string
-  SwiftMountCheck:
-    default: 'false'
-    description: Value of mount_check in Swift account/container/object -server.conf
-    type: boolean
   SwiftMinPartHours:
     type: number
     default: 1
@@ -334,36 +322,17 @@ parameters:
     default: true
     description: Whether to manage Swift rings or not
     type: boolean
-  SwiftProxyVirtualIP:
-    type: string
-    default: ''
   SwiftReplicas:
     type: number
     default: 3
     description: How many replicas to use in the swift rings.
-  TimeZone:
-    default: 'UTC'
-    description: The timezone to be set on controller nodes.
-    type: string
   UpgradeLevelNovaCompute:
     type: string
     description: Nova Compute upgrade level
     default: ''
-  VirtualIP: # DEPRECATED: use per service settings instead
-    type: string
-    default: ''  # Has to be here because of the ignored empty value bug
-  HeatApiVirtualIP:
-    type: string
-    default: ''
-  HeatApiVirtualIPUri:
-    type: string
-    default: ''
   MysqlVirtualIP:
     type: string
     default: ''
-  NeutronApiVirtualIP:
-    type: string
-    default: ''
   EnablePackageInstall:
     default: 'false'
     description: Set to true to enable package installation via Puppet
@@ -585,6 +554,7 @@ resources:
       server: {get_resource: Controller}
       input_values:
         bootstack_nodeid: {get_attr: [Controller, name]}
+        ceilometer_workers: {get_param: CeilometerWorkers}
         haproxy_log_address: {get_param: HAProxySyslogAddress}
         haproxy_stats_password: {get_param: HAProxyStatsPassword}
         haproxy_stats_user: {get_param: HAProxyStatsUser}
@@ -606,7 +576,6 @@ resources:
         enable_galera: {get_param: EnableGalera}
         enable_load_balancer: {get_param: EnableLoadBalancer}
         enable_ceph_storage: {get_param: EnableCephStorage}
-        enable_swift_storage: {get_param: EnableSwiftStorage}
         manage_firewall: {get_param: ManageFirewall}
         purge_firewall_rules: {get_param: PurgeFirewallRules}
         mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize}
@@ -626,10 +595,15 @@ resources:
         neutron_admin_url: { get_param: [ EndpointMap, NeutronAdmin, uri ] }
         neutron_auth_url: { get_param: [ EndpointMap, KeystoneV3Admin, uri ] }
         nova_internal_url: { get_param: [ EndpointMap, NovaInternal, uri ] }
+        ceilometer_backend: {get_param: CeilometerBackend}
+        ceilometer_metering_secret: {get_param: CeilometerMeteringSecret}
+        ceilometer_password: {get_param: CeilometerPassword}
+        ceilometer_store_events: {get_param: CeilometerStoreEvents}
         aodh_password: {get_param: AodhPassword}
         aodh_internal_url: { get_param: [ EndpointMap, AodhInternal, uri ] }
         aodh_public_url: { get_param: [ EndpointMap, AodhPublic, uri ] }
         aodh_admin_url: { get_param: [ EndpointMap, AodhAdmin, uri ] }
+        ceilometer_meter_dispatcher: {get_param: CeilometerMeterDispatcher}
         gnocchi_password: {get_param: GnocchiPassword}
         gnocchi_backend: {get_param: GnocchiBackend}
         gnocchi_indexer_backend: {get_param: GnocchiIndexerBackend}
@@ -641,6 +615,15 @@ resources:
               - '@'
               - {get_param: RedisVirtualIPUri}
               - ':6379/'
+        ceilometer_dsn:
+          list_join:
+            - ''
+            - - {get_param: [EndpointMap, MysqlInternal, protocol]}
+              - '://ceilometer:'
+              - {get_param: CeilometerPassword}
+              - '@'
+              - {get_param: [EndpointMap, MysqlInternal, host]}
+              - '/ceilometer'
         gnocchi_dsn:
           list_join:
             - ''
@@ -665,8 +648,7 @@ resources:
         ceilometer_public_url: {get_param: [EndpointMap, CeilometerPublic, uri]}
         ceilometer_internal_url: {get_param: [EndpointMap, CeilometerInternal, uri]}
         ceilometer_admin_url: {get_param: [EndpointMap, CeilometerAdmin, uri]}
-        snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName}
-        snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
+        ceilometer_agent_auth_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
         nova_enable_db_purge: {get_param: NovaEnableDBPurge}
         nova_ipv6: {get_param: NovaIPv6}
         corosync_ipv6: {get_param: CorosyncIPv6}
@@ -702,7 +684,6 @@ resources:
         rabbit_cookie: {get_param: RabbitCookie}
         rabbit_client_use_ssl: {get_param: RabbitClientUseSSL}
         rabbit_client_port: {get_param: RabbitClientPort}
-        timezone: {get_param: TimeZone}
         control_virtual_interface: {get_param: ControlVirtualInterface}
         public_virtual_interface: {get_param: PublicVirtualInterface}
         swift_hash_suffix: {get_param: SwiftHashSuffix}
@@ -710,7 +691,6 @@ resources:
         swift_ring_build: {get_param: SwiftRingBuild}
         swift_replicas: {get_param: SwiftReplicas}
         swift_min_part_hours: {get_param: SwiftMinPartHours}
-        swift_mount_check: {get_param: SwiftMountCheck}
         enable_package_install: {get_param: EnablePackageInstall}
         enable_package_upgrade: {get_attr: [UpdateDeployment, update_managed_packages]}
         swift_proxy_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftProxyNetwork]}]}
@@ -752,6 +732,7 @@ resources:
         ceph_cluster_network: {get_attr: [NetIpMap, net_ip_subnet_map, {get_param: [ServiceNetMap, CephClusterNetwork]}]}
         ceph_public_network: {get_attr: [NetIpMap, net_ip_subnet_map, {get_param: [ServiceNetMap, CephPublicNetwork]}]}
         ceph_public_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CephPublicNetwork]}]}
+        ironic_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, IronicApiNetwork]}]}
 
   # Map heat metadata into hiera datafiles
   ControllerConfig:
@@ -834,7 +815,6 @@ resources:
                 tripleo::ringbuilder::part_power: {get_input: swift_part_power}
                 tripleo::ringbuilder::replicas: {get_input: swift_replicas}
                 tripleo::ringbuilder::min_part_hours: {get_input: swift_min_part_hours}
-                swift_mount_check: {get_input: swift_mount_check}
 
                 # Cinder
                 tripleo::profile::base::cinder::volume::iscsi::cinder_iscsi_address: {get_input: cinder_iscsi_network}
@@ -872,7 +852,6 @@ resources:
                 admin_password: {get_input: admin_password}
                 enable_galera: {get_input: enable_galera}
                 enable_ceph_storage: {get_input: enable_ceph_storage}
-                enable_swift_storage: {get_input: enable_swift_storage}
                 mysql_innodb_buffer_pool_size: {get_input: mysql_innodb_buffer_pool_size}
                 mysql_max_connections: {get_input: mysql_max_connections}
                 mysql::server::root_password: {get_input: mysql_root_password}
@@ -893,7 +872,33 @@ resources:
                 neutron::keystone::auth::region: {get_input: keystone_region}
 
                 # Ceilometer
+                ceilometer_backend: {get_input: ceilometer_backend}
+                ceilometer_mysql_conn_string: {get_input: ceilometer_dsn}
+                ceilometer::telemetry_secret: {get_input: ceilometer_metering_secret}
+                ceilometer::rabbit_userid: {get_input: rabbit_username}
+                ceilometer::rabbit_password: {get_input: rabbit_password}
+                ceilometer::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
+                ceilometer::rabbit_port: {get_input: rabbit_client_port}
+                ceilometer::debug: {get_input: debug}
                 ceilometer::api::host: {get_input: ceilometer_api_network}
+                ceilometer::api::keystone_password: {get_input: ceilometer_password}
+                ceilometer::api::auth_uri: {get_input: keystone_auth_uri}
+                ceilometer::api::identity_uri: {get_input: keystone_identity_uri}
+                ceilometer::agent::auth::auth_password: {get_input: ceilometer_password}
+                ceilometer::agent::auth::auth_url: {get_input: ceilometer_agent_auth_url}
+                ceilometer::agent::central::coordination_url: {get_input: ceilometer_coordination_url}
+                ceilometer::agent::notification::store_events: {get_input: ceilometer_store_events}
+                ceilometer::db::mysql::password: {get_input: ceilometer_password}
+                ceilometer::collector::meter_dispatcher: {get_input: ceilometer_meter_dispatcher}
+                ceilometer::dispatcher::gnocchi::url: {get_input: gnocchi_internal_url }
+                ceilometer::dispatcher::gnocchi::filter_project: 'service'
+                ceilometer::dispatcher::gnocchi::archive_policy: 'low'
+                ceilometer::dispatcher::gnocchi::resources_definition_file: 'gnocchi_resources.yaml'
+                ceilometer::keystone::auth::public_url: {get_input: ceilometer_public_url }
+                ceilometer::keystone::auth::internal_url: {get_input: ceilometer_internal_url }
+                ceilometer::keystone::auth::admin_url: {get_input: ceilometer_admin_url }
+                ceilometer::keystone::auth::password: {get_input: ceilometer_password }
+                ceilometer::keystone::auth::region: {get_input: keystone_region}
                 snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
                 snmpd_readonly_user_password: {get_input: snmpd_readonly_user_password}
 
@@ -991,7 +996,6 @@ resources:
                 # Misc
                 memcached_ipv6: {get_input: memcached_ipv6}
                 memcached::listen_ip: {get_input: memcached_network}
-                timezone::timezone: {get_input: timezone}
                 control_virtual_interface: {get_input: control_virtual_interface}
                 public_virtual_interface: {get_input: public_virtual_interface}
                 tripleo::keepalived::control_virtual_interface: {get_input: control_virtual_interface}