Openstack学习总结之三(glance组件部署)

前言

这部分介绍openstack里面glance组件的部署。

一、概述

1. glance组件介绍

glance是openstack核心组件之一。它的主要作用是用户发现、注册及搜索VM实例镜像文件等功能。其中它由三部分组成:glance-api、glance-registry、glance-db。

分类作用
glance-api1)通过REST API方式提供给外部用户查询VM实例镜像的元数据信息;2)将生成的HTTP指令交给glance-registry处理;
glance-registry响应从glance-api发送过来的镜像元数据REST请求,然后与glance-db进行交互,实现VM实例镜像的元数据信息管理
glance-db存放VM实例映像的元数据

2. 镜像文件

磁盘镜像文件包含了VM实例的各种配置信息,它主要包含两部分数据:
1)磁盘镜像的元数据信息;
2)磁盘镜像文件:可支持多个存储方式,比如:普通文件,swift、ceph、http服务等;

磁盘镜像文件的格式有:RAW、qcow2、VHD、VDI、VMDK、OVF等。其中比较常用的是qcow2格式。它是一种前后端分离的存储格式。前端只保存了镜像文件的元数据信息,后端才是真正保存镜像文件的地方。

  • VM实例镜像文件的访问权限:
权限说明
public可以被所有项目使用
private只能够owner所在项目使用
shared可以提供给指定项目使用
protected不能被删除
  • opentack对VM实例镜像文件的支持:
    1)支持由Openstack获取其元数据信息;
    2)支持对镜像文件的大小进行调整;

openstack实例镜像文件一般存储在本地的/var/lib/glance/images目录下。

二、准备工作

1. 创建数据库

  • 创建glance数据库
  • 给glance用户授权
mysql -u root -proot
CREATE DATABASE glance;
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'glance';
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'glance';
exit

# 验证
mysql -h 192.168.88.14 -u glance -pglance -e "show databases;"

2. 软件安装

yum install -y openstack-glance --nogpgchec

三、配置glance

1. 配置glance-api

  • 配置数据库连接
  • 配置keystone认证
  • 配置glance存储方式
cp /etc/glance/glance-api.conf{,.bak}
vim /etc/glance/glance-api.conf

[database]
# glance-api 组件配置数据库的连接
connection = mysql+pymysql://glance:glance@192.168.88.14/glance

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

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

[paste_deploy]
flavor = keystone

2. 配置glance-registry

  • 配置数据库连接
  • 配置keystone认证
cp /etc/glance/glance-registry.conf{,.bak}
vim /etc/glance/glance-registry.conf

[database]
# glance-registry 组件配置数据库的连接
connection = mysql+pymysql://glance:glance@192.168.88.14/glance

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

[paste_deploy]
flavor = keystone

3. 信息初始化

# 更新glance数据库的配置信息
su -s /bin/sh -c "glance-manage db_sync" glance

执行完上面命令后,在glance数据库中会自动生成glance相关的数据库表。

# 验证
mysql -h 192.168.88.14 -u glance -pglance -e "use glance; show tables;"

4. 创建service和endpoint

  • 创建glance服务
  • 创建endpoint
# 创建一个名为glance的服务,类型为image
openstack service create --name glance --description "OpenStack Image" image

# 检查
openstack service list

# 设置image服务对应的endpoint
openstack endpoint create --region RegionOne image public http://192.168.88.14:9292
openstack endpoint create --region RegionOne image internal http://192.168.88.14:9292
openstack endpoint create --region RegionOne image admin http://192.168.88.14:9292

# 检查
openstack endpoint list

5. 创建用户

# 加载admin用户
source openstack-admin.sh

# 创建glance用户
openstack user create --domain default --password glance glance

# 添加glance用户到service项目的admin角色组
openstack role add --project service --user glance admin

# 检查
openstack user list

四、验证组件

1. 部署服务

配置完成后,启动glance相关服务。

systemctl start openstack-glance-api openstack-glance-registry
systemctl status openstack-glance-api openstack-glance-registry
systemctl enable openstack-glance-api openstack-glance-registry

glance服务启动后,默认会使用9292和9191端口。9292代表glance-registry服务,9191代表glance-api服务。

netstat -tnulp | grep -E "9292|9191"

2. 验证

  • 准备镜像文件
  • 上传镜像文件
# 下载测试镜像文件
wget --no-check-certificate http://download.cirros-cloud.net/0.5.1/cirros-0.5.1-x86_64-disk.img 

# 上传镜像到glance
openstack image create "cirros" --file cirros-0.5.1-x86_64-disk.img --disk-format qcow2 --container-format bare --public

如果上传成功,则在/var/lib/glance/images目录下可以看到上传后的文件。如果上传失败,可以查看日志文件追踪问题。

grep ERROR /var/log/glance/api.log
grep ERROR /var/log/glance/registry.log

总结

这部分介绍了glance组件是如何部署的。接下来要完成计算组件的部署。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值