Add parameter to configure maxdelay in db purge/archive job

This patch introduces new parameters, CinderCronDbPurgeMaxDelay
and NovaCronDBArchivedMaxDelay, which enable us to configure
maxdelay parameter in cinder db purge cron job and nova db archive
cron job, like HeatCronPurgeDeletedMaxDelay which is used to
configure maxdelay in heat cron job.

Closes-Bug: #1823274
Change-Id: I112a228ed90a50aeee787e83a58a014519db7992
(cherry picked from commit 2a34ccb62b)
This commit is contained in:
Takashi Kajinami 2019-03-07 15:02:55 +09:00 committed by Pablo Caruana
parent 3873314737
commit 3a4a77356f
3 changed files with 19 additions and 0 deletions

View File

@ -88,6 +88,11 @@ parameters:
description: > description: >
Cron to move deleted instances to another table - Log destination Cron to move deleted instances to another table - Log destination
default: '/var/log/cinder/cinder-rowsflush.log' default: '/var/log/cinder/cinder-rowsflush.log'
CinderCronDbPurgeMaxDelay:
type: string
description: >
Cron to move deleted instances to another table - Max Delay
default: '3600'
RpcPort: RpcPort:
default: 5672 default: 5672
description: The network port for messaging backend description: The network port for messaging backend
@ -161,6 +166,7 @@ outputs:
cinder::cron::db_purge::user: {get_param: CinderCronDbPurgeUser} cinder::cron::db_purge::user: {get_param: CinderCronDbPurgeUser}
cinder::cron::db_purge::age: {get_param: CinderCronDbPurgeAge} cinder::cron::db_purge::age: {get_param: CinderCronDbPurgeAge}
cinder::cron::db_purge::destination: {get_param: CinderCronDbPurgeDestination} cinder::cron::db_purge::destination: {get_param: CinderCronDbPurgeDestination}
cinder::cron::db_purge::max_delay: {get_param: CinderCronDbPurgeMaxDelay}
cinder::glance::glance_api_servers: {get_param: [EndpointMap, GlanceInternal, uri]} cinder::glance::glance_api_servers: {get_param: [EndpointMap, GlanceInternal, uri]}
cinder::nova::interface: admin cinder::nova::interface: admin
cinder::nova::auth_type: password cinder::nova::auth_type: password

View File

@ -120,6 +120,11 @@ parameters:
description: > description: >
Cron to move deleted instances to another table that doesn't need backup - Week Day Cron to move deleted instances to another table that doesn't need backup - Week Day
default: '*' default: '*'
NovaCronDBArchivedMaxDelay:
type: string
description: >
Cron to move deleted instances to another table that doesn't need backup - Max Delay
default: '3600'
conditions: conditions:
@ -228,6 +233,7 @@ outputs:
nova::cron::archive_deleted_rows::monthday: {get_param: NovaCronDBArchivedMonthday} nova::cron::archive_deleted_rows::monthday: {get_param: NovaCronDBArchivedMonthday}
nova::cron::archive_deleted_rows::month: {get_param: NovaCronDBArchivedMonth} nova::cron::archive_deleted_rows::month: {get_param: NovaCronDBArchivedMonth}
nova::cron::archive_deleted_rows::weekday: {get_param: NovaCronDBArchivedWeekday} nova::cron::archive_deleted_rows::weekday: {get_param: NovaCronDBArchivedWeekday}
nova::cron::archive_deleted_rows::maxdelay: {get_param: NovaCronDBArchivedMaxDelay}
nova_enable_db_archive: {get_param: NovaEnableDBArchive} nova_enable_db_archive: {get_param: NovaEnableDBArchive}
nova::policy::policies: {get_param: NovaApiPolicies} nova::policy::policies: {get_param: NovaApiPolicies}
- -

View File

@ -0,0 +1,7 @@
---
features:
- |
New parameters, NovaCronDBArchivedMaxDelay and CinderCronDbPurgeMaxDelay,
are introduced to configure max_delay parameter to calculate randomized
sleep time before db archive/purge. This avoids db collisions when
performing db archive/purge operations on multiple controller nodes.