阅读目录

一 简单架构图示参考

二 部署glance

三 验证


一 简单架构图示参考



二 部署glance


 创建脚本


为了不写一长串的用户信息,可以把他们定义成脚本的方式


admin-openrc


export OS_PROJECT_DOMAIN_NAME=Default

export OS_USER_DOMAIN_NAME=Default

export OS_PROJECT_NAME=admin

export OS_USERNAME=admin

export OS_PASSWORD=774148

export OS_AUTH_URL=http://192.168.207.128:35357/v3

export OS_IDENTITY_API_VERSION=3

export OS_IMAGE_API_VERSION=2

  

export OS_IMAGE_API_VERSION=2



demo-openrc


export OS_PROJECT_DOMAIN_NAME=Default

export OS_USER_DOMAIN_NAME=Default

export OS_PROJECT_NAME=demo

export OS_USERNAME=demo

export OS_PASSWORD=774148

export OS_AUTH_URL=http://192.168.207.128:35357/v3

export OS_IDENTITY_API_VERSION=3

export OS_IMAGE_API_VERSION=2


 针对不同的业务应该有不同的用户信息,也都应该定义成脚本形式,方便管理


我们的申请token操作简化成


source admin-openrc

 

针对不同的业务应该有不同的用户信息,也都应该定义成脚本形式,方便管理


我们的申请token操作简化成


source admin-openrc

openstack token issue

 



yum install memcached python-memcached

systemctl enable memcached.service

systemctl start memcached.service


step 1:glance关于数据库的操作


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库的账号



step 2:glance关于keystone的操作


 soure admin-openrc #执行管理员脚本

#为glance的使用者创建用户

openstack user create --domain default --password-prompt glance 


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

openstack role add --project service --user glance admin 



#创建glance服务的catalog:service+endpoint


openstack service create --name glance \

--description "OpenStack Image" p_w_picpath


openstack endpoint create --region RegionOne \

  p_w_picpath public http://192.168.207.128:9292

openstack endpoint create --region RegionOne \

  p_w_picpath internal http://192.168.207.128:9292

openstack endpoint create --region RegionOne \

  p_w_picpath admin http://192.168.207.128:9292



step 3:安装软件包


yum -y install openstack-glance



step 4:配置/etc/glance/glance.conf



大前提:每一条配置都应该新增到文件中,一定不要打开注释在原有的基础上修改。


创建本地存储:


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


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


mkdir /var/lib/glance/p_w_picpaths

chown -R glance.glance /var/lib/glance/p_w_picpaths

 


配置/etc/glance/glance-api.conf


复制代码

[database]

connection = mysql+pymysql://glance:123@192.168.207.128/glance



[keystone_authtoken]

auth_uri = http://192.168.207.128:5000

auth_url = http://192.168.207.128:35357

memcached_servers = 192.168.207.128: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/p_w_picpaths/

mkdir -p /var/lib/glance/p_w_picpaths/

chown -R glance.glance /var/lib/glance/p_w_picpaths/



 配置/etc/glance/glance-registry.conf


 [database]

connection = mysql+pymysql://glance:123@192.168.207.128/glance



glance-registry不认证数据库 不用写

keystone_authtoken、paste_deploy

step 5: 初始化数据库glance


 

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:...... oslo_db.sqlalchemy.enginefacade

...... a future release.")

  result = self._query(query)

'''

 

step 6:启动glance且设置开机启动


systemctl enable openstack-glance-api.service \

openstack-glance-registry.service


systemctl start openstack-glance-api.service \

openstack-glance-registry.service

 三 验证


 

source admin-openrc


#如果没有wget则必须yum -y install wget

wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img


openstack p_w_picpath create "cirros" \

  --file cirros-0.3.4-x86_64-disk.img \

  --disk-format qcow2 --container-format bare \

  --public

  

  

openstack p_w_picpath list