openstack之glance部署及操做

因为时间关系简单的架构图就先不展现了。后续的更新会贴上...python

 

部署glancemysql

安装memcache服务sql

yum install memcached python-memcached
systemctl enable memcached.service
systemctl start memcached.service

 

1.glance的数据库操做数据库

glance跟其余的组件都共享一台数据库,因此直接在部署keystone的那台数据库中操做便可。api

mysql -u root -p #登入数据库
CREATE DATABASE glance; #新建库keystone
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \
  IDENTIFIED BY '123'; #新建本地访问glance库的帐号
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \
  IDENTIFIED BY '123'; #新建远程访问glance库的帐号

2.glance关于keystone的操做网络

首先要创建一个glance用户,而后建立一个项目,最后关联赋予角色,在搭建keystone的时候,glance属于一个组件,keystone属于一个组件,nova属于一个组件等等的这些全部的组件都在一个项目中(service项目),因此项目就不须要创建,直接赋予角色信息。架构

对于glance来讲,它属于管理着镜像服务,keystone管理着认证服务,neutron管理着网络服务,nova,cinder等等,这些全部的管理者的用户必须是admin。dom

#得到管理员权先。
#为glance的使用者建立用户
openstack user create --domain default --password-prompt glance 

#对glance-service添加role角色,提示:用户glance只有在一个肯定的项目service内才有角色的概念,单独的用户或者单独的项目都是没法绑定角色的。
openstack role add --project service --user glance admin 

查看关联python2.7

由上图可见第一行就是创建了关联,用户--角色--项目都已经建好了。接下来就要创建访问glance的catalog了memcached

#建立glance服务的catalog:service+endpoint
openstack service create --name glance \
--description "OpenStack Image" image
#必定要指定它的类型为image镜像类型
openstack endpoint create
--region RegionOne \ image public http://182.92.84.106:9292 openstack endpoint create --region RegionOne \ image internal http://182.92.84.106:9292 openstack endpoint create --region RegionOne \ image admin http://182.92.84.106:9292

 指定类型

 

三种访问路径

public

 

internal

 admin

查看服务

查看endpoint

 

注意如今的这些操做都是在keystone里面,尚未具体的glance服务。

 keystone对glance的操做就结束了 接下来就是正式安装glance了

 3.安装软件包

yum -y install openstack-glance

4.配置glance

注意注意:每一条配置都要新建到文件中,不要打开注释在原有的基础上修改

 建立本地存储 

1.必定要在opesntack-glance-api.service服务启动以前部署好存储设备,由于该服务在启动时会加载存储驱动检索存储设备,若是事先不存在,就意味着该服务没有识别到任何可用的存储设备,即使是后来你又新增了存储,仍然是无效的,最终致使你上传镜像失败;

2.必定要赋予opesntack-glance-api.service服务对存储设备的可写权限。

mkdir /var/lib/glance/images
chown -R glance.glance /var/lib/glance/images

 

 配置/etc/glance/glance-api.conf V2版本

[database]
connection = mysql+pymysql://glance:123@182.92.84.106/glance

[keystone_authtoken]
auth_uri = http://182.92.84.106:5000
auth_url = http://182.92.84.106:35357
memcached_servers = 182.92.84.106:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = 123

[paste_deploy]
flavor = keystone

[glance_store]
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/

配置 /etc/glance/glance-registry.conf  V1版本

[database]
connection = mysql+pymysql://glance:123@182.92.84.106/glance

#可选
[keystone_authtoken]
auth_uri = http://182.92.84.106:5000
auth_url = http://182.92.84.106:35357
memcached_servers = 182.92.84.106:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service
username = glance password = 123 
#可选 [paste_deploy] flavor
= keystone

 

 5.初始化数据库

 

 

 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/site-packages/oslo_db/sqlalchemy/enginefacade.py:1171: OsloDBDeprecationWarning: EngineFacade is deprecated; please use oslo_db.sqlalchemy.enginefacade
  expire_on_commit=expire_on_commit, _conf=conf)
/usr/lib/python2.7/site-packages/pymysql/cursors.py:166: Warning: (1831, u"Duplicate index 'ix_image_properties_image_id_name' defined on the table 'glance.image_properties'. This is deprecated and will be disallowed in a future release.")
  result = self._query(query)
'''

 

6.启动glance并设置为开机自启动

systemctl enable openstack-glance-api.service \
openstack-glance-registry.service

systemctl start openstack-glance-api.service \
openstack-glance-registry.service

 

 验证

首先得到admin权限 

source admin-openrc

 

这时候执行以下命令能够看到为空

openstack image list 

 

由于里面尚未镜像 因此咱们要先上传一个

 

下载镜像

wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img
使用glacne创一个镜像
openstack image create "cirros" \
  --file cirros-0.3.4-x86_64-disk.img \
  --disk-format qcow2 --container-format bare \
  --public

镜像上传到glance后 即便删除了原文件也无所谓

能够使用qemu-img来查看镜像信息

相关文章
相关标签/搜索