美文网首页
4.镜像服务glance

4.镜像服务glance

作者: 哆啦A梦_ca52 | 来源:发表于2019-12-16 15:34 被阅读0次

    部署镜像服务 glance:
    Glance 是 OpenStack 镜像服务组件, glance 服务默认监听在 9292 端口,其接收 REST API 请
    求,然后通过其他模块(glance-registry 及 image store)来完成诸如镜像的获取、上传、删除
    等操作, Glance 提供 restful API 可以查询虚拟机镜像的 metadata,并且可以获得镜像,通过
    Glance,虚拟机镜像可以被存储到多种存储上,比如简单的文件存储或者对象存储(比如
    OpenStack 中 swift 项目)是在创建虚拟机的时候,需要先把镜像上传到 glance,对镜像的列
    出镜像、删除镜像和上传镜像都是通过 glance 进行理, glance 有两个主要的服务,一个是
    glace-api 接收镜像的删除上传和读取,一个是 glance-Registry。
    glance-registry 负责与 mysql 数据交互,用于存储或获取镜像的元数据(metadata),提供镜
    像元数据相关的 REST 接口,通过 glance-registry 可以向数据库中写入或获取镜像的各种数
    据, glance-registyr 监听的端口是 9191, glance 数据库中有两张表,一张是 glance 表,一张
    是 imane property 表, image 表保存了镜像格式、大小等信息, image property 表保存了镜像
    的定制化信息。
    image store 是一个存储的接口层,通过这个接口 glance 可以获取镜像, image store 支持的
    存储有 Amazon 的 S3、 openstack 本身的 swift、还有 ceph、 glusterFS、 sheepdog 等分布式存
    储, image store 是镜像保存与读取的接口,但是它只是一个接口,具体的实现需要外部的支
    持, glance 不需要配置消息队列,但是需要配置数据库和 keystone。
    官方部署文档: https://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/glance.html
    https://docs.openstack.org/glance/stein/install/install-rdo.html
    设置权限
    [root@mysql ~]# chown 161.161 -R /data/openstack/image/

    [root@controller1 ~]# openstack project list
    Internal Server Error (HTTP 500)

    安装haproxy解决域名问题
    [root@controller1 ~]# yum install haproxy -y
    listen mysql
    bind 192.168.200.101:3306
    mode tcp
    server mysql1 192.168.200.105:3306 check
    listen memcached
    bind 192.168.200.101:11211
    mode tcp
    server mysql1 192.168.200.105:11211 check

    做个转发保证mysql和keysten都可以用
    [root@controller1 ~]# systemctl start haproxy
    可以访问
    [root@controller1 ~]# openstack project list
    +----------------------------------+---------+
    | ID | Name |
    +----------------------------------+---------+
    | 9d039098dc4743899e030b15e649e420 | demo |
    | c7478f76b624458993cfb98de35e9220 | service |
    | db01fb9905504e4ca93f5a9ccde1500e | admin |
    +----------------------------------+---------+

    本节介绍如何在控制器节点上安装和配置代号为glance的Image服务。为简单起见,此配置将图像存储在本地文件系统上。
    ## 前提条件
    在安装和配置Image服务之前,必须创建数据库,服务凭证和API端点。
    
    1.  要创建数据库,请完成以下步骤:
     使用数据库访问客户端以`root`用户身份连接到数据库服务器:
    创建glance数据库:
    MariaDB [keystone]> CREATE DATABASE glance;
    
    授予对glance数据库的适当访问权限:
    GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'glance123';
    控制端测试连接
    [root@controller1 ~]# mysql -uglance  -h192.168.200.105 -pglance123
    查看数据库
    MariaDB [(none)]> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | glance             |
    | information_schema |
    +--------------------+
    2 rows in set (0.001 sec)
    管理端导入环境变量
    来源admin凭据来访问仅管理员CLI命令:
    [root@controller1 ~]# source scripts/admin-stein.sh 
    要创建服务凭证,请完成以下步骤:
    创建glance用户:
    [root@controller1 ~]# openstack user create --domain default --password-prompt glance
    User Password:
    Repeat User Password:
    +---------------------+----------------------------------+
    | Field               | Value                            |
    +---------------------+----------------------------------+
    | domain_id           | c12058276278430fbf36271c39c4e356 |
    | enabled             | True                             |
    | id                  | 0f01655eb13c49ac867f25c34c4bdaff |
    | name                | glance                           |
    | options             | {}                               |
    | password_expires_at | None                             |
    +---------------------+----------------------------------+
    将admin角色添加到glance用户和 service项目:
    [root@controller1 ~]# openstack role add --project service --user glance admin
    创建glance服务实体
    [root@controller1 ~]# openstack service create --name glance --description "OpenStack Image" image
    +-------------+----------------------------------+
    | Field       | Value                            |
    +-------------+----------------------------------+
    | description | OpenStack Image                  |
    | enabled     | True                             |
    | id          | 35eea3eb3f674fadb4811d3f6b8f4d33 |
    | name        | glance                           |
    | type        | image                            |
    +-------------+----------------------------------+
    创建图像服务API端点:
    [root@controller1 ~]# openstack endpoint create --region RegionOne  image public http://openstack-vip.wyh.net:9292
    [root@controller1 ~]# openstack endpoint create --region RegionOne image internal http://openstack-vip.wyh.net:9292
    [root@controller1 ~]#openstack endpoint create --region RegionOne image admin http://openstack-vip.wyh.net:9292
    
    
    安装软件包:
    [root@controller1 ~]#  yum install openstack-glance -y
    安装nfs服务
    [root@mysql ~]# yum install nfs-utils -y
    [root@controller1 ~]# yum install nfs-utils -y
    创建放镜像的文件夹
    [root@mysql ~]# mkdir /data/openstack/image -p
    [root@mysql ~]# cat /etc/exports
    /data/openstack/image *(rw,no_root_squash)
    [root@mysql ~]# systemctl start nfs
    [root@mysql ~]# systemctl enable nfs
    查看挂载信息
    [root@controller1 ~]# showmount -e 192.168.200.105
    Export list for 192.168.200.105:
    /data/openstack/image *
    编辑/etc/glance/glance-api.conf文件并完成以下操作:
    [root@controller1 ~]# vim /etc/glance/glance-api.conf
    在该[database]部分中,配置数据库访问:
    [database]
    connection = mysql+pymysql://glance:glance123@openstack-vip.wyh.net/glance
    在[keystone_authtoken]和[paste_deploy]部分中,配置身份服务访问:
    www_authenticate_uri  = http://openstack-vip.wyh.net:5000
    auth_url = http://openstack-vip.wyh.net:5000
    memcached_servers = openstack-vip.wyh.net:11211
    auth_type = password
    project_domain_name = Default
    user_domain_name = Default
    project_name = service
    username = glance
    password = glance
    [paste_deploy]
    flavor = keystone
    在该[glance_store]部分中,配置本地文件系统存储和图像文件的位置:
    [glance_store]
    stores = file,http
    default_store = file
    filesystem_store_datadir = /var/lib/glance/images/
    
    

    编辑/etc/glance/glance-registry.conf文件并完成以下操作:

    在该[database]部分中,配置数据库访问
    [database]
    connection = mysql+pymysql://glance:glance123@openstack-vip.wyh.net/glance
    在[keystone_authtoken]和[paste_deploy]部分中,配置身份服务访问:
    [keystone_authtoken]
    www_authenticate_uri = http://openstack-vip.wyh.net:5000
    auth_url = http://openstack-vip.wyh.net:5000
    memcached_servers = openstack-vip.wyh.net:11211
    auth_type = password
    project_domain_name = Default
    user_domain_name = Default
    project_name = service
    username = glance
    password = glance
    [paste_deploy]
    flavor = keystone
    初始化数据库
    [root@controller1 ~]#  su -s /bin/sh -c "glance-manage db_sync" glance
    启动映像服务,并将其配置为在系统引导时启动:
    # systemctl enable openstack-glance-api.service \
      openstack-glance-registry.service
    # systemctl start openstack-glance-api.service \
      openstack-glance-registry.service
    挂载
    [root@controller1 ~]# mount -t nfs 192.168.200.105:/data/openstack/image /var/lib/glance/images
    
    [root@controller1 ~]# systemctl restart openstack-glance-api.service \
    >   openstack-glance-registry.service
    [root@controller1 ~]# vim /etc/fstab 设置开机自动挂载
    192.168.200.105:/data/openstack/image /var/lib/glance/images nfs defaults,_netdev
    测试挂载没有问题
    查看日志的信息(查看有没有erro信息)
    [root@controller1 ~]# tail -f /var/log/glance/*.log
    2019-12-16 13:31:12.672 25886 INFO eventlet.wsgi.server [-] (25886) wsgi starting up on http://0.0.0.0:9191
    

    查看验证讯息

    [https://docs.openstack.org/glance/stein/install/](https://docs.openstack.org/glance/stein/install/)
    
    [https://docs.openstack.org/glance/stein/install/verify.html](https://docs.openstack.org/glance/stein/install/verify.html)
    下载源图像:
    [root@controller1 ~]# wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img
    
    创建镜像
    [root@controller1 ~]# openstack image create "cirros"   --file cirros-0.4.0-x86_64-disk.img   --disk-format qcow2 --container-format bare   --public
    确认上传镜像并验证属性:
    [root@controller1 ~]# openstack image list
    +--------------------------------------+--------+--------+
    | ID                                   | Name   | Status |
    +--------------------------------------+--------+--------+
    | aaea9d72-7913-413d-842a-518cbc0e82ef | cirros | active |
    +--------------------------------------+--------+--------+
    
    

    相关文章

      网友评论

          本文标题:4.镜像服务glance

          本文链接:https://www.haomeiwen.com/subject/qvicnctx.html