初识openstack之——安装Image

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识openstack之——安装Image相关的知识,希望对你有一定的参考价值。

一、实验说明

按照官方文档搭建queens版本openstack,拓扑如下图所示:
技术分享图片

二、Image service介绍

image server,代码名称为galnce,用于存放虚拟机的映像文件,他通过一个REST API接口供用户查找映像文件的metadata并获得实际的映像文件。虚拟机映像文件可以存在本地文件系统中或者类似swift的对象存储中,metadata由终端用户或者openstack的compute组建定义。
image server通过几个周期性的进程来为其提供缓存和确保集群中映像文件的一致性和高可用。
image server由以下几个组件构成:

  1. glance-api
    接收发现、获取和存储的image API调用
  2. glance-registry
    存储、处理和检索有关image的元数据。元数据包括大小和类型等项。注意:不要将该组建暴漏给用户。
  3. Database
    存储image元数据,可以使用mysql或SQLite数据库。
  4. Storage repository for image files
    支持各种存储库类型,包括普通文件系统、对象存储等。注意,有些存储库只支持只读使用。
  5. Metadata definition service
    提供通用API,让用户自定义元数据。元数据可用于image、volume等不同的资源类型

    三、操作步骤

    为简单起见,将image server安装在controller节点并将数据保存在本地文件系统上
    准备工作
    安装配置image server前需要先为其创建数据库,服务凭证以及API endpiont

  6. 创建数据库并授权
    [[email protected] ~]# mysql  
    MariaDB [(none)]> create database glance;  
    MariaDB [(none)]> grant all privileges on glance.* to ‘glance‘@‘localhost‘ identified by ‘password1!‘;  
    MariaDB [(none)]> grant all privileges on glance.* to ‘glance‘@‘%‘ identified by ‘password1!‘;    

    2.使用admin身份创建glance用户并授权

    [[email protected] ~]# . admin-openrc    
    [[email protected] ~]# openstack user create --domain default --password-prompt glance  

    技术分享图片

    [[email protected] ~]# openstack role add --project service --user glance admin  
  7. 创建glance服务
    [[email protected] ~]# openstack service create --name glance   --description "OpenStack Image" image  

    技术分享图片

  8. 创建image服务API路径
    usage: openstack endpoint create <service> <interface> <url>    
    [[email protected] ~]# openstack endpoint create --region RegionOne   image public http://controller:9292  

    技术分享图片

    [[email protected] ~]# openstack endpoint create --region RegionOne   image internal http://controller:9292  

    技术分享图片

    [[email protected] ~]# openstack endpoint create --region RegionOne   image admin http://controller:9292  

    技术分享图片

安装配置

  1. 安装程序并创建映像文件存放目录
    [[email protected] ~]#  yum install openstack-glance  
    [[email protected] ~]# mkdir -pv /var/images  
  2. 编辑/etc/glance/glance-api.conf配置文件
    [database]  
    connection = mysql+pymysql://glance:[email protected]/glance  
    [keystone_authtoken]  
    auth_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 = password1!  
    [paste_deploy]  
    flavor = keystone  

    注销或删除[keystone_authtoken]段的其他选项,在[glance_store]段设置映像文件存放位置

    [glance_store]  
    stores = file,http  
    default_store = file  
    filesystem_store_datadir = /var/images/  
  3. 编辑/etc/glance/glance-registry.conf配置文件
    [database]  
    connection = mysql+pymysql://glance:[email protected]/glance  
    [keystone_authtoken]  
    auth_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 = password1!  
    [paste_deploy]  
    flavor = keystone  

    注销或删除[keystone_authtoken]段的其他选项

  4. 初始化image数据库并验证
    [ro[email protected] ~]# su -s /bin/sh -c "glance-manage db_sync" glance  
    [[email protected] ~]# mysql  
    MariaDB [(none)]> show databases;  

    技术分享图片

    MariaDB [(none)]> use glance;  
    MariaDB [glance]> show tables;  

    技术分享图片

启动服务并设置开机自启

[[email protected] ~]# systemctl enable openstack-glance-api.service   openstack-glance-registry.service  
[[email protected] ~]# systemctl start openstack-glance-api.service   openstack-glance-registry.service  

以上是关于初识openstack之——安装Image的主要内容,如果未能解决你的问题,请参考以下文章

初识openstack之5——安装Keystone

初识openstack之4——opsenstack安装前准备

初识openstack之3——opsenstack概念及实验环境介绍

Openstack 安装部署指南翻译系列 之 Glance服务安装(Image)

OpenStack之KVM用virt-manager创建带有OS的image

Openstack 安装部署指南翻译系列 之 Keystone服务安装(Identity)