1 heat_template_version: pike
4 MongoDb service deployment using puppet
7 #Parameters not used EndpointMap
10 description: Mapping of service_name -> network name. Typically set
11 via parameter_defaults in the resource registry. This
12 mapping overrides those in ServiceNetMapDefaults.
19 description: Role name on which the service is applied
23 description: Parameters specific to the role
27 description: Mapping of service endpoint -> protocol. Typically set
28 via parameter_defaults in the resource registry.
32 description: Limit the amount of memory mongodb uses with systemd.
36 description: Fluentd logging configuration for mongodb.
39 path: /var/log/mongodb/mongodb.log
41 /(?<time>\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d+\+\d{4})
49 internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]}
53 type: ./mongodb-base.yaml
55 ServiceNetMap: {get_param: ServiceNetMap}
56 DefaultPasswords: {get_param: DefaultPasswords}
57 EndpointMap: {get_param: EndpointMap}
58 RoleName: {get_param: RoleName}
59 RoleParameters: {get_param: RoleParameters}
63 description: Service mongodb using composable services.
68 logging_source: {get_param: MongoDbLoggingSource}
71 - get_attr: [MongoDbBase, role_data, config_settings]
72 - tripleo::profile::base::database::mongodb::mongodb_replset: {get_attr: [MongoDbBase, aux_parameters, rplset_name]}
73 tripleo::profile::base::database::mongodb::memory_limit: {get_param: MongodbMemoryLimit}
74 mongodb::server::service_manage: True
75 tripleo.mongodb.firewall_rules:
78 '102 mongodb_sharding':
82 # NOTE: bind IP is found in Heat replacing the network name with the
83 # local node IP for the given network; replacement examples
84 # (eg. for internal_api):
86 # internal_api_uri -> [IP]
87 # internal_api_subnet - > IP/CIDR
88 mongodb::server::bind_ip: {get_param: [ServiceNetMap, MongodbNetwork]}
91 - internal_tls_enabled
93 generate_service_certificates: true
94 mongodb::server::ssl: true
95 mongodb::server::ssl_key: '/etc/pki/tls/certs/mongodb.pem'
96 mongodb_certificate_specs:
97 service_pem: '/etc/pki/tls/certs/mongodb.pem'
98 service_certificate: '/etc/pki/tls/certs/mongodb.crt'
99 service_key: '/etc/pki/tls/private/mongodb.key'
102 template: "%{hiera('fqdn_NETWORK')}"
104 NETWORK: {get_param: [ServiceNetMap, MongodbNetwork]}
107 template: "mongodb/%{hiera('fqdn_NETWORK')}"
109 NETWORK: {get_param: [ServiceNetMap, MongodbNetwork]}
112 include ::tripleo::profile::base::database::mongodb
114 - name: Stop mongodb service
116 service: name=mongod state=stopped
117 - name: Start mongodb service
119 service: name=mongod state=started
122 - internal_tls_enabled
125 network: {get_param: [ServiceNetMap, MongodbNetwork]}