全文转自https://www.voidking.com/dev-ubuntu16-manual-openstack-glance/

目标

紧接着《Ubuntu16手动安装OpenStack——keystone篇》,本文我们来安装glance,主要参考Glance Installation Tutorial for Ubuntu

glance简介

Image服务(glance)使用户能够发现、注册和检索虚拟机映像。它提供了一个REST API,使用户可以查询虚拟机镜像元数据并检索实际镜像。用户可以通过Image服务,把虚拟机映像存储在各种位置,从简单的文件系统到OpenStack Object Storage等对象存储系统。

为简单起见,官方教程中介绍如何配置Image服务以使用文件后端,该文件后端上载并存储在托管Image服务的控制器节点上的目录中。默认情况下,此目录为/var/lib/glance/ images/。在继续之前,请确保控制器节点在此目录中至少有几千兆字节的可用空间。请记住,由于文件后端通常是控制器节点的本地,因此通常不适合多节点glance部署。

OpenStack Image服务是Infrastructure-as-a-Service(IaaS)的核心。它接受来自磁盘或服务器映像的API请求,以及来自终端用户或OpenStack Compute组件的元数据定义。它还支持在各种存储库类型(包括OpenStack Object Storage)上存储磁盘或服务器映像。许多定期进程在OpenStack Image服务上运行以支持缓存。Replication服务可确保群集的一致性和可用性,其他定期进程包括auditors,updaters和reapers。

OpenStack Image服务包括以下组件:

glance-api
接受Image API调用以进行镜像发现,检索和存储。

官方建议将Glance作为独立服务器以传统方式运行。

glance-registry
存储,处理和检索有关镜像的元数据。元数据包括大小和类型等选项。

注册表是一个私有的内部服务,供OpenStack Image服务使用,不要将此服务公开给用户。

Glance注册服务及其API已在queens版本中弃用,并且在“S”开发周期开始后,可根据OpenStack标准弃用政策进行删除。

Database
存储镜像元数据,您可以根据自己的喜好选择数据库,大多数部署使用MySQL或SQLite。

Storage repository for image files
支持各种存储库类型,包括常规文件系统(或安装在glance-api控制器节点上的任何文件系统),Object Storage,RADOS块设备,VMware数据存储和HTTP。

请注意,某些存储库仅支持只读用法。

Metadata definition service
供应商、管理员、服务和用户的通用API,用于定义自己的元数据。此元数据可用于不同类型的资源,如 images、artifacts、volumes、flavors和aggregates。定义包括新属性的关键字、描述、约束和它可以关联的资源类型。

安装和配置

本节介绍如何在控制器节点上安装和配置镜像服务(glance)。为简单起见,此配置将镜像存储在本地文件系统上。

root用户

为了避免权限问题,建议切换到root用户进行操作(否则要加很多sudo)。
sudo -i

数据库

1、登录数据库
mysql -uroot -p,密码为openstack。

2、创建glance数据库
CREATE DATABASE glance;

3、授权
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'openstack';

GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'openstack';

4、退出数据库
exit;

服务证书和端点

1、使admin环境生效
. admin-openrc

2、创建glance用户
openstack user create --domain default --password-prompt glance

根据提示设置密码为openstack。

3、将admin角色添加到glance用户和service项目上
openstack role add --project service --user glance admin

4、创建glance服务实体
openstack service create --name glance --description "OpenStack Image" image

5、创建镜像服务API endpoints

1
2
3
4
5
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

安装和配置组件

1、安装glance
apt -y install glance

2、备份glance-api.conf
mv /etc/glance/glance-api.conf /etc/glance/glance-api.conf.bak

3、vim /etc/glance/glance-api.conf,新建glance-api.conf文件内容为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[DEFAULT]
bind_host = 0.0.0.0 [glance_store]
default_store = file
filesystem_store_datadir = /var/lib/glance/images/ [database]
# MariaDB connection info
connection = mysql+pymysql://glance:openstack@controller/glance # Keystone auth info
[keystone_authtoken]
www_authenticate_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 = openstack [paste_deploy]
flavor = keystone

4、备份glance-registry.conf
mv /etc/glance/glance-registry.conf /etc/glance/glance-registry.conf.bak

5、vim /etc/glance/glance-registry.conf,新建glance-registry.conf内容为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[DEFAULT]
bind_host = 0.0.0.0 [database]
# MariaDB connection info
connection = mysql+pymysql://glance:openstack@controller/glance # Keystone auth info
[keystone_authtoken]
www_authenticate_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 = openstack [paste_deploy]
flavor = keystone

6、更改权限

1
2
chmod 644 /etc/glance/glance-api.conf /etc/glance/glance-registry.conf
chown glance. /etc/glance/glance-api.conf /etc/glance/glance-registry.conf

7、生成glance数据库结构
su -s /bin/bash glance -c "glance-manage db_sync"

完成后登录mysql查看数据。

查看日志命令:
tail /var/log/glance/glance-api.log

tail /var/log/glance/glance-registry.log

8、重启镜像服务
systemctl restart glance-api glance-registry

验证操作

1、使admin环境生效
. admin-openrc

2、下载corris镜像
wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img

3、上传corris镜像到glance,存储为QCOW2格式,并且设置为所有人可见

1
2
3
4
openstack image create "cirros" \
--file cirros-0.4.0-x86_64-disk.img \
--disk-format qcow2 --container-format bare \
--public

有关OpenStack映像创建参数的信息,请参阅OpenStack用户指南中的创建或更新映像(glance)

有关映像的磁盘和容器格式的信息,请参阅OpenStack虚拟机映像指南中的映像的磁盘和容器格式

4、查看镜像
openstack image list

看到镜像ID、Name和Status。

cd /var/lib/glance/images,可以看到名为镜像ID的文件。

Ubuntu16手动安装OpenStack——glance篇--转的更多相关文章

  1. Ubuntu16手动安装OpenStack——nova篇。。转

    前言: 本文转自https://www.voidking.com/dev-ubuntu16-manual-openstack-nova/ ,过程非常的详细,作者也说本实验最终失败,因为课程要求我们只要 ...

  2. Ubuntu16手动安装OpenStack——keystone篇

    本博客来自于https://www.voidking.com/dev-ubuntu16-manual-openstack-keystone/ 赶紧做笔记 keystone简介 OpenStack身份识 ...

  3. Ubuntu16手动安装OpenStack

    记录大佬的博客全文转载于https://www.voidking.com/dev-ubuntu16-manual-openstack-env/ 前言 <Ubuntu16安装OpenStack&g ...

  4. ubuntu16.0 安装 openstack

    主要参考官方文档:https://docs.openstack.org/liberty/zh_CN/install-guide-ubuntu/environment-nosql-database.ht ...

  5. 手动安装OpenStack Mistral

    Prepare packages: $ sudo apt-get install python-dev python-setuptools python-pip libffi-dev libxslt1 ...

  6. openstack奠基篇:devstack (liberty)于centos 7安装

    openstack是什么,能做什么,我就不说了,他的优势和伟大,可以想想AWS的云服务平台.学习和研究openstack(IaaS),个人的习惯是有一个可以操作的平台,然后结合代码看看详细逻辑,这个过 ...

  7. kolla-ansible安装openstack(Ocata)

    基本功能部署 基础环境 角色 操作系统 硬件配置 Depoly CentOS 7 Server 磁盘:40GB 内存:8GB 网卡:ens3(内网) ens4(外网) Sched CentOS 7 S ...

  8. Linux(CentOS、Ububtu)一键安装Openstack及其它参考文档汇总

    原文链接  http://www.aboutyun.com/thread-10920-1-1.html openstack相关资料 CentOS下一键安装Openstack  http://blog. ...

  9. devstack安装openstack newton版本

    准备使用devstack安装openstack N版,搞一套开发环境出来.一连整了4天,遇到各种问题,各种错误,一直到第4天下午4点多才算完成. 在这个过程中感觉到使用devstack搭建openst ...

随机推荐

  1. CF1045G AI robots

    CF1045G AI robots 题目大意就不说了 这道题可以用CDQ分治做 但是,如何选择CDQ分治的维度一直是CDQ分治的难点所在 这道题我们有三种选择 1.让智商高的数智商低的 2.让看的近的 ...

  2. supported platform

    Target name Platform Architecture Endianness Developer(s) Known Issues/Notes adm5120 Infineon/ADMtek ...

  3. 游戏《Minecraft》或其他应用程序 实现 自动更新 客户端版本

    本渣又来写(水)博客了. 先说一下,我这个解决方案的安全性并不是企业级的,咱们就是一群穷开服的Minecraft玩家. 如果你要投入到企业级应用(容易被黑客攻击的场景),请自己写,思路凑合看看.不然安 ...

  4. 【Repo】repo sync:error.GitError: cannot initialize work tree

    1.Error Fetching projects: 100% (725/725), done. Checking out files: 100% (4605/4605), done.out file ...

  5. docker(整理中

    docker镜像默认的下载地址就是docker的官网,而他们的官网在国内没有节点,时不时就被国家防火墙隔绝,会出现DNS解析不到,或者找不到镜像等狗血提示. 解决的方法有三个: 第一,就是不断尝试,因 ...

  6. CentOS系统将UTC时间修改为CST时间方法

    世界协调时间(Universal Time Coordinated,UTC): GPS 系统中有两种时间区分,一为UTC,另一为LT(地方时)两者的区别为时区不同,UTC就是0时区的时间,地方时为本地 ...

  7. Spring Boot + Docker + K8S 简单示例

    前言 最近看了看k8s,感觉用这个管理docker确实比自己写一坨脚本进步太多了,简直不是一个次原的东西. 看着k8s的官方文档随手写了个小Demo,一个基于k8s的spring boot服务. 代码 ...

  8. Django发送邮件方法

    在Django中将渲染后的模板进行邮件发送,可以使用send_email方法 首先在settings.py中添加如下配置 # 邮件配置SSL加密方式 EMAIL_HOST = 'smtp.qq.com ...

  9. 洛谷P1248 加工生产调度 贪心

    正解:贪心 解题报告: 传送门$QwQ$ $umm$直接看可能比较难想,可以先考虑另一个题? 有$n$个小怪,每打一只小怪会扣$a_i$的血,打完之后会回升$b_i$的血,问至少要多少血量才能使全程血 ...

  10. 机器学习-Pandas 知识点汇总(吐血整理)

    Pandas是一款适用很广的数据处理的组件,如果将来从事机械学习或者数据分析方面的工作,咱们估计70%的时间都是在跟这个框架打交道.那大家可能就有疑问了,心想这个破玩意儿值得花70%的时间吗?咱不是还 ...