Re: openstack-nova default database

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hey,

On Thu, 2011-11-17 at 15:22 -0500, Russell Bryant wrote:
> Greetings,
> 
> A few weeks ago I spent some time looking into a bug [1] that came up 
> back when we had the test day.  The bug showed a "database locked" error 
> when sqlite was used.  In short, using sqlite with nova is not a 
> reliable combination.  I'd like to get some consensus on a good way to 
> address that.

For reference, the bug triggering this discussion is:

  https://bugzilla.redhat.com/735012

> Some options ...
> 
> 1) Update the docs to strongly recommend switching to MySQL as a part of 
> the setup process.
> 
> 2) Don't even bother having the packages set up for sqlite at all. 
> Switch to mysql by default.
> 
> I'd like to take path #2 here.  It seems like a bad idea to provide a 
> default configuration that we know will fail at times.

Yeah, if sqlite is such a lost cause, then we should drop it.

If we do remove the auto-sqlite-setup thing in %post, people who do try
to use sqlite will hit the following problems:

  - You can use an sqlite URI like sqlite:////nova.sqlite, but if you
    then run 'nova manage db sync' the DB will be created in the current
    dir rather than /var/lib/nova. The nova services all run 
    with /var/lib/nova as their cwd

  - 'nova-manage db sync' will create the DB owned by the current user. 
    You need to chown it to the nova user

So, the "create nova.sqlite in %post" thing was about trying to
eliminate those hurdles.

> If we do take this path, what's the best way to go about it?  We can 
> have nova set up to use MySQL and point it at localhost with some 
> default credentials.  Should we do more?  Provide a trivial script for 
> creating the nova database and user?  Have an optional openstack-nova-db 
> package that pulls in MySQL and automatically creates the db?
> 
> I don't want to try to make things too smart and then end up causing 
> pain for administrators.

I'd go with simply making mysql://nova:nova@localhost/nova the default
for the sql_connection flag

Potentially also include a simple script for changing the MySQL root
password, deleting anonymous accounts, creating the nova DB and the nova
user as described here:

  https://fedoraproject.org/wiki/Getting_started_with_OpenStack_Nova#Using_MySQL

I'd also look into what the Ubuntu packages do:

  http://bazaar.launchpad.net/~openstack-ubuntu-packagers/nova/ubuntu/files/head:/debian/

At a first glance, it looks like they use sqlite by default and don't
any particular help for people to use MySQL e.g.

  http://bazaar.launchpad.net/~openstack-ubuntu-packagers/nova/ubuntu/view/head:/debian/nova-common.postinst

      if ! grep -q sql_connection /etc/nova/nova.conf
      then
          su -c 'nova-manage db sync' nova
      fi

Cheers,
Mark.


_______________________________________________
cloud mailing list
cloud@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/cloud



[Index of Archives]     [Fedora General Discussion]     [Older Fedora Users Archive]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Coolkey]     [Yum Users]     [Big List of Linux Books]     [Yosemite News]     [Linux Apps]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Asterisk PBX]

  Powered by Linux