1 heat_template_version: pike
4 MongoDb service deployment using puppet
7 #Parameters not used EndpointMap
10 description: Dictionary packing service data
14 description: Mapping of service_name -> network name. Typically set
15 via parameter_defaults in the resource registry. This
16 mapping overrides those in ServiceNetMapDefaults.
23 description: Role name on which the service is applied
27 description: Parameters specific to the role
31 description: Mapping of service endpoint -> protocol. Typically set
32 via parameter_defaults in the resource registry.
36 description: Limit the amount of memory mongodb uses with systemd.
40 description: Fluentd logging configuration for mongodb.
43 path: /var/log/mongodb/mongodb.log
45 /(?<time>\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d+\+\d{4})
53 internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]}
57 type: ./mongodb-base.yaml
59 ServiceData: {get_param: ServiceData}
60 ServiceNetMap: {get_param: ServiceNetMap}
61 DefaultPasswords: {get_param: DefaultPasswords}
62 EndpointMap: {get_param: EndpointMap}
63 RoleName: {get_param: RoleName}
64 RoleParameters: {get_param: RoleParameters}
68 description: Service mongodb using composable services.
73 logging_source: {get_param: MongoDbLoggingSource}
76 - get_attr: [MongoDbBase, role_data, config_settings]
77 - tripleo::profile::base::database::mongodb::mongodb_replset: {get_attr: [MongoDbBase, aux_parameters, rplset_name]}
78 tripleo::profile::base::database::mongodb::memory_limit: {get_param: MongodbMemoryLimit}
79 mongodb::server::service_manage: True
80 tripleo.mongodb.firewall_rules:
83 '102 mongodb_sharding':
87 # NOTE: bind IP is found in Heat replacing the network name with the
88 # local node IP for the given network; replacement examples
89 # (eg. for internal_api):
91 # internal_api_uri -> [IP]
92 # internal_api_subnet - > IP/CIDR
93 mongodb::server::bind_ip: {get_param: [ServiceNetMap, MongodbNetwork]}
96 - internal_tls_enabled
98 generate_service_certificates: true
99 mongodb::server::ssl: true
100 mongodb::server::ssl_key: '/etc/pki/tls/certs/mongodb.pem'
101 mongodb_certificate_specs:
102 service_pem: '/etc/pki/tls/certs/mongodb.pem'
103 service_certificate: '/etc/pki/tls/certs/mongodb.crt'
104 service_key: '/etc/pki/tls/private/mongodb.key'
107 template: "%{hiera('fqdn_NETWORK')}"
109 NETWORK: {get_param: [ServiceNetMap, MongodbNetwork]}
112 template: "mongodb/%{hiera('fqdn_NETWORK')}"
114 NETWORK: {get_param: [ServiceNetMap, MongodbNetwork]}
117 include ::tripleo::profile::base::database::mongodb
119 - name: Stop mongodb service
121 service: name=mongod state=stopped
122 - name: Start mongodb service
124 service: name=mongod state=started
127 - internal_tls_enabled
130 network: {get_param: [ServiceNetMap, MongodbNetwork]}