glance服务报错HTTPInternalServerError (HTTP 500)

问题报错:

glance在上传镜像文件时产生:HTTPInternalServerError (HTTP 500)的错误。
进行上传镜像文件时产生此错误

分析原因&&问题解决:

glance服务在进行上传镜像文件前,需要控制数据库,并同步数据库。同时为了进行镜像服务,需要编辑配置文件。

一. 配置数据库

  1. 创建数据库
mysql -u root -popenstack
create database glance;
  1. 创建glance用户
grant all privileges on glance.* to 'glance'@'localhost' identified by 'openstack';
grant all privileges on glance.* to 'glance'@'%' identified by 'openstack';

二、配置镜像服务

  1. 编辑/etc/glance/glance-registry.conf 配置文件,在[DEFAULT]下加入以下内容:
rabbit_host=localhost 
rabbit_port=5672
rabbit_use_ssl=false
rabbit_userid=guest
rabbit_password=guest
rabbit_virtual_host=/
rabbit_notification_exchange=glance
rabbit_notification_topic=notifications
rabbit_durable_queues=false`
  1. 重新启动glance-registry 和 glance-api 服务
sudo restart glance-registry
sudo restart glance-api
  1. 同步数据库,并不允许glance 服务控制数据库版本
sudo glance-manage db_sync
sudo glance-manage db_version_control 0
  1. 如果在执行过程中,出现以下错误,则编辑 /etc/mysql/my.cnf 配置文件,往 [mysqld] 字段添加如下内容

glance ValueError: Tables “migrate_version” have non utf8 collation,
please make sure all tables are CHARSET=utf8

collation-server = utf8_general_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

然后登录glance database用下面的语句来改变表的charset属性

alter table migrate_version convert to character set 'utf8';
  1. 注意注意!!
    如有上述错误产生,需要在进行第四步之后重新进行第三步。这样在同步数据库之后,即可解决在上传镜像文件时产生的(HTTP500)问题。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值