分享

openstack keystone安装错误总结:http:409,http:500

pig2 发表于 2014-3-14 19:41:52 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 2 88243
本帖最后由 pig2 于 2014-3-14 19:45 编辑

我们经常遇到的
http 409的原因是什么?
http http 500原因是什么?




已有(2)人评论

跳转到指定楼层
pig2 发表于 2014-3-14 19:42:51
本帖最后由 pig2 于 2014-3-14 19:44 编辑

错误1:http 409
  1. Unable to communicate with identity service: {"error": {"message": "Conflict occurred attempting to store project. (1062, "Duplicate entry 'default-admin' for key 'domain_id'")", "code": 409, "title": "Conflict"}}. (HTTP 409)
  2. Unable to communicate with identity service: {"error": {"message": "Conflict occurred attempting to store project. (1062, "Duplicate entry 'default-service' for key 'domain_id'")", "code": 409, "title": "Conflict"}}. (HTTP 409)
  3. Unable to communicate with identity service: {"error": {"message": "Conflict occurred attempting to store project. (1062, "Duplicate entry 'default-demo' for key 'domain_id'")", "code": 409, "title": "Conflict"}}. (HTTP 409)
  4. Unable to communicate with identity service: {"error": {"message": "Conflict occurred attempting to store project. (1062, "Duplicate entry 'default-invisible_to_admin' for key 'domain_id'")", "code": 409, "title": "Conflict"}}. (HTTP 409)
  5. Unable to communicate with identity service: {"error": {"message": "Conflict occurred attempting to store user. (1062, "Duplicate entry 'default-admin' for key 'domain_id'")", "code": 409, "title": "Conflict"}}. (HTTP 409)
  6. Unable to communicate with identity service: {"error": {"message": "Conflict occurred attempting to store user. (1062, "Duplicate entry 'default-demo' for key 'domain_id'")", "code": 409, "title": "Conflict"}}. (HTTP 409)
  7. Unable to communicate with identity service: {"error": {"message": "Conflict occurred attempting to store role. (1062, "Duplicate entry 'admin' for key 'name'")", "code": 409, "title": "Conflict"}}. (HTTP 409)
  8. Unable to communicate with identity service: {"error": {"message": "Conflict occurred attempting to store role. (1062, "Duplicate entry 'KeystoneAdmin' for key 'name'")", "code": 409, "title": "Conflict"}}. (HTTP 409)
  9. Unable to communicate with identity service: {"error": {"message": "Conflict occurred attempting to store role. (1062, "Duplicate entry 'KeystoneServiceAdmin' for key 'name'")", "code": 409, "title": "Conflict"}}. (HTTP 409)
复制代码

解决办法:
  1. mysql> drop database keystone;
  2. mysql> create database keystone;
复制代码


分析:


上面的命令是首先删除数据库keystone,然后创建数据库,但是有一个问题我们忽略了,就是创建数据库,不等于创建表,所以我们还需要同步数据库
keystone-manage db_sync;同步数据的作用:是在数据库中创建表(tablle)。如果不创建表会有什么错误那,下面便是其中一种。

错误2:http 500
  1. ./keystone_basic.sh
  2. Unable to communicate with identity service: {"error": {"message": "An unexpected error prevented the server from fulfilling your request. (ProgrammingError) (1146, "Table 'keystone.project' doesn't exist") 'INSERT INTO project (id, name, domain_id, description, enabled, extra) VALUES (%s, %s, %s, %s, %s, %s)' ('a1029ea8dafb4b97bcd590bd8539f3ec', 'admin', 'default', None, 1, '{}')", "code": 500, "title": "Internal Server Error"}}. (HTTP 500)
  3. Unable to communicate with identity service: {"error": {"message": "An unexpected error prevented the server from fulfilling your request. (ProgrammingError) (1146, "Table 'keystone.project' doesn't exist") 'INSERT INTO project (id, name, domain_id, description, enabled, extra) VALUES (%s, %s, %s, %s, %s, %s)' ('30493fd3002b4835a5319020cfe960b5', 'service', 'default', None, 1, '{}')", "code": 500, "title": "Internal Server Error"}}. (HTTP 500)
  4. Unable to communicate with identity service: {"error": {"message": "An unexpected error prevented the server from fulfilling your request. (ProgrammingError) (1146, "Table 'keystone.user' doesn't exist") 'INSERT INTO user (id, name, domain_id, password, enabled, extra) VALUES (%s, %s, %s, %s, %s, %s)' ('edd21db1020f4a7ca34706f74f390877', 'admin', 'default', '$6$rounds=40000$YTx1zfCLelYEqfpZ$RkB57QIlFWJn/PIL8xL8YBCY6cEOmovfQIKQk3H9MtsFTyvYAz2Q.72i11YQHS1yukFGyqAQaqPgIX9B3rkjI1', 1, '{"email": "admin@domain.com", "tenantId": null}')", "code": 500, "title": "Internal Server Error"}}. (HTTP 500)
  5. Unable to communicate with identity service: {"error": {"message": "An unexpected error prevented the server from fulfilling your request. (ProgrammingError) (1146, "Table 'keystone.role' doesn't exist") 'INSERT INTO role (id, name, extra) VALUES (%s, %s, %s)' ('44f7cd8925d14388aa44197db9c1f076', 'admin', '{}')", "code": 500, "title": "Internal Server Error"}}. (HTTP 500)
  6. Unable to communicate with identity service: {"error": {"message": "An unexpected error prevented the server from fulfilling your request. (ProgrammingError) (1146, "Table 'keystone.role' doesn't exist") 'INSERT INTO role (id, name, extra) VALUES (%s, %s, %s)' ('398c0e9413364d8f81e8756e12206bfd', 'KeystoneAdmin', '{}')", "code": 500, "title": "Internal Server Error"}}. (HTTP 500)
  7. Unable to communicate with identity service: {"error": {"message": "An unexpected error prevented the server from fulfilling your request. (ProgrammingError) (1146, "Table 'keystone.role' doesn't exist") 'INSERT INTO role (id, name, extra) VALUES (%s, %s, %s)' ('2a333360894d4a989b84611596c81424', 'KeystoneServiceAdmin', '{}')", "code": 500, "title": "Internal Server Error"}}. (HTTP 500)
  8. usage: keystone user-role-add --user <user> --role <role> [--tenant <tenant>]
  9. keystone user-role-add: error: argument --user/--user-id/--user_id: expected one argument
  10. usage: keystone user-role-add --user <user> --role <role> [--tenant <tenant>]
  11. keystone user-role-add: error: argument --user/--user-id/--user_id: expected one argument
  12. usage: keystone user-role-add --user <user> --role <role> [--tenant <tenant>]
  13. keystone user-role-add: error: argument --user/--user-id/--user_id: expected one argument
  14. Unable to communicate with identity service: {"error": {"message": "An unexpected error prevented the server from fulfilling your request. (ProgrammingError) (1146, "Table 'keystone.role' doesn't exist") 'INSERT INTO role (id, name, extra) VALUES (%s, %s, %s)' ('01144c4378324e9fafe5029c8ffe5786', 'Member', '{}')", "code": 500, "title": "Internal Server Error"}}. (HTTP 500)
  15. usage: keystone user-create --name <user-name> [--tenant-id <tenant-id>]
  16.                             [--pass <pass>] [--email <email>]
  17.                             [--enabled <true|false>]
  18. keystone user-create: error: argument --tenant-id: expected one argument
  19. usage: keystone user-role-add --user <user> --role <role> [--tenant <tenant>]
  20. keystone user-role-add: error: argument --tenant/--tenant-id: expected one argument
  21. usage: keystone user-create --name <user-name> [--tenant-id <tenant-id>]
  22.                             [--pass <pass>] [--email <email>]
  23.                             [--enabled <true|false>]
  24. keystone user-create: error: argument --tenant-id: expected one argument
  25. usage: keystone user-role-add --user <user> --role <role> [--tenant <tenant>]
  26. keystone user-role-add: error: argument --tenant/--tenant-id: expected one argument
  27. usage: keystone user-create --name <user-name> [--tenant-id <tenant-id>]
  28.                             [--pass <pass>] [--email <email>]
  29.                             [--enabled <true|false>]
  30. keystone user-create: error: argument --tenant-id: expected one argument
  31. usage: keystone user-role-add --user <user> --role <role> [--tenant <tenant>]
  32. keystone user-role-add: error: argument --tenant/--tenant-id: expected one argument
  33. usage: keystone user-create --name <user-name> [--tenant-id <tenant-id>]
  34.                             [--pass <pass>] [--email <email>]
  35.                             [--enabled <true|false>]
  36. keystone user-create: error: argument --tenant-id: expected one argument
  37. usage: keystone user-role-add --user <user> --role <role> [--tenant <tenant>]
  38. keystone user-role-add: error: argument --tenant/--tenant-id: expected one argument
复制代码
解决办法:
  1. mysql> keystone-manage db_sync;
复制代码
分析:
./keystone_basic.sh
当我们执行脚本的时候,Table 'keystone.project' doesn't exist,这表明我们没有创建表,如同我们执行sql语句,insert table (col)values('s'),我们还没有table,所以会产生错误。


回复

使用道具 举报

xuanxufeng 发表于 2015-3-27 00:26:21
pig2 发表于 2014-3-14 19:42
错误1:http 409
解决办法:

给楼主补充:

也有可能是环境变量的问题:
export OS_SERVICE_ENDPOINT=http://127.0.0.1:35357/v2.0
export SERVICE_TOKEN=openstak

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条