Ubuntu 16.04下安装OpenStack(juno) 之add the image service报错分析

su -s /bin/sh -c "glance-manage db_sync" glance  报错!

根据官方文档操作,执行到

Populate the Image Service database:

# su -s /bin/sh -c "glance-manage db_sync" glance

报错如下:

root@ada-ubuntu:/var/log/mysql# su -s /bin/sh -c "glance-manage db_sync" glance
Option "verbose" from group "DEFAULT" is deprecated for removal.  Its value may be silently ignored in the future.
/usr/lib/python2.7/dist-packages/oslo_db/sqlalchemy/enginefacade.py:1056: OsloDBDeprecationWarning: EngineFacade is deprecated; please use oslo_db.sqlalchemy.enginefacade
  expire_on_commit=expire_on_commit, _conf=conf)
2017-09-24 23:52:57.171 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 10 attempts left.
2017-09-24 23:53:07.183 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 9 attempts left.
2017-09-24 23:53:17.194 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 8 attempts left.
2017-09-24 23:53:27.206 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 7 attempts left.
2017-09-24 23:53:37.218 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 6 attempts left.
2017-09-24 23:53:47.222 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 5 attempts left.
2017-09-24 23:53:57.234 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 4 attempts left.
2017-09-24 23:54:07.245 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 3 attempts left.
2017-09-24 23:54:17.255 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 2 attempts left.
2017-09-24 23:54:27.268 9538 WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 1 attempts left.
2017-09-24 23:54:37.277 9538 CRITICAL glance [-] DBConnectionError: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'controller' ([Errno 111] Connection refused)")
2017-09-24 23:54:37.277 9538 ERROR glance Traceback (most recent call last):
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/bin/glance-manage", line 10, in <module>
2017-09-24 23:54:37.277 9538 ERROR glance     sys.exit(main())
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/glance/cmd/manage.py", line 341, in main
2017-09-24 23:54:37.277 9538 ERROR glance     return CONF.command.action_fn()
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/glance/cmd/manage.py", line 196, in sync
2017-09-24 23:54:37.277 9538 ERROR glance     CONF.command.current_version)
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/glance/cmd/manage.py", line 118, in sync
2017-09-24 23:54:37.277 9538 ERROR glance     migration.db_sync(db_api.get_engine(),
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/glance/db/sqlalchemy/api.py", line 98, in get_engine
2017-09-24 23:54:37.277 9538 ERROR glance     facade = _create_facade_lazily()
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/glance/db/sqlalchemy/api.py", line 88, in _create_facade_lazily
2017-09-24 23:54:37.277 9538 ERROR glance     _FACADE = session.EngineFacade.from_config(CONF)
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/oslo_db/sqlalchemy/enginefacade.py", line 1056, in from_config
2017-09-24 23:54:37.277 9538 ERROR glance     expire_on_commit=expire_on_commit, _conf=conf)
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/oslo_db/sqlalchemy/enginefacade.py", line 977, in __init__
2017-09-24 23:54:37.277 9538 ERROR glance     slave_connection=slave_connection)
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/oslo_db/sqlalchemy/enginefacade.py", line 338, in _start
2017-09-24 23:54:37.277 9538 ERROR glance     engine_args, maker_args)
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/oslo_db/sqlalchemy/enginefacade.py", line 362, in _setup_for_connection
2017-09-24 23:54:37.277 9538 ERROR glance     sql_connection=sql_connection, **engine_kwargs)
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/oslo_db/sqlalchemy/engines.py", line 152, in create_engine
2017-09-24 23:54:37.277 9538 ERROR glance     test_conn = _test_connection(engine, max_retries, retry_interval)
2017-09-24 23:54:37.277 9538 ERROR glance   File "/usr/lib/python2.7/dist-packages/oslo_db/sqlalchemy/engines.py", line 334, in _test_connection
2017-09-24 23:54:37.277 9538 ERROR glance     six.reraise(type(de_ref), de_ref)
2017-09-24 23:54:37.277 9538 ERROR glance   File "<string>", line 2, in reraise
2017-09-24 23:54:37.277 9538 ERROR glance DBConnectionError: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'controller' ([Errno 111] Connection refused)")
2017-09-24 23:54:37.277 9538 ERROR glance
查看log日志,又百度搜索了很久还是无法解决,最终在google搜索到一篇类似文章找到了灵感,成功解决。

解决方法:

1.使用root登录数据库

root@ada-ubuntu:/var/log/mysql# mysql -uroot -p××××××(注:******为你的数据库root密码)
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 32
Server version: 10.0.31-MariaDB-0ubuntu0.16.04.2 Ubuntu 16.04

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

2.输入如下指令

MariaDB [(none)]> show variables like "%char%";
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8mb4                    |
| character_set_connection | utf8mb4                    |
| character_set_database   | utf8mb4                    |
| character_set_filesystem | binary                     |
| character_set_results    | utf8mb4                    |
| character_set_server     | utf8mb4                    |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)


3.退出数据库

MariaDB [(none)]> \q;
Bye

4.

修改/etc/mysql/mariadb.conf.d/目录下的“50-client.cnf 50-mysql-clients.cnf 和50-server.cnf”两个文件,将其中的“utf8mb4”修改为“utf8”再将 /etc/mysql/mariadb.conf.d/50-server.cnf文件中的127.0.0.1修改为0.0.0.0

重启mysql服务


root@ada-ubuntu:/var/log/mysql# vim /etc/mysql/mariadb.conf.d/50-client.cnf
root@ada-ubuntu:/var/log/mysql# vim /etc/mysql/mariadb.conf.d/50-mysql-clients.cnf
root@ada-ubuntu:/var/log/mysql# vim /etc/mysql/mariadb.conf.d/50-server.cnf
root@ada-ubuntu:/var/log/mysql# service mysql restart

5.再次登录mysql查看
root@ada-ubuntu:/var/log/mysql# mysql -uroot -p******
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 32
Server version: 10.0.31-MariaDB-0ubuntu0.16.04.2 Ubuntu 16.04

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> show variables like "%char%";
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

可看出都已修改为utf8编码


6.将数据库database删除重建,授权

MariaDB [(none)]> drop database glance;
Query OK, 0 rows affected (0.03 sec)

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| keystone           |
| mysql              |
| performance_schema |
+--------------------+
4 rows in set (0.01 sec)

MariaDB [(none)]> create database glance;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| glance             |
| information_schema |
| keystone           |
| mysql              |
| performance_schema |
+--------------------+
5 rows in set (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY '密码';
Query OK, 0 rows affected (0.05 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY '密码';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> \q;
Bye
7.最后重新执行su -s /bin/sh -c "glance-manage db_sync" glance指令,成功!

root@ada-ubuntu:/var/log/mysql# su -s /bin/sh -c "glance-manage db_sync" glance
Option "verbose" from group "DEFAULT" is deprecated for removal.  Its value may be silently ignored in the future.
/usr/lib/python2.7/dist-packages/oslo_db/sqlalchemy/enginefacade.py:1056: OsloDBDeprecationWarning: EngineFacade is deprecated; please use oslo_db.sqlalchemy.enginefacade
  expire_on_commit=expire_on_commit, _conf=conf)
2017-09-25 00:19:54.931 10414 INFO migrate.versioning.api [-] 0 -> 1...
2017-09-25 00:19:54.952 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table images
2017-09-25 00:19:55.029 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.030 10414 INFO migrate.versioning.api [-] 1 -> 2...
2017-09-25 00:19:55.040 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table image_properties
2017-09-25 00:19:55.114 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.115 10414 INFO migrate.versioning.api [-] 2 -> 3...
2017-09-25 00:19:55.197 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.198 10414 INFO migrate.versioning.api [-] 3 -> 4...
2017-09-25 00:19:55.251 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.251 10414 INFO migrate.versioning.api [-] 4 -> 5...
2017-09-25 00:19:55.291 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.291 10414 INFO migrate.versioning.api [-] 5 -> 6...
/usr/lib/python2.7/dist-packages/pymysql/cursors.py:158: Warning: Duplicate index `ix_image_properties_image_id_name`. This is deprecated and will be disallowed in a future release.
  result = self._query(query)
2017-09-25 00:19:55.340 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.340 10414 INFO migrate.versioning.api [-] 6 -> 7...
2017-09-25 00:19:55.423 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.423 10414 INFO migrate.versioning.api [-] 7 -> 8...
2017-09-25 00:19:55.429 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table image_members
2017-09-25 00:19:55.505 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.506 10414 INFO migrate.versioning.api [-] 8 -> 9...
2017-09-25 00:19:55.558 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.558 10414 INFO migrate.versioning.api [-] 9 -> 10...
2017-09-25 00:19:55.578 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.578 10414 INFO migrate.versioning.api [-] 10 -> 11...
2017-09-25 00:19:55.627 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:55.627 10414 INFO migrate.versioning.api [-] 11 -> 12...
2017-09-25 00:19:57.207 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.207 10414 INFO migrate.versioning.api [-] 12 -> 13...
2017-09-25 00:19:57.261 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.261 10414 INFO migrate.versioning.api [-] 13 -> 14...
2017-09-25 00:19:57.289 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table image_tags
2017-09-25 00:19:57.351 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.352 10414 INFO migrate.versioning.api [-] 14 -> 15...
2017-09-25 00:19:57.403 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.403 10414 INFO migrate.versioning.api [-] 15 -> 16...
2017-09-25 00:19:57.508 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.509 10414 INFO migrate.versioning.api [-] 16 -> 17...
2017-09-25 00:19:57.510 10414 INFO 017_quote_encrypted_swift_credentials [-] 'metadata_encryption_key' was not specified in the config file or a config file was not specified. This means that this migration is a NOOP.
2017-09-25 00:19:57.514 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.515 10414 INFO migrate.versioning.api [-] 17 -> 18...
2017-09-25 00:19:57.538 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table image_locations
2017-09-25 00:19:57.583 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.583 10414 INFO migrate.versioning.api [-] 18 -> 19...
2017-09-25 00:19:57.617 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.618 10414 INFO migrate.versioning.api [-] 19 -> 20...
2017-09-25 00:19:57.646 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.646 10414 INFO migrate.versioning.api [-] 20 -> 21...
2017-09-25 00:19:57.666 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.667 10414 INFO migrate.versioning.api [-] 21 -> 22...
2017-09-25 00:19:57.706 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.708 10414 INFO migrate.versioning.api [-] 22 -> 23...
2017-09-25 00:19:57.717 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.717 10414 INFO migrate.versioning.api [-] 23 -> 24...
2017-09-25 00:19:57.737 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.737 10414 INFO migrate.versioning.api [-] 24 -> 25...
2017-09-25 00:19:57.753 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.753 10414 INFO migrate.versioning.api [-] 25 -> 26...
2017-09-25 00:19:57.791 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.792 10414 INFO migrate.versioning.api [-] 26 -> 27...
2017-09-25 00:19:57.827 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.827 10414 INFO migrate.versioning.api [-] 27 -> 28...
2017-09-25 00:19:57.849 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.849 10414 INFO migrate.versioning.api [-] 28 -> 29...
2017-09-25 00:19:57.939 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.939 10414 INFO migrate.versioning.api [-] 29 -> 30...
2017-09-25 00:19:57.941 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table tasks
2017-09-25 00:19:57.993 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:57.993 10414 INFO migrate.versioning.api [-] 30 -> 31...
2017-09-25 00:19:58.037 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:58.038 10414 INFO migrate.versioning.api [-] 31 -> 32...
2017-09-25 00:19:58.046 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table task_info
2017-09-25 00:19:58.138 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:58.138 10414 INFO migrate.versioning.api [-] 32 -> 33...
2017-09-25 00:19:58.213 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:58.213 10414 INFO migrate.versioning.api [-] 33 -> 34...
2017-09-25 00:19:58.275 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:58.275 10414 INFO migrate.versioning.api [-] 34 -> 35...
2017-09-25 00:19:58.288 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table metadef_namespaces
2017-09-25 00:19:58.344 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table metadef_objects
2017-09-25 00:19:58.391 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table metadef_properties
2017-09-25 00:19:58.444 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table metadef_resource_types
2017-09-25 00:19:58.497 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table metadef_namespace_resource_types
2017-09-25 00:19:58.587 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:58.587 10414 INFO migrate.versioning.api [-] 35 -> 36...
2017-09-25 00:19:58.640 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:58.640 10414 INFO migrate.versioning.api [-] 36 -> 37...
2017-09-25 00:19:58.725 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:58.725 10414 INFO migrate.versioning.api [-] 37 -> 38...
2017-09-25 00:19:58.731 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table metadef_tags
2017-09-25 00:19:58.761 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:58.763 10414 INFO migrate.versioning.api [-] 38 -> 39...
2017-09-25 00:19:59.000 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:59.000 10414 INFO migrate.versioning.api [-] 39 -> 40...
2017-09-25 00:19:59.040 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:59.040 10414 INFO migrate.versioning.api [-] 40 -> 41...
2017-09-25 00:19:59.053 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table artifacts
2017-09-25 00:19:59.157 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table artifact_tags
2017-09-25 00:19:59.232 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table artifact_properties
2017-09-25 00:19:59.296 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table artifact_blobs
2017-09-25 00:19:59.367 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table artifact_blob_locations
2017-09-25 00:19:59.431 10414 INFO glance.db.sqlalchemy.migrate_repo.schema [-] creating table artifact_dependencies
2017-09-25 00:19:59.530 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:59.530 10414 INFO migrate.versioning.api [-] 41 -> 42...
2017-09-25 00:19:59.833 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:59.833 10414 INFO migrate.versioning.api [-] 42 -> 43...
2017-09-25 00:19:59.859 10414 INFO migrate.versioning.api [-] done
2017-09-25 00:19:59.862 10414 INFO migrate.versioning.api [-] 43 -> 44...
2017-09-25 00:19:59.888 10414 INFO migrate.versioning.api [-] done


猜你喜欢

转载自blog.csdn.net/a3192048/article/details/78107196