做用:主要用于帮助用户发现、注册及搜索VM实例映像文件(经过REST API的形式)mysql
三大组件功能sql
建立glance数据库数据库
CREATE DATABASE glance;
vim
数据库赋权api
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'glance';
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'glance';
复制代码
yum install -y openstack-glance
bash
备份两个配置文件/etc/glance/glance-api.conf和/etc/glance/glance-registry.confdom
编辑glance-api配置文件memcached
#vim /etc/glance/glance-api.conf
[database]
# ...
connection = mysql+pymysql://glance:glance@controller/glance
[keystone_authtoken]
# ...
auth_uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = glance
[paste_deploy]
# ...
flavor = keystone
[glance_store]
# ...
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/
复制代码
编辑glance-registry配置文件测试
# vim /etc/glance/glance-registry.conf
[database]
# ...
connection = mysql+pymysql://glance:glance@controller/glance
[keystone_authtoken]
# ...
auth_uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = glance
[paste_deploy]
# ...
flavor = keystone
复制代码
更新glance数据库的配置信息ui
# su -s /bin/sh -c "glance-manage db_sync" glance
#加载admin的环境变量脚本文件
source admin-openstack.sh
#建立glance用户
openstack user create --domain default --password glance glance
#检查效果
oepnstack user list
#将glance用户添加到service项目的admin角色组
openstack role add --project service --user glance admin
#建立image的server
openstack service create --name glance --description "OpenStack Image" image
#检查效果
openstack service list
#初始化glance服务的api信息
openstack endpoint create --region RegionOne image public http://controller:9292
openstack endpoint create --region RegionOne image internal http://controller:9292
openstack endpoint create --region RegionOne image admin http://controller:9292
#检查效果
openstack endpoint list
复制代码
重启glance相关服务,设置开机自启
# systemctl enable openstack-glance-api.service openstack-glance-registry.service
# systemctl start openstack-glance-api.service openstack-glance-registry.service
复制代码
glance-api端口是9292,glance-registry端口是9191
下载测试镜像文件
wget http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img
这里上传时遇到问题,经过浏览日志文件发现是35357端口的问题,然而Queen版本的OpenStack中admin用户并未使用该端口,所以是KeyStone组件配置出错致使的问题。经过将endpoint中与KeyStone相关的服务删除后从新开启,解决了问题。
上传镜像文件到glance
openstack image create "cirros" --file cirros-0.3.5-x86_64-disk.img --disk-format qcow2 --container-format bare --public
安装qemu-kvm对镜像文件类型进行检查:qemu-img info cirros-0.3.5-x86_64-disk.img
检查效果
openstack image list
日志文件检查
cd /var/log/glance
grep 'ERROR' api.log #关于用户操做的日志信息
grep 'ERROR' registry.log #关于数据库操做的日志信息
复制代码