summaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorMariam John <mariamj@us.ibm.com>2016-01-20 12:16:29 -0600
committerMariam John <mariamj@us.ibm.com>2016-03-15 14:37:35 -0500
commit65917f3ec06c0c5c615518b7072c3a31c19d6001 (patch)
tree92bf8313dab20a8bdd79359a0bf82198f2304f75 /etc
parent8d9af8c4c8eaa1b40e0192d6fa0fc47c1a230672 (diff)
downloadtrove-65917f3ec06c0c5c615518b7072c3a31c19d6001.tar.gz
Implement Backup and Restore for CouchDB
The recommended method for doing full backups in CouchDB has been a simple filesystem copy of the data files. This is because CouchDB stores data in wholly contained append only files. For example, when a user creates a database, a corresponding <database-name>.couch file is created in the database directory. The backup functionality has been implemented by compressing the database directory and then encrypting it and sending it over to store in Swift. Similarly, the restore functionality has been implemented by fetching the files from Swift and uncompressing them into the database directory. After this, the ownership of the directory needs to be updated. To test the changes, follow the steps: - Create a CouchDB instance - Access the admin console called Futon using the following url: http://10.0.0.5:5984/_utils/ - Create a database from there and create one or more documents - Create a backup of this CouchDB instance - Create another CouchDB instance from the backup created above - Access the admin console for this new instance and verify that the database created above is there couchdb client library for the integration tests has been added to global-requirements: https://review.openstack.org/#/c/285191/ Change-Id: Iad6d69bf60ace73825819081964a43ad53d6c6fc Implements: blueprint couchdb-backup-restore
Diffstat (limited to 'etc')
-rw-r--r--etc/trove/trove-guestagent.conf.sample6
1 files changed, 6 insertions, 0 deletions
diff --git a/etc/trove/trove-guestagent.conf.sample b/etc/trove/trove-guestagent.conf.sample
index dbd3069b..b4b2063a 100644
--- a/etc/trove/trove-guestagent.conf.sample
+++ b/etc/trove/trove-guestagent.conf.sample
@@ -161,3 +161,9 @@ restore_namespace = trove.guestagent.strategies.restore.experimental.cassandra_i
# backup_strategy = DB2Backup
# backup_namespace = trove.guestagent.strategies.backup.experimental.db2_impl
# restore_namespace = trove.guestagent.strategies.restore.experimental.db2_impl
+
+[couchdb]
+#For CouchDB, the following are the defaults for backup and restore:
+# backup_strategy = CouchDBBackup
+# backup_namespace = trove.guestagent.strategies.backup.experimental.couchdb_impl
+# restore_namespace = trove.guestagent.strategies.restore.experimental.couchdb_impl