diff --git a/deployment/nova/nova-base-puppet.yaml b/deployment/nova/nova-base-puppet.yaml index 6971510997..f3b80f0c1f 100644 --- a/deployment/nova/nova-base-puppet.yaml +++ b/deployment/nova/nova-base-puppet.yaml @@ -120,7 +120,7 @@ parameters: type: string description: > Cron to move deleted instances to another table - Max Rows - default: '100' + default: '1000' NovaCronArchiveDeleteRowsUser: type: string description: > @@ -146,6 +146,20 @@ parameters: description: > Purge shadow tables immediately after scheduled archiving default: false + NovaCronArchiveDeleteAllCells: + type: boolean + description: > + Archive deleted instances from all cells + default: true + NovaCronArchiveDeleteRowsAge: + type: number + description: > + Cron to archive deleted instances - Age + This will define the retention policy when + archiving the deleted instances entries in days. + 0 means, purge data older than today in + shadow tables. + default: 90 NovaCronPurgeShadowTablesMinute: type: string description: > @@ -204,7 +218,7 @@ parameters: type: boolean description: > Cron to purge shadow tables - All cells - default: false + default: true NovaOVSDBConnection: type: string description: OVS DB connection string to used by Nova @@ -339,6 +353,8 @@ outputs: nova::cron::archive_deleted_rows::maxdelay: {get_param: NovaCronArchiveDeleteRowsMaxDelay} nova::cron::archive_deleted_rows::until_complete: {get_param: NovaCronArchiveDeleteRowsUntilComplete} nova::cron::archive_deleted_rows::purge: {get_param: NovaCronArchiveDeleteRowsPurge} + nova::cron::archive_deleted_rows::all_cells: {get_param: NovaCronArchiveDeleteAllCells} + nova::cron::archive_deleted_rows::age: {get_param: NovaCronArchiveDeleteRowsAge} nova::cron::purge_shadow_tables::minute: {get_param: NovaCronPurgeShadowTablesMinute} nova::cron::purge_shadow_tables::hour: {get_param: NovaCronPurgeShadowTablesHour} nova::cron::purge_shadow_tables::monthday: {get_param: NovaCronPurgeShadowTablesMonthday} diff --git a/releasenotes/notes/nova_cron_archive_delete_parameters-19288fa689965c58.yaml b/releasenotes/notes/nova_cron_archive_delete_parameters-19288fa689965c58.yaml new file mode 100644 index 0000000000..432354e548 --- /dev/null +++ b/releasenotes/notes/nova_cron_archive_delete_parameters-19288fa689965c58.yaml @@ -0,0 +1,22 @@ +--- +features: + - | + Introduces two new parameters to configure the archive deleted + instances cron job. + 1) NovaCronArchiveDeleteAllCells + To make sure deleted instances get archived also from the cell0 + in a single cell deployment and also in additional cell databases + in case of a multi cell deployment. + + 2) NovaCronArchiveDeleteRowsAge + --before is required to prevent the orphaning of libvirt guests + if/when nova-compute is down when a db archive cron job fires. + + This change also modifies + 1) the default from 100 to 1000 for NovaCronArchiveDeleteRowsMaxRows + to match the default from the nova-manage command instead the default + of 100 from the puppet-nova parameter. + + 2) changes the default for NovaCronPurgeShadowTablesAllCells from + false to true also the nova-manage db purge command needs to run + for all cells instead of only the default cell.