OpenStack Keystone | db_sync --check 返回退出代码 1

OpenStack Keystone | db_sync --check 返回退出代码 1

嗨,

我正在使用 Ansible OpenStack 部署 OpenStack 测试环境

在剧本上安装-openstack.yml任务os_keystone :检查 Keystone DB 的当前状态失败,因为退出代码为 1/openstack/venvs/keystone-20.1.0.dev9/bin/keystone-manage db_sync --check命令

任务 [os_keystone:检查 Keystone DB 的当前状态] ************************************************************************************************* 致命:[infra1_keystone_container-3fe165e4]:失败! => {“changed”: true, “cmd”: [“/openstack/venvs/keystone-20.1.0.dev9/bin/keystone-manage”, “d b_sync”, “--check”], “delta”: “0:01:42.935686”, “end”: “2019-10-28 21:25:55.634598”, “failed_when_result”: true, “msg”: “非零返回码”, “rc”: 1, “start”: “2019-10-28 21:24:12.698912”, “stderr”: “”, “stderr_lines”: [], “stdout”: “”, “stdout_lines”: []}

在 keystone.conf 日志中使用 debug=True 和 use_stderr=True

root@infra1-keystone-container-3fe165e4:/etc/keystone# /openstack/venvs/keystone-20.1.0.dev9/bin/keystone-manage db_sync --check
2019-10-28 21:41:49.802 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 10 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')
2019-10-28 21:41:59.821 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 9 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')
2019-10-28 21:42:09.830 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 8 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')
2019-10-28 21:42:19.844 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 7 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')2019-10-28 21:42:29.859 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 6 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')
2019-10-28 21:42:39.870 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 5 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')
2019-10-28 21:42:49.884 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 4 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')2019-10-28 21:42:59.898 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 3 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')
2019-10-28 21:43:09.913 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 2 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')
2019-10-28 21:43:19.927 7461 警告 oslo_db.sqlalchemy.engines [-] SQL 连接失败。还剩 1 次尝试。:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')
2019-10-28 21:43:29.940 7461 CRITICAL keystone [-] 未处理的错误:oslo_db.exception.DBConnectionError:(pymysql.err.OperationalError)(2013,'查询期间与 MySQL 服务器失去连接')

从 keystone lxc 容器使用 keystone.conf 中的凭据手动连接到数据库,但 keystone 数据库中没有表

> root@infra1-keystone-container-3fe165e4:/etc/keystone# /openstack/venvs/keystone-20.1.0.dev9/bin/keystone-manage --version 16.0.1

答案1

在部署过程中,我重新运行了 setup-openstack 剧本两次(由于不相关的错误),但仍然出现了同样的错误。

我使用 mysqld + haproxy/keepalived 在裸机(不是容器)上部署了我的设置。当我第一次运行 playbook 时,似乎 keepalived/haproxy 由于某种原因停止了,这意味着 keystone 在第二次运行 playbook 时无法访问 mysql,从而导致上述错误。

尝试从 keystone 的角度检查您的 MySQL 服务器是否可以访问。希望这对您有所帮助!

答案2

我也遇到了同样的问题。我重启了 keepalived 服务,然后就能 ping lb ip 了,还能成功运行 playbook

相关内容