一、基本简介
         镜像服务(glance)使用户能够发现,注册和检索虚拟机镜像。 它提供了一个REST API,使您可以查询虚拟机镜像元数据并检索实际镜像。 您可以将通过镜像服务提供的虚拟机映像存储在各种位置,从简单的文件系统到对象存储系统(如OpenStack对象存储)。
     为了简单起见,本指南描述了将Image服务配置为使用文件后端,该后端上载并存储在托管Image服务的控制节点上的目录中。
         OpenStack Image服务是基础架构即服务(IaaS)的核心。
         它接受磁盘或服务器映像的API请求,以及来自最终用户或OpenStack Compute组件的元数据定义。 它还支持在各种存储库类型(包括OpenStack对象存储)上存储磁盘或服务器映像。

OpenStack镜像服务包括以下组件:
         glance-api
         接受镜像API调用以进行镜像发现,检索和存储。
 
         glance-registry
         存储,处理和检索有关镜像的元数据。 元数据包括例如大小和类型等项目。
 
         Database
         存储镜像元数据,您可以根据自己的喜好选择数据库。 大多数部署使用MySQL或SQLite。
 
          Storage repository for image files(镜像文件的存储库)
          支持各种存储库类型,包括常规文件系统(或安装在glance-api控制节点上的任何文件系统),Object Storage,RADOS块设备,VMware数据存储和HTTP。 请注意,某些存储库仅支持只读用法。
 
          Metadata definition service(元数据定义服务)
         用于供应商,管理员,服务和用户的通用API来有意义地定义他们自己的定制元数据。 此元数据可用于不同类型的资源,如镜像,开发,卷,定制和聚合。 定义包括新属性的关键字,描述,约束和它可以关联的资源类型。

二、创建数据库(控制节点)
创建数据库以及用户:
# mysql -uroot -p123456
MariaDB [(none)]> CREATE DATABASE glance;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'glance123';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'glance123';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

三、创建glance用户凭证(控制节点)
用admin用户凭证创建glance用户凭证
# source admin-openrc
# openstack user create --domain default --password-prompt glance   #设置密码glance123

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

创建glance服务实体及endpoint:    
# openstack service create --name glance --description "OpenStack Image" image
# openstack endpoint create --region RegionOne image public http://10.10.11.11:9292
# openstack endpoint create --region RegionOne image internal http://10.10.11.11:9292
# openstack endpoint create --region RegionOne image admin http://10.10.11.11:9292

查看创建的endpoint:

四、安装、配置glance组件(控制节点)
4.1 安装软件包:
# yum install -y openstack-glance

4.2 修改配置文件glance-api.conf
# vim /etc/glance/glance-api.conf
编辑模式下(冒号)
删除#开头行  %g/^#/d
删除空白行   %g/^$/d

[database]
connection = mysql+pymysql://glance:glance123@localhost/glance
[keystone_authtoken]
auth_uri = http://10.10.11.11:5000
auth_url = http://10.10.11.11:35357
memcached_servers = 10.10.11.11:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = glance123
[paste_deploy]
flavor = keystone
[glance_store]
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/
#[database] 部分,配置数据库访问
#[keystone_authtoken] and [paste_deploy]部分,配置认证服务访问
#[glance_store]部分, 配置本地文件系统存储和映像文件的位置

4.3 修改配置文件glance-registry.conf
# vim /etc/glance/glance-registry.conf
[database]
connection = mysql+pymysql://glance:glance123@localhost/glance
[keystone_authtoken]
auth_uri = http://10.10.11.11:5000
auth_url = http://10.10.11.11:35357
memcached_servers = 10.10.11.11:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = glance123
[paste_deploy]
flavor = keystone

4.4 初始化数据库    
# su -s /bin/sh -c "glance-manage db_sync" glance

4.5 启动glance并设置开机启动
# systemctl enable openstack-glance-api.service openstack-glance-registry.service
# systemctl start  openstack-glance-api.service openstack-glance-registry.service
# systemctl status openstack-glance-api.service openstack-glance-registry.service

4.6 验证操作
使用CirrOS验证Image服务的操作,这是一个小型Linux映像,可帮助您测试OpenStack部署。
重新加载环境变量
# source admin-openrc

下载镜像/上传镜像
创建存放镜像文件的文件夹
# mkdir /img
# cd /img

下载镜像,这个镜像的一个很简单的镜像,测试使用很方便
# yum -y install wget
# wget http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img
制作openstack镜像
# openstack image create "cirros" \
--file cirros-0.3.5-x86_64-disk.img \
--disk-format qcow2 --container-format bare \
--public

下载一个centos的官方镜像
# wget http://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2
# glance image-create --name "CentOS-7-x86_64" --file CentOS-7-x86_64-GenericCloud.qcow2 --disk-format qcow2 --container-format bare --visibility public --progress

查看镜像:    
# openstack image list

S1_搭建分布式OpenStack集群_05 glance安装配置的更多相关文章

  1. S1_搭建分布式OpenStack集群_02 虚拟机环境配置

    一.配置主机名及hosts和防火墙(只演示一台,其他机器配置方式一样)vim /etc/hosts  加入    10.10.11.11 controller10.10.11.12 compute11 ...

  2. S1_搭建分布式OpenStack集群_07 nova服务配置 (计算节点)

    一.服务安装(计算节点)安装软件:# yum install openstack-nova-compute -y 编辑/etc/nova/nova.conf文件并设置如下内容:# vim /etc/n ...

  3. S1_搭建分布式OpenStack集群_06 nova服务配置 (控制节点)

    一.创建数据库(控制节点)创建数据库以及用户:# mysql -uroot -p12345678MariaDB [(none)]> CREATE DATABASE nova_api;MariaD ...

  4. S1_搭建分布式OpenStack集群_03 Mysql、MQ、Memcached、ETCD安装配置

    一.安装mysql(contorller)controller ~]# yum -y install mariadb mariadb-server python2-PyMySQL 配置my.cnf文件 ...

  5. S1_搭建分布式OpenStack集群_01 准备虚拟机

    Openstack版本:openstack-queen 版本 一.环境准备 网络规划: Management + API Network:10.10.11.0/24 eth1    网桥:br1 VM ...

  6. S1_搭建分布式OpenStack集群_10 cinder 存储节点配置

    一.安装配置lvm2安装LVM包:# yum install -y lvm2 启动LVM元数据服务,并将其配置为在系统启动时启动:# systemctl enable lvm2-lvmetad.ser ...

  7. S1_搭建分布式OpenStack集群_09 cinder 控制节点配置

    一.创建数据库创建数据库以及用户:# mysql -uroot -p12345678MariaDB [(none)]> CREATE DATABASE cinder;MariaDB [(none ...

  8. S1_搭建分布式OpenStack集群_11 虚拟机创建

    一.创建网络环境环境变量生效一下创建一个网络:# openstack network create --share --external \--provider-physical-network ph ...

  9. S1_搭建分布式OpenStack集群_08 网络服务(neutron)安装部署

    一.数据库配置(控制节点)创建数据库以及用户:# mysql -uroot -p12345678MariaDB [(none)]> CREATE DATABASE neutron;MariaDB ...

随机推荐

  1. python递归函数和河内塔问题

    关于递归函数: 函数内部调用自身的函数. 以n阶乘为例: f(n) = n ! = 1 x 2 x 3 x 4 x...x(n-1)x(n) = n x (n-1) ! def factorial(n ...

  2. 四则运算自动出题之javaweb版

    四则运算出题机之JAVAWEB版 要求还是和之前的出题形式一样 begin.jpg <%@ page language="java" contentType="te ...

  3. 记CentOS 发布.NET Core 2.0

    centos 7.x sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc sudo sh -c 'echo -e & ...

  4. Linux Shell/Bash wildcard通配符、元字符、转义符使用

    说到shell通配符(wildcard),大家在使用时候会经常用到.下面是一个实例: 1   1 2 3 4 [chengmo@localhost ~/shell]$ ls a.txt  b.txt  ...

  5. 在element-ui label中设置空格

    处理之前的效果 处理之后 处理方法: <el-form-item label="类型" required> <label slot="label&quo ...

  6. Android为TV端助力记录EditText.setInputType的坑

    如XML中设置android:inputType=”numberDecimal”在Java代码中仅设置setInputType(EditorInfo.TYPE_NUMBER_FLAG_DECIMAL) ...

  7. Caffeine用法

    Caffeine是使用Java8对Guava缓存的重写版本,在Spring Boot 2.0中将取代Guava.如果出现Caffeine,CaffeineCacheManager将会自动配置.使用sp ...

  8. 【RAC】 RAC For W2K8R2 安装--总体规划 (一)

    [RAC] RAC For W2K8R2 安装--总体规划 (一) 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一 ...

  9. Ftp站点搭建的详细过程(包括指定用户登录)

    最近接到要部署一个Ftp站点的一个任务,然后过程中有点小插曲踩了一些坑(指定用户登录,用户名和密码都是对的,输入了超级多遍,还是不行,登录不上,后面详细说明解决方案),特此记录一下.避免大家踩坑. 参 ...

  10. springdata jpa 关于分页@Query问题

    关于springdata jpa 分页问题相信很多小伙伴都遇到过,只要表中数量到达分页条件就会报错 废话少说直接上代码: @Query(nativeQuery = true, value = &quo ...