Skip to content

Commit 8542ee4

Browse files
stuggiclaude
andcommitted
Document features added for backup/restore support
Add "Features Added for Backup/Restore" section to README documenting: - Staged Deployment (PR openstack-k8s-operators#1785): Pause deployment after infrastructure ready to allow database restore before services start - Service Name Caching (PR openstack-k8s-operators#1796): Preserve service names across backup/restore when UniquePodNames is enabled Update enhancement-staged-deployment-restore.md: - Mark status as Implemented with reference to PR openstack-k8s-operators#1785 - Keep document as historical reference and context Add link from backup-restore-ctlplane.md to enhancement document to provide detailed context on staged deployment feature. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 3e51725 commit 8542ee4

3 files changed

Lines changed: 17 additions & 3 deletions

File tree

docs/dev/README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,15 @@ ansible-playbook restore-openstack-ctlplane.yaml
4949
ansible-playbook restore-openstack-dataplane.yaml
5050
```
5151

52+
## Features Added for Backup/Restore
53+
54+
The following enhancements were implemented to enable reliable backup and restore:
55+
56+
| Feature | PR | Description |
57+
|---------|-----|-------------|
58+
| **Staged Deployment** | [#1785](https://github.com/openstack-k8s-operators/openstack-operator/pull/1785) | Allows pausing deployment after infrastructure (MariaDB, OVN, RabbitMQ) is ready but before OpenStack services start. Enables database restore before services initialize schemas, avoiding conflicts and service restarts. See [enhancement-staged-deployment-restore.md](enhancement-staged-deployment-restore.md) for details. |
59+
| **Service Name Caching** | [#1796](https://github.com/openstack-k8s-operators/openstack-operator/pull/1796) | Ensures service names remain consistent across backup/restore when `UniquePodNames` is enabled. Service names are cached via webhook during initial creation and preserved when CR is recreated from backup, preventing service name changes that would break references. |
60+
5261
## Key Concepts
5362

5463
### ControlPlane vs DataPlane

docs/dev/backup-restore-ctlplane.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,8 @@ flowchart TD
178178
- **Resume Deployment**: Removing the `deployment-stage` annotation triggers creation of OpenStack services
179179
- **Services Start Clean**: Keystone, Nova, etc. start with already-restored databases (no restarts needed)
180180

181+
**Staged Deployment Feature**: The staged deployment mechanism using the `deployment-stage` annotation is a key feature for reliable restores. For detailed context on why this feature was implemented and how it works, see [enhancement-staged-deployment-restore.md](enhancement-staged-deployment-restore.md).
182+
181183
**Important**: While we don't backup RabbitMQ queue data, we create a fresh RabbitMQ cluster on restore. The RabbitMQ default user credentials **MUST be backed up and manually restored** for EDPM/data plane deployments. See "RabbitMQ User Management" in the Scope section for details.
182184

183185
## Prerequisites

docs/dev/enhancement-staged-deployment-restore.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,17 @@
22

33
## Metadata
44

5-
- **Status**: Proposed
5+
- **Status**: Implemented
66
- **Author**: OpenStack Operator Development Team
77
- **Created**: 2026-01-23
8+
- **Implemented**: 2026-02-10 via [PR #1785](https://github.com/openstack-k8s-operators/openstack-operator/pull/1785)
89
- **Related Documentation**:
9-
- [backup-restore-stateless.md](backup-restore-stateless.md)
10+
- [backup-restore-ctlplane.md](backup-restore-ctlplane.md)
1011
- [backup-restore-ovn.md](backup-restore-ovn.md)
1112
- [backup-restore-pvc.md](backup-restore-pvc.md)
1213

14+
**Note**: This document is kept as historical reference and context for the staged deployment feature. The feature is now part of the main codebase.
15+
1316
## Summary
1417

1518
Add support for staged deployment to the OpenStackControlPlane controller, allowing infrastructure services (MariaDB, OVN, RabbitMQ, Memcached) to be created and paused before OpenStack services are deployed. This enables database restore to occur before services start, resulting in a cleaner and more reliable restore process.
@@ -520,7 +523,7 @@ echo "✓ All services ready"
520523

521524
Update all restore documentation to mention staged deployment:
522525

523-
**backup-restore-stateless.md:**
526+
**backup-restore-ctlplane.md:**
524527
```markdown
525528
## Restore Procedure
526529

0 commit comments

Comments
 (0)