Add DB2 as an option for backend database

Registered by Thuy Christenson on 2013-01-10

Current OpenStack supports multiple open source database as the backend database, for example: MySQL, SQLite, PostgreSQL are the default supported database for the community.

I plan to contribue changes to Cinder to allow the use of DB2 as the backing database, and doing so will require me to:

1. Update Cinder project to support DB2 initialization and access by updating the SQLALchemy-migrate code.
2. Run tempest on a DB2 installed environment

Blueprint information

Status:
Complete
Approver:
Mike Perez
Priority:
Low
Drafter:
None
Direction:
Approved
Assignee:
Jay Bryant
Definition:
Approved
Series goal:
Accepted for liberty
Implementation:
Implemented
Milestone target:
milestone icon 7.0.0
Started by
Jay Bryant on 2014-07-02
Completed by
John Griffith on 2015-08-31

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/db2-database,n,z

Addressed by: https://review.openstack.org/56290
    Fix BVT cinder test_volume_from_image failure in DB2

@jdg:
Is this for the "free" version of db2? Will need to make sure we get CI versions of this running as well.

@jsbryant:
Given your question here as well as in the review referenced above, I thought I should probably provide additional details here with regards to DB2 Enablement. I have the following Wiki page that provides additional details: https://wiki.openstack.org/wiki/DB2Enablement#Supported_DB2_Levels .

SQLAlchemy already supports DB2, the ibm_db_sa packages are available in pypi and SQLAlchemy-migrate is close to having DB2 support integrated. Additionally, Keystone has been patched to support DB2 and the changes for Nova are currently out for review.

Fortunately, Cinder has required few changes to enable DB2 support. I am working on getting the unittests working.

@jsbryant:
Forgot to mention that IBM is working to address the CI issue. First we have code written to enable devstack to setup an install for DB2. We are also working to get a third test running.

Addressed by: https://review.openstack.org/61899
    Update test_migrations to support DB2 (ibm-db-sa)

Addressed by: https://review.openstack.org/97644
    Add spec for DB2 database enablement

@jsbryant (7/5/2014):
I have made good progress on this. I have the code mostly in place and just need to finish working out some details before pushing the code up.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.