讀古今文學網 > OpenStack系統架構設計實戰 > 10.3 Trove主要功能和API接口 >

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對外提供的功能。