[Openstack-devel] [bug] keystone 2013.1-1 MySQL connection string issue

Alberto Molina Coballes alb.molina at gmail.com
Wed Apr 10 11:45:50 UTC 2013


Backport Repositories used:
deb http://33.apt-proxy.gplhost.com/debian grizzly main
deb http://33.apt-proxy.gplhost.com/debian grizzly-backports main

keystone: 2013.1-1

Database: MySQL
dbconfig-common: yes

keystone fails to configure using a tcp/ip connection different from
localhost.

PKG-Openstack now calling: dbc_go keystone configure
dbconfig-common: writing config to /etc/dbconfig-common/keystone.conf

Creating config file /etc/dbconfig-common/keystone.conf with new version
granting access to database keystonedb for
keystone at corot.gonzalonazareno.org: success.
verifying access for keystone at corot.gonzalonazareno.org: success.
creating database keystonedb: success.
verifying database keystonedb exists: success.
dbconfig-common: flushing administrative password
Traceback (most recent call last):
  File "/usr/bin/keystone-manage", line 28, in <module>
    cli.main(argv=sys.argv, config_files=config_files)
  File "/usr/lib/python2.7/dist-packages/keystone/cli.py", line 175, in main
    CONF.command.cmd_class.main()
  File "/usr/lib/python2.7/dist-packages/keystone/cli.py", line 54, in main
    driver.db_sync()
  File
"/usr/lib/python2.7/dist-packages/keystone/identity/backends/sql.py", line
156, in db_sync
    migration.db_sync()
  File "/usr/lib/python2.7/dist-packages/keystone/common/sql/migration.py",
line 49, in db_sync
    current_version = db_version()
  File "/usr/lib/python2.7/dist-packages/keystone/common/sql/migration.py",
line 63, in db_version
    return db_version_control(0)
  File "/usr/lib/python2.7/dist-packages/keystone/common/sql/migration.py",
line 68, in db_version_control
    versioning_api.version_control(CONF.sql.connection, repo_path, version)
  File "<string>", line 2, in version_control
  File
"/usr/lib/python2.7/dist-packages/migrate/versioning/util/__init__.py",
line 159, in with_engine
    return f(*a, **kw)
  File "/usr/lib/python2.7/dist-packages/migrate/versioning/api.py", line
250, in version_control
    ControlledSchema.create(engine, repository, version)
  File "/usr/lib/python2.7/dist-packages/migrate/versioning/schema.py",
line 139, in create
    table = cls._create_table_version(engine, repository, version)
  File "/usr/lib/python2.7/dist-packages/migrate/versioning/schema.py",
line 180, in _create_table_version
    if not table.exists():
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/schema.py", line 579,
in exists
    self.name, schema=self.schema)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line
2424, in run_callable
    conn = self.contextual_connect()
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line
2490, in contextual_connect
    self.pool.connect(),
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 224, in
connect
    return _ConnectionFairy(self).checkout()
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 387, in
__init__
    rec = self._connection_record = pool._do_get()
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 741, in
_do_get
    con = self._create_connection()
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 188, in
_create_connection
    return _ConnectionRecord(self)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 270, in
__init__
    self.connection = self.__connect()
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 330, in
__connect
    connection = self.__pool._creator()
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/strategies.py",
line 80, in connect
    return dialect.connect(*cargs, **cparams)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/default.py",
line 281, in connect
    return self.dbapi.connect(*cargs, **cparams)
  File "/usr/lib/python2.7/dist-packages/MySQLdb/__init__.py", line 81, in
Connect
    return Connection(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/MySQLdb/connections.py", line 187,
in __init__
    super(Connection, self).__init__(*args, **kwargs2)
sqlalchemy.exc.OperationalError: (OperationalError) (1045, "Access denied
for user 'keystone'@'172.22.202.1' (using password: YES)") None None

There is no correspondence between Host Attribute in mysql.user and
mysql.db tables and the one used during configuration.

At configuration we chose 172.22.202.1 for MySQL IP address but the insert
operation was performed with its FQDN, so later connection fails. This
could be solved using '%' instead like others packages do.

Alberto
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/openstack-devel/attachments/20130410/c9d905e2/attachment.html>


More information about the Openstack-devel mailing list