API服务器的主要作用是向用户提供RESTful API。Ceilometer的K版本所支持的API如表5-5所示,API版本号是V2。
表5-5 Ceilometer V2-API说明
其中,集合运算的相关统计值除了一般的最大值、最小值、平均值、累加总和、总数之外,如果用户采用MongoDB/MySQL/PostgreSQL作为后台数据库,还支持求标准方差和求基数两个操作。
API服务器最外层采用PasteDeploy库来载入Ceilometer中的WSGI中间件。Ceilometer API目前默认使用的中间件只有一个Keystonemiddleware,主要用来和Keystone进行通信,用来对用户进行身份验证。
Ceilometer的WSGI应用采用了基于Pecan的框架来构造RESTful API的实现,Pecan是Python的一个轻量级Web框架的实现,此应用的具体实现代码可以参见ceilometer/api/controllers/v2.py文件。