首页 » OpenStack系统架构设计实战 » OpenStack系统架构设计实战全文在线阅读

《OpenStack系统架构设计实战》10.3 Trove主要功能和API接口

关灯直达底部

Trove通过API服务器对外提供的API接口接收外部的数据库访问和管理指令,从而实现数据库的创建、管理和操作等。现在版本中Trove对外提供的接口如下:

·db_instance

·db_instance_action

·database

·user

·flavor

·security_group

·Backup

·Datastore

·datastore_version

·Configuration

·configuration_parameter

·db_instance_log(规划中)

1.db_instance接口

db_instance接口主要实现数据库实例的管理,主要包括:

·罗列数据库中所有的数据库实例。

·创建一个新数据库实例。

·获取一个数据库实例的相关信息。

·删除一个特定的数据库实例。

2.db_instance_action接口

db_instance_action接口主要完成数据库实例的操作功能,主要包括:

·重启数据库实例。

·修改数据库实例大小。

·修改数据库实例卷大小。

3.Database接口

Database接口提供了数据库相关的功能,主要包括:

·创建一个新数据库。

·列举数据库信息。

·删除一个特定的数据库。

4.User接口

User接口主要实现用户的管理功能和信息查看功能,主要包括:

·创建一个新用户。

·展示用户列表。

·改变用户密码。

·获取用户详细信息。

·列举用户的数据库信息。

·为用户增加或删除数据库权限。

·删除用户。

5.Flavor接口

Flavor接口从Nova中获取预先设定好的虚拟机配置,并提供查询功能,可供用户选择虚拟机类型。主要功能包括:

·列举所有支持的虚拟机配置。

·获取一类虚拟机的详细信息。

6.Security_group接口

Security_group接口中没有创建操作,目前Trove对于安全组的设计是:每个数据库实例对应一个安全组,用户不能直接操作安全组,只能添加或删除安全组的规则。未来这个设计可能改变。安全组中的规则权限如:端口、IP访问权限等。安全组接口主要包括:

·列举所有的安全组列表。

·获取一个安全组的详细信息。

·为一个安全组创建新的规则。

·删除一个安全组的已有规则。

7.Backup接口

Trove目前支持多种备份方式:MySQLdump、XtraBackup、Openstack’s volume snapshot,使用相应的备份方式,在做系统映像的时候要包含相关的备份工具。Trove现阶段支持手工备份,暂不支持系统的自动备份和实时备份。备份接口主要包括:

·列举当前所有的备份数据。

·获取一个备份数据的详细信息。

·创建一个实例的备份。

·恢复备份。

·删除一个备份数据。

8.Datastore接口

Datastore是指存储数据的数据库管理程序。Trove现在支持的数据库管理程序有MySQL、cassandra、mongodb等。Datastore接口包括:

·列举当前支持的所有Datastore。

·获取一个Datastore的详细信息。

9.Datastore_version接口

Datastore_version是指存储数据的数据库管理程序的版本。Trove现在支持的数据库管理程序有MySQL、Cassandra、Mongodb等,Datastore_version是指这些数据库管理程序的版本,例如是5.1还是5.5。Datastore和Datastore_version用来在create db instance的时候供用户选择。Datastore_version接口包括:

·列举一个数据库支持的所有版本信息。

·获取一个数据库版本的详细信息。

10.Configuration接口

Trove中的Configuration是指数据库程序配置文件中的配置项,这些配置项由key-value的形式组成。Configuration的接口包括:

·获取租户已定义的配置组列表。

·获取特定的配置组。

·获取和某配置相关的实例列表。

·创建一个新的配置组。

·更新配置条例。

·替换所有的配置条例。

·删除一个配置组。

11.Configuration_parameter接口

Configuration_parameter接口是对配置项key的详细信息的记录,它包括配置参数的默认值、是否需要配置、是否可以动态生效,以及数据类型是什么。Configuration_parameter接口包括:

·获取配置参数列表。

·获取一个配置参数的详细信息。

以上主要介绍了Trove目前版本提供的对外API服务接口。通过这些接口,我们可以进一步了解Trove对外提供的功能。