目录

Openstack-Mitaka 高可用之 概述
    Openstack-Mitaka 高可用之 环境初始化
    Openstack-Mitaka 高可用之 Mariadb-Galera集群部署
    Openstack-Mitaka 高可用之 Rabbitmq-server 集群部署
    Openstack-Mitaka 高可用之 memcache
    Openstack-Mitaka 高可用之 Pacemaker+corosync+pcs高可用集群
    Openstack-Mitaka 高可用之 认证服务(keystone)
    OpenStack-Mitaka 高可用之 镜像服务(glance)
    Openstack-Mitaka 高可用之 计算服务(Nova)
    Openstack-Mitaka 高可用之 网络服务(Neutron)
    Openstack-Mitaka 高可用之 Dashboard
    Openstack-Mitaka 高可用之 启动一个实例
    Openstack-Mitaka 高可用之 测试

简介

镜像服务允许用户发现、注册和获取虚拟机镜像。它提供了一个API,允许查询虚拟机镜像的metadata 并获取一个现存的镜像。可以将虚拟机镜像存储到各种位置,从简单的文件系统到对象存储系统。

组件:
    (1)glance-api
        接收镜像API的调用,诸如镜像发现、恢复、存储
    (2)glance-registry
        存储、处理和恢复镜像的元数据,元数据包括项诸如大小和类型
    (3)数据库
        存放镜像源数据,诸如MySQL、SQLite
    (4)镜像文件的存储仓库
        支持多种类型的仓库,它们有普通文件系统、对象存储、RADOS块存储、HTTP
    (5)元数据定义服务
        通用API,是用于为厂商、管理员、服务、及用户自定义元数据

安装和配置

安装服务前,必须创建一个数据库、服务凭证和API端点

root@controller1 ~]# . admin-openrc
[root@controller1 ~]# mysql -ugalera -pgalera -h 192.168.0.10 MariaDB [(none)]> CREATE DATABASE glance;
Query OK, row affected (0.07 sec) MariaDB [(none)]> grant all privileges on glance.* to 'glance'@'localhost' identified by 'glance';
Query OK, rows affected (0.01 sec) MariaDB [(none)]> grant all privileges on glance.* to 'glance'@'%' identified by 'glance';
Query OK, rows affected (0.01 sec) MariaDB [(none)]> flush privileges;
Query OK, rows affected (0.00 sec) 创建服务证书
[root@controller1 ~]# openstack user create --domain default --password-prompt glance # 密码 glance 创建服务实体
[root@controller1 ~]# openstack service create --name glance --description "OpenStack Image" image 创建镜像服务的API端点
[root@controller1 ~]# openstack endpoint create --region RegionOne image public http://controller:9292
[root@controller1 ~]# openstack endpoint create --region RegionOne image internal http://controller:9292
[root@controller1 ~]# openstack endpoint create --region RegionOne image admin http://controller:9292

安装并配置组件

三个节点都需要安装:
# yum install openstack-glance -y 配置文件做如下修改:
[root@controller1 ~]# vim /etc/glance/glance-api.conf

Bind_host = 192.168..xx # 监听ip地址,为了避免和vip冲突。
registry_host = 192.168..xx # 监听ip地址,为了避免和vip冲突。
[database]
...
connection = mysql+pymysql://glance:glance@controller/glance
[keystone_authtoken]
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller1:,controller2:,controller3:
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = glance
[paste_deploy]
...
flavor = keystone [glance_store]
...
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/ [root@controller1 ~]# vim /etc/glance/glance-registry.conf
[database]
...
connection = mysql+pymysql://glance:glance@controller/glance

bind_host = 192.168..xx # 监听ip地址,为了避免和vip冲突。
[keystone_authtoken]
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller1:,controller2:,controller3:
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = glance
[paste_deploy]
...
flavor = keystone

将修改后的配置文件拷贝到其他controller节点

[root@controller1 ~]# cd /etc/glance/
[root@controller1 glance]# scp glance-api.conf glance-registry.conf controller2:/etc/glance/
glance-api.conf % 137KB .5KB/s :
glance-registry.conf % 65KB .5KB/s :
[root@controller1 glance]# scp glance-api.conf glance-registry.conf controller3:/etc/glance/
glance-api.conf % 137KB .5KB/s :
glance-registry.conf

注意修改监听地址

写入镜像服务数据库

[root@controller1 ~]# su -s /bin/sh -c "glance-manage db_sync" glance
忽视告警信息
Option "verbose" from group "DEFAULT" is deprecated for removal. Its value may be silently ignored in the future.
/usr/lib/python2./site-packages/oslo_db/sqlalchemy/enginefacade.py:: OsloDBDeprecationWarning: EngineFacade is deprecated; please use oslo_db.sqlalchemy.enginefacade
expire_on_commit=expire_on_commit, _conf=conf)
/usr/lib/python2./site-packages/pymysql/cursors.py:: Warning: (, u'Duplicate index `ix_image_properties_image_id_name`. This is deprecated and will be disallowed in a future release.')
result = self._query(query)

完成安装,启动镜像服务

每个controller节点都需要执行:
# systemctl enable openstack-glance-api.service openstack-glance-registry.service
# systemctl start openstack-glance-api.service openstack-glance-registry.service

Haproxy 详解
http://blog.itpub.net/28624388/viewspace-1288651/

listen galera_cluster
mode tcp
bind 192.168.0.10:
balance source
option mysql-check user haproxy
server controller1 192.168.0.11: check inter rise fall backup
server controller2 192.168.0.12: check inter rise fall
server controller3 192.168.0.13: check inter rise fall backup listen memcache_cluster
mode tcp
bind 192.168.0.10:
balance source
server controller1 192.168.0.11: check inter rise fall
server controller2 192.168.0.12: check inter rise fall
server controller3 192.168.0.13: check inter rise fall listen dashboard_cluster
mode tcp
bind 192.168.0.10:
balance source
option tcplog
option httplog
server controller1 192.168.0.11: check inter rise fall
server controller2 192.168.0.12: check inter rise fall
server controller3 192.168.0.13: check inter rise fall listen keystone_admin_cluster
mode tcp
bind 192.168.0.10:
balance source
option tcplog
option httplog
server controller1 192.168.0.11: check inter rise fall
server controller2 192.168.0.12: check inter rise fall
server controller3 192.168.0.13: check inter rise fall
listen keystone_public_internal_cluster
mode tcp
bind 192.168.0.10:
balance source
option tcplog
option httplog
server controller1 192.168.0.11: check inter rise fall
server controller2 192.168.0.12: check inter rise fall
server controller3 192.168.0.13: check inter rise fall listen glance_api_cluster
mode tcp
bind 192.168.0.10:
balance source
option tcplog
option httplog
server controller1 192.168.0.11: check inter rise fall
server controller2 192.168.0.12: check inter rise fall
server controller3 192.168.0.13: check inter rise fall

确认无误,拷贝到其他controller节点

[root@controller1 glance]# systemctl restart haproxy
[root@controller1 glance]# netstat -ntplu | grep haproxy
tcp 192.168.0.10: 0.0.0.0:* LISTEN /haproxy
tcp 192.168.0.10: 0.0.0.0:* LISTEN /haproxy
tcp 192.168.0.10: 0.0.0.0:* LISTEN /haproxy
tcp 192.168.0.10: 0.0.0.0:* LISTEN /haproxy
tcp     0    0 192.168.0.10:80     0.0.0.0:*         LISTEN    10560/haproxy
tcp 192.168.0.10: 0.0.0.0:* LISTEN /haproxy
udp 0.0.0.0: 0.0.0.0:* /haproxy [root@controller1 ~]# scp /etc/haproxy/haproxy.cfg controller2:/etc/haproxy/
haproxy.cfg % .6KB/s :
[root@controller1 ~]# scp /etc/haproxy/haproxy.cfg controller3:/etc/haproxy/
haproxy.cfg % .6KB/s :

haproxy配置务必保持一致。

验证操作:

选择任意节点下载镜像:

# wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img     # 可提前使用迅雷下载

使用QCOW2磁盘格式,bare容器格式上传镜像到镜像服务并设置公共可见,这样所有的项目都可以访问它:

# openstack image create "cirros" --file cirros-0.3.-x86_64-disk.img --disk-format qcow2 --container-format bare --public

创建成功,确认镜像上传并验证属性:

# openstack image list

glance部署成功。

[ Openstack ] OpenStack-Mitaka 高可用之 镜像服务(glance)的更多相关文章

  1. [ Openstack ] Openstack-Mitaka 高可用之 计算服务(Nova)

    目录 Openstack-Mitaka 高可用之 概述    Openstack-Mitaka 高可用之 环境初始化    Openstack-Mitaka 高可用之 Mariadb-Galera集群 ...

  2. [ Openstack ] Openstack-Mitaka 高可用之 网络服务(Neutron)

    目录 Openstack-Mitaka 高可用之 概述    Openstack-Mitaka 高可用之 环境初始化    Openstack-Mitaka 高可用之 Mariadb-Galera集群 ...

  3. Centos7 install Openstack - (第三节)添加镜像服务(Glance)

    Centos7 install Openstack - (第三节)添加镜像服务(Glance) 我的blog地址:http://www.cnblogs.com/caoguo 该文根据openstack ...

  4. 【openstack N版】——镜像服务glance

    一.openstack镜像服务glance 1.1 glance介绍 glance主要是由三部分组成 glance-api:接收云系统镜像的创建,删除,读取请求,类似nova-api,通过其他模块(g ...

  5. OpenStack实践系列③镜像服务Glance

    OpenStack实践系列③镜像服务Glance 3.5 Glance部署 修改glance-api和glance-registry的配置文件,同步数据库 [root@node1 ~]# vim /e ...

  6. 云计算管理平台之OpenStack镜像服务glance

    一.glance简介 openstack中的glance服务是用来存储在openstack上启动虚拟机所需镜像:它主要用于发现.注册及检索虚拟机镜像:它通过提供RESTful风格的api对外提供服务: ...

  7. 探索 OpenStack 之(10):深入镜像服务Glance

    本篇博文来探讨下镜像服务Glance. 0.  基本概念 0.1 基本功能 Glance提供REST API来支持以下镜像操作: 查询 注册 上传 获取 删除 访问权限管理 0.2 Glance RE ...

  8. 使用kuernetes提供高可用的logstash服务

    在kubernetes集群中部署logstash步骤如下: 1:logstash安装文件(目前最新版本2.3.4): 2:编写Dockerfile及执行点脚本文件run.sh,并且修改logstash ...

  9. 搭建高可用的Redis服务,需要注意这些方面!

    搭建高可用的Redis服务,需要注意这些方面! HorstXu 占小狼的博客 今天 ◎作者 | HorstXu www.cnblogs.com/xuning/p/8464625.html 基于内存的R ...

随机推荐

  1. redis的认识

    <?php /* Redis优势: 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s . 丰富的数据类型 – Redis支持二进制案例的 String, Lis ...

  2. UGUI 代码 动态添加 Event Trigger 的事件

    Additionally, if you need more than just the events provided by default, I'd suggest instead attachi ...

  3. 安装并配置maven

    1下载Maven 2添加仓库(仓库就是maven项目统一存放依赖的地方 根据groupId ArtifactId Version来组成项目依赖路径) conf——settings.xml------- ...

  4. 使用 window.getSelection() 方法获取鼠标划取部分的起始位置和结束位置的问题(高亮后不能正确获取)

    如果没有高亮等复杂处理,只需要获取一段文字中选取的字和位置,那么 使用window.getSelection()获取div中选中文字内容及位置 怎么获取textarea中选中文字 则可以满足需求: - ...

  5. Jprofiler分析WebSphere(配置WebSphereagent代理)

    一.   Windows+WebSphere+Jprofiler9 我们自己的windows机器监控本地的WebSphere,应该为服务器配置监控代理,供Jprofiler连接使用,具体步骤如下: 1 ...

  6. hdu 1285 确定比赛名次 (拓扑)

    确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  7. [Leetcode] Reorder list 重排链表

    Given a singly linked list L: L 0→L 1→…→L n-1→L n,reorder it to: L 0→L n →L 1→L n-1→L 2→L n-2→… You ...

  8. BZOJ 3319 黑白树 并查集+线段树

    这这这这这这什么毒瘤题!!!!!!!!!!!!!!!!!!!!!!!!!!!! 卡LCT(优秀的LCT由于是均摊本身就带着2,3的常数在,而且这道题对于LCT标记十分难维护,又得乘上4,5然后就炸了) ...

  9. Codeforces Round #348 (VK Cup 2016 Round 2, Div. 2 Edition) C

    C. Little Artem and Matrix time limit per test 2 seconds memory limit per test 256 megabytes input s ...

  10. [8.16模拟赛] 玩具 (dp/字符串)

    题目描述 儿时的玩具总是使我们留恋,当小皮还是个孩子的时候,对玩具更是情有独钟.小皮是一个兴趣爱好相当广泛且不专一的人,这这让老皮非常地烦恼.也就是说,小皮在不同时刻所想玩的玩具总是会不同,而有心的老 ...