Commit Graph

547 Commits

Author SHA1 Message Date
Takashi Kajinami fe1a64c61e Remove support for amqp1 messaging driver
The base implementation in puppet-oslo was deprecated during the 2023.2
cycle[1], so can be removed now.

[1] e174113210699b433dbae4c2c5a68bc3d269b5c3

Change-Id: Ifb55059f65f7cf527f96550ec14160e98ac23a62
2024-05-08 12:34:30 +09:00
Zuul ea4e7e2a7b Merge "Adjust default polling interval" 2024-05-03 17:40:29 +00:00
Zuul d8f2fbf1b7 Merge "db sync: Add native parameter for --skip-gnocchi-resource-types" 2024-05-03 17:40:28 +00:00
Zuul c6b2d43dc7 Merge "Add parameters to customize config file paths" 2024-05-03 17:20:08 +00:00
Takashi Kajinami 0982884e13 Adjust default polling interval
The default polling interval was updated from 600 to 300 in ceilometer
itself[1] but the default value in the polling class wasn't updated.

This updates the default value in our module so that we use the value
consistent with what is maintained in ceilometer repo.

[1] fc086ba3b38683765eabcdb45613463d85cb38fa

Change-Id: I7bcbbebf093228b0885b2647d86e47e2b673e518
2024-05-03 19:24:06 +09:00
Takashi Kajinami 94cc530955 Add parameters to customize config file paths
... and also set the cfg_file options to ensure that the generated
files are used.

Change-Id: I228647f8f4ab36d9affac25c36cc2aeacbf36781
2024-05-03 03:12:22 +09:00
Takashi Kajinami 301f5df8b4 db sync: Add native parameter for --skip-gnocchi-resource-types
The --skip-gnocchi-resource-types option is required in case gnocchi is
not used as metric backend. Add the native class parameter so that
users can enable this option more easily.

Change-Id: I10b09b12c0ab93c68b3d1ad215730b882736b1cf
2024-05-02 18:49:31 +09:00
Takashi Kajinami a20047d795 Drop clean-up of [DEFAULT] tenant_name_discovery
The option should be purged when a deployment is upgraded to 2024.1
(or created from scratch).

Change-Id: I9210cdffccdd36b12c5a8a1a5a13a6d2d78396db
2024-04-20 22:31:26 +09:00
Zuul f445dd6c14 Merge "Expose rabbit_transient_quorum_queue" 2024-03-14 18:25:37 +00:00
Takashi Kajinami a1d1578eb3 Expose rabbit_transient_quorum_queue
Depends-on: https://review.opendev.org/911021
Change-Id: I13dd3b7a88c9ea5e1d9f7543111f85b5a4e84cde
2024-03-13 16:16:33 +09:00
Takashi Kajinami 67079e54d5 cache: Support new redis options
The oslo.cache 3.7.0 release introduced some options for redis backend
and redis sentinel backend. This introduces for these parameters.

Depneds-on: https://review.opendev.org/910629
Change-Id: I6c7ca526af7ddba27660791c23d1895d668b460b
2024-03-07 22:49:25 +09:00
Zuul 68a7a1208f Merge "Refactor resource dependencies" 2024-03-03 23:29:23 +00:00
Zuul e3114760da Merge "cache: Support options for SASL mechanism in memcached" 2024-03-03 22:58:09 +00:00
Takashi Kajinami 100c40e24e Refactor resource dependencies
... to avoid unnecessary cross-service dependencies.

Change-Id: I428d52219c72cf48fdc3eb034d44092137608245
2024-03-01 12:23:35 +09:00
Takashi Kajinami 66b692a0ae cache: Support options for SASL mechanism in memcached
Depends-on: https://review.opendev.org/910122
Change-Id: I5affe66258440edbd52c487374a31fca92370093
2024-03-01 10:32:11 +09:00
Takashi Kajinami b8a4f9d20e Add support for oslo.reports options
Depends-on: https://review.opendev.org/804804
Change-Id: I9bda11ff00d1043747428100f92f24d89a1df0bb
2024-01-31 11:01:59 +09:00
Takashi Kajinami e2fe2db17e Support [cache] memcache_pool_flush_on_reconnect
Depends-on: https://review.opendev.org/902861
Change-Id: I4d104dc7a3937d0a9c4ab3e02dbcd1280bcdfa09
2023-12-14 17:54:02 +09:00
Takashi Kajinami c6a7b16567 Make telemetry_secret actually required
... as is described. This option should be set to an appropriate key
value and the previous default (False) is not suitable for production
use.

Change-Id: Ic54025f2b6c1d023a8458491e3f26dda8adbceb0
2023-12-06 01:56:51 +09:00
Takashi Kajinami ff0ab3b9e7 Ensure keystone resources are created before starting services
Some services such as ceilometer-polling requires valid identity, so
we should ensure the identity resources are created before the services
are started.

Change-Id: Ifff2d097efa97156023b9bdc5ff62332f7875cac
2023-11-20 02:06:10 +09:00
Takashi Kajinami ccf4c50573 RabbitMQ: Add support for quorum queue options
Depends-on: https://review.opendev.org/894866
Change-Id: I007ca152da1c40564bb575b62eb8ff975970865a
2023-09-14 14:46:43 +09:00
Yadnesh Kulkarni 204a8b398d Set 'tenant_name_discovery' parameter in 'polling' section
As of now 'tenant_name_discovery'[1] is being configured in 'DEFAULT' section in ceilometer config file.

As per Ceilometer this must be configured as a polling option[2].

[1] https://github.com/openstack/ceilometer/blob/master/ceilometer/polling/manager.py#L69-L80
[2] https://github.com/openstack/ceilometer/blob/master/ceilometer/opts.py#L98

Change-Id: Ib5c273df325f5ed0dccf7f45a9c7a91aba9568c3
2023-08-25 19:14:00 +09:00
Takashi Kajinami 8a5b3ffbf1 Ensure purge_config takes a boolean value
The purge_config parameters only accept boolean values. This enforces
that using the typed parameters.

Change-Id: Ic78d8c273f9dfd5d979b2e449fc36ec9aa77f262
2023-07-17 13:01:02 +09:00
Takashi Kajinami 180cb23ce0 Ensure proper type for polling_meters
This parameter requires an array value. Let's validate the input at
the parameter layer to avoid unexpected failure within the lower logic.

Change-Id: Ib370a7c6930398675e8c18011e9ea8d5a90d0525
2023-06-22 16:15:13 +09:00
Zuul 51985be052 Merge "replace validate_legacy with proper data types" 2023-06-20 00:18:21 +00:00
Takashi Kajinami 0827ad6fc3 replace validate_legacy with proper data types
the validate_legacy function is marked for deprecation in
v9.0.0 from puppetlabs-stdlib.

Change-Id: I8656f4aba542881afa68966cc63bd8c085b52bda
2023-06-19 02:46:02 +00:00
Yadnesh Kulkarni 524ae2eead Add "tenant_name_discovery" to all namespaces
Upon enabling this parameter in all namespaces, ceilometer
agents(central, compute, ipmi) will be able to identify users
and project names in the metrics generated from their nodes.

Without this change, the parameter is missing in compute and
ipmi namespace.

Change-Id: I0c047e9c8e33c05247d7af69d2a80e7cc22a0304
2023-06-13 10:55:39 +05:30
Takashi Kajinami fc69abdfd2 Add strict validation about boolean parameters
This ensures the parameters used by if-else logic accept only boolean
values because non-boolean can result in unexpected behavior.

Change-Id: Iaf3c11b61dc738d267282a6bc1d445a554695178
2023-03-03 04:37:46 +00:00
Takashi Kajinami 331b15d107 Replace legacy facts and use fact hash
... because the latest lint no longer allows usage of legacy facts and
top scope fact.

Change-Id: Iffdf359f0db141d80168e7bbaa0b10af31ae0ac6
2023-03-01 15:25:59 +09:00
Zuul 31cead15d3 Merge "Remove snmp metrics from polling.yaml" 2023-02-21 04:05:34 +00:00
Takashi Kajinami 5699fe2418 Support separate polling agents
This change introduces capability to use separate polling agents
(central, compute and ipmi) instead of the single polling service.

Change-Id: Idaa46ad71f4bedaca91b75a732649de967663659
2023-02-15 17:21:23 +09:00
Takashi Kajinami 704a6ea58c Remove snmp metrics from polling.yaml
These metrics are no longer supported by ceilometer since
GenericHardwareDeclarativePollster was removed.

Closes-Bug: #2007108
Depends-on: https://review.opendev.org/c/openstack/ceilometer/+/840808
Change-Id: I0b5d6b360e8912a78f041806323d6b5bc8d87258
2023-02-13 17:59:02 +09:00
Takashi Kajinami fa2b78f2ea notification: Support tuning batch processing
This change introduces support for the option to tune batch processing
by notification agent.

Change-Id: I9cdbbe9becfffce68966a29b9e803218637d7714
2023-01-23 23:06:47 +09:00
Takashi Kajinami 834d9a6780 Remove implementations to set up Ceilometer DB
Ceilometer no longer requires its own database since metric/event
storage was offloaded to Gnocchi/Panko. These implementations were
formally deprecated during the previous cycle[1] so can be removed.

This also updates the outdated example manifests to adapt to
the removal and the recent refactoring.

[1] 60882c29df

Change-Id: Id18b9221703eda9311b81c5a5dfdd41cc68f5424
2022-11-24 14:08:10 +09:00
Takashi Kajinami 6d78011587 Remove parameters for [hardware] options
... because these parameters were deprecated during the previous
cycle[1] and the feature has been removed from Ceilometer already.

[1] e5ce40b16d

Change-Id: Ibaba550aa9a13c7b1afb62970e391c1d4beb2f08
2022-11-15 11:15:50 +09:00
Yadnesh Kulkarni b00000fb86 Add new parameter `tenant_name_discovery`
Enabling this parameter will identify user and project
names from the polled metrics [1].

These details are collected by making additional requests
to keystone service, depending upon the scale of environment,
number of projects/users and the count of metrics polled in
every iteration, enabling this could overwhelm the keystone
service.

[1] Iee5dbf09a1fd3ac571746fc66d2683eb8e6a1b27

Depends-on: https://review.opendev.org/852948
Signed-off-by: Yadnesh Kulkarni <ykulkarn@redhat.com>
Change-Id: I045c7cd7a86d0f7f97a9078cbfc74353dcff0eb8
2022-09-21 13:35:48 +09:00
Takashi Kajinami 1dcdea2e62 Forcefully purge [hardware] readonly_user_* parameters
This is follow-up of e5ce40b16d and now
enforces that the parameters are removed from ceilometer.conf because
these were already removed from ceilometer and no longer used.

Depends-on: https://review.opendev.org/840808
Change-Id: I4d9196133ead84d4b388929231ce970882fcaaa6
2022-09-08 00:05:44 +09:00
Takashi Kajinami f42458bfe6 Remove deprecated notificaton_workers
... because the parameter was deprecated during Wallaby cycle[1] in
favor of the new workers parameter.

[1] 15921006c5

Change-Id: I787bbe850cfcca737b9ad9de5db676b868549f2e
2022-08-17 08:54:12 +09:00
Takashi Kajinami 2f053934da Remove deprecated ceilometer::agent::polling::coordination_url
... because it was deprecated during Xena cycle[1] in favor of the new
ceilometer::coordination class.

[1] 1155b41db0

Change-Id: I0885b79bd83bcc3b41b8da0bd0fd00f29d176f13
2022-08-05 01:14:49 +09:00
Zuul 3f9fa0dc6f Merge "Deprecate classes to set up Ceilometer DB" 2022-06-20 19:38:10 +00:00
Takashi Kajinami 60882c29df Deprecate classes to set up Ceilometer DB
Since metric/event storage was offloaded to Gnocchi/Panko, ceilometer
no longer requires its own backend storage.

Change-Id: Idf9904e7e8f1b5eca3f25cd37fb83e9adbca0995
2022-06-20 10:08:13 +09:00
Takashi Kajinami a8e2dc6891 Clean up deprecated cache parameters
These parameters were deprecated during Yoga cycle[1].

[1] a7cf7060dd

Change-Id: I0358678a9298dfceb9c4ebf918ef334f0f5e496d
2022-06-19 21:53:29 +09:00
Rajesh Tailor 7d3af77f01 Fix typos in parameter descriptions and tests
Change-Id: Id17358fce48468284f162a6de35840d439871cd5
2022-06-17 19:07:22 +05:30
Takashi Kajinami eafc908871 Refactor service user/group management
This change refactors how the ceilometer service user and group are
managed.

- The ceilometer service user and group are created by the common
  package. While the user resource should still be declared to manage
  its group membership, we don't need the group resource.

- Introduces the configuration knob to disable user/group management.
  This would be useful in the case where all service users are
  declared externally.

Change-Id: Iaabe5b02f0ebd782debd0f3ca41e2fdafbf9c80f
2022-05-16 11:57:13 +09:00
Zuul a569c41855 Merge "polling: Ensure unused parameters are cleared" 2022-05-11 10:29:07 +00:00
Takashi Kajinami e5ce40b16d Deprecate support for [hardware] options
... because these options were deprecated during the Yoga cycle when
GenericHardwareDeclarativePollster was deprecated[1].

[1] d10f6ca32fd9dfe5100cb54531adb4bba866edf8

Change-Id: I2bf6423d54234822b05a1a22f3cc29d0f7a3c1e7
2022-05-06 12:20:09 +09:00
Takashi Kajinami 2c48365980 polling: Ensure unused parameters are cleared
... instead of leaving the parameters unmanaged.

Change-Id: I0eeb25b131385ad4448fc8cec04efbdce0b7d87a
2022-05-06 11:26:26 +09:00
Takashi Kajinami 5f52d0d0e7 Globally support system scope credentials
After spending huge effort to understand the exact requirements to
enforce SRBAC, we learned it's very difficult to find the required
scope in each credential. This requires understanding implementation of
client-side as well as server-side, and requirement might be different
according to the deployment architecture or features used.

Instead of implementing support based on the actual implementation,
this introduces support for system scope credentials to all places
where keystone user credential is defined, and make all credential
configurations consistent.

Change-Id: I3a659a6b43d9c47e88334c24fb866a73a8f24a24
2022-03-04 01:16:58 +09:00
Zuul 8ea0c1a747 Merge "Fix missing mode/owner/group enforcement of polling.yaml" 2022-02-22 16:25:04 +00:00
Takashi Kajinami 8ac9135920 Fix missing mode/owner/group enforcement of polling.yaml
... and avoid hard-coding user/group but use the definition in
the params class.

Change-Id: Ia5f1e356902ad544fe7eb17e53b3b274475d40a8
2022-02-20 19:07:33 +09:00
Zuul 1532a32b9c Merge "Remove deprecated database_min_pool_size" 2022-02-19 16:34:55 +00:00