AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

Openstack Trove 在奇云上的实践

  • 2019-11-14
  • 本文字数:1259 字

    阅读完需:约 4 分钟

Openstack Trove在奇云上的实践

Openstack Trove 是 Openstack 为用户提供的数据库即服务。Trove 允许用户快速又简单的使用关系型或非关系型数据库,不需要有处理复杂管理任务的负担。在实际使用中,原生的 Trove 在创建主从模式数据库实例,如 RDS/Redis 时,需要先单独创建一个主实例,再创建一个该实例的副本,才能建立好主从关系,需要两步操作。同时在实例里,用户私有网络需要与管理网络互通,有很大的安全隐患。本文将介绍奇云在创建主从模式数据库实例上,对 Trove 做了哪些改造。

Trove 简介

Trove 能完全运行于 Openstack 中,Trove 与 Openstack 其他组件通过 Restful API 来交互。其中最主要的部分,Trove 在 Nova 中创建包含 trove-guestagent 和数据库程序的虚机,Trove 所使用的镜像存放在 Glance 中, Neutron 为 Trove 分配所要的网络信息,同时 Trove 依赖 keystone 与其他组件通信。



Trove 自身包含的组件通过消息队列来通信,它们可以运行在不同的服务器上。Trove 主要由下面这些组件组成。


  • API Server

  • Message Bus

  • Task Manager

  • Guest Agent

  • Conductor


Trove-api 服务对外提供创建和管理实例等 Restful API 接口,支持 Json 和 Xml 格式。Trove-api 将复杂的异步任务交给 trove-taskmanager 来处理,对于简单任务,Trove-api 也可以直接与 Trove-guestagent 通信。


Trove-taskmanager 服务主要是做一些重的任务,比如创建实例,管理实例的生命周期,对数据库实例执行一些操作等


Trove-guestagent 服务运行在每一个客户实例中,监听消息队列的消息,负责管理数据库和对数据库执行相应操作,


Trove-conductor 运行在主机上,接收从客户实例发送来的消息。

Trove 相关概念

Instance:数据库实例,一个包含数据库程序的 Openstack 虚机


Replica instance:数据库副本实例,创建时需要指定从属于哪个主实例


Datastore/Dastastore version:用来表示和存储数据库的类型、版本、对应虚拟机镜像等信息。当用户创建一个数据库实例时需要指定 Datastore 和版本

Trove 在奇云中的实践

系统架构


奇云基于原生 Mitaka 版的 Trove,结合自身需要,做了很多改造,增加了自动备份服务 Trove-backup,存活监控服务 Trove-monitor, 优化了主从切换,实例扩容,参数配置等操作,在这里不进行一一详述。下面主要讲述奇云在创建主从模式的数据库实例,例如 RDS/Redis,做了哪些操作。

创建主从模式的实例

奇云 Trove 支持一个 API 创建请求创建出主从两个实例,两个实例分属于两个物理集群(master/slave),之后再关联好主从关系,这样主从实例就可以正常使用了。实例虚机内包含两块网卡,管理网卡可与管理网络通信,而与用户数据网络隔离,并且用户数据网络增加一个服务 IP(VIP),便于主从切换的实现。下图所示是奇云 Trove 在创建 RDS 实例的过程,该网络交互过程是在虚机分配的管理网卡上。


主从切换

用户通过 VIP 来访问数据库实例,当主节点宕机或不可用时,管理员可以进行主从切换,切换节点角色,把 VIP 切换到从节点上,保证服务的可用性。



本文转载自公众号 360 云计算(ID:hulktalk)。


原文链接:


https://mp.weixin.qq.com/s/oloafWaDFTJRIG9IHxcN3A


2019-11-14 18:481403

评论

发布
暂无评论
发现更多内容

数据闭环构建技巧:确保模型稳定性与数据质量

测吧(北京)科技有限公司

测试

从历史视角看人工智能:专家系统、机器学习与深度学习

测吧(北京)科技有限公司

测试

数据闭环的建立:确保模型发展的可持续性

测吧(北京)科技有限公司

测试

item_get-根据ID取商品详情(shopee.item_get):提高跨境电商交易效率的关键

技术冰糖葫芦

API 文档

白话大模型① :AI分析能做什么?在实际落地中会碰到什么问题?

星环科技

AI PPT软件有哪些?这5款堪称神器,职场白领必备!

彭宏豪95

职场 PPT 在线白板 办公软件 AIGC

软件测试学习笔记丨docker 搭建常用服务器与平台命令

测试人

Docker 软件测试 自动化测试 测试开发

TikTok直播:是否需要专线,以及加速的方法有哪些?

Ogcloud

海外直播专线 Tik Tok直播 Tik Tok直播网络 直播加速 海外直播

Spark技巧大揭秘:构建分布式造数工具加速工作效率

测吧(北京)科技有限公司

测试

智达方通总经理蔡志宏先生受邀参与哈工大京津冀校友发展研讨会,共话科技创新与发展新篇章

智达方通

智达方通 企业绩效管理 预算管理 哈工大 校友会

Pygame:实现Python游戏开发的跨平台梦想

技术冰糖葫芦

API 文档

关于 yarn 的中央仓库 registry.yarnpkg.com

伤感汤姆布利柏

如何选择合适的数据提升模型性能

测吧(北京)科技有限公司

测试

白话大模型③ | 我们为何需要机器学习运营平台?

星环科技

坐标 DISTRIBUTECH,TDengine 发力海外电力行业

TDengine

tdengine 时序数据库

新一代湖仓集存储,多模型统一架构,高效挖掘数据价值

星环科技

TikTok直播专线,全程稳定的专属网络

Ogcloud

Tik Tok直播 Tik Tok直播网络 Tik Tok 海外直播 直播专线

Apache Calcite 一条 SQL 的查询计划生成之旅【上】

LakeShen

开源 sql 优化器 apache 社区 Apche Calcite

自学习的现实应用:构建智能系统的新思路

测吧(北京)科技有限公司

测试

关于Python中math 和 decimal 模块的解析与实践

不在线第一只蜗牛

Python 开发语言 模块开发

深入理解训练集、验证集和测试集在模型训练中的作用

测吧(北京)科技有限公司

测试

Spark在分布式造数工具中的应用探索

测吧(北京)科技有限公司

测试

基于图数据库构建知识图谱平台应用实践

星环科技

白话大模型② | 如何提升AI分析的准确性?

星环科技

精细管理,智慧决策:商品企划系统如何提升鞋服品牌运营效率?

第七在线

自学习概念探析:构建稳定模型的核心思想

测吧(北京)科技有限公司

测试

AIGC下一步:如何用AI再度重构或优化媒体处理?

阿里云CloudImagine

云计算 视频云 AIGC

低代码与国产化部署:软件开发的未来趋势与应用实践

不在线第一只蜗牛

低代码 软件咖啡 国产化部署

Openstack Trove在奇云上的实践_文化 & 方法_方慧琳_InfoQ精选文章