Add backup and restore support for single instance couchbase

Registered by Michael Yu

Given that couchbase single instance has merged, it would be nice to have backup/restore functionality.

Backup strategy:
- Save bucket metadata config (as json file) to /tmp/backups
- This is needed on restore to create the destination buckets
- Handles root enabled case by also saving /tmp/secret_key to /tmp/backups
- Use cbbackup to do the backup
- /tmp/backups will be zipped up, encrypted, and sent to Swift
- If no buckets, backup will error out

Restore strategy:
- If /tmp/backups/secret_key exists, set root password
- Iterate through bucket metadata config (json file) and use Couchbase
  REST API to create each bucket
- Wait until bucket finishes creating
- Use cbrestore (which requires destination buckets to be manually
  created first) to do the restore
- cbrestore can only restore one bucket at a time

Blueprint information

Status:
Complete
Approver:
Nikhil Manchanda
Priority:
Low
Drafter:
Michael Yu
Direction:
Approved
Assignee:
Michael Yu
Definition:
Approved
Series goal:
Accepted for juno
Implementation:
Implemented
Milestone target:
milestone icon 2014.2
Started by
Michael Yu
Completed by
Nikhil Manchanda

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/backups-single-instance-couchbase,n,z

Addressed by: https://review.openstack.org/86731
    Adds backup/restore support for couchbase

Addressed by: https://review.openstack.org/81640
    Add support for 'trove root-enable' in Couchbase

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.