Ceilometer - Install the API behind mod_wsgi

python wsgi介绍

wsgi is Web Server Gateway Interface。它既不是框架也不是模块,仅仅只是一个规范协议,定义了一套接口来实现服务器端与应用端通信的规范。

应用端的规范和服务器端的规范,可以看这里介绍:http://www.cnblogs.com/babykick/archive/2012/01/20/2327928.html

总结如下:

wsgi:定义服务器端与python app之间的接口规范的一个协议

wsgi app:遵循wsgi规范的python app

mod_wsgi:apache的一个模块,加载它,就可以在apache server上运行wsgi协议

mod_wsgi工作模式介绍,这篇博客写得不错 http://www.cnblogs.com/yuxc/p/3555005.html

具体配置

[[email protected] ~]# service openstack-ceilometer-api stop   # ceilometer api服务由apache接管
[[email protected] ~]# chkconfig openstack-ceilometer-api off # 保证httpd开机自启动即可
[[email protected] ~]# mkdir -p /var/www/ceilometer  # 创建一个目录放置ceilometer api的wsgi脚本
[[email protected] ~]# cp /usr/lib/python2.6/site-packages/ceilometer/api/app.wsgi /var/www/ceilometer/
[[email protected] ~]# cd /etc/httpd/conf.d/  # 切换到apache的conf.d目录下
[[email protected] conf.d]# vim openstack-ceilometer.conf    # 创建api的虚拟主机配置文件
Listen controller1:8777     # 监听在controller1的8777端口
<VirtualHost *:8777>    
WSGIDaemonProcess ceilometer-api user=ceilometer group=ceilometer processes=2 threads=10   
WSGIScriptAlias / /var/www/ceilometer/app.wsgi    # 具体的wsgi程序路径    
SetEnv APACHE_RUN_USER ceilometer                 # 存在的用户即可    
SetEnv APACHE_RUN_GROUP ceilometer    
WSGIProcessGroup ceilometer-api    
ErrorLog /var/log/httpd/ceilometer_error.log    
LogLevel warn    CustomLog /var/log/httpd/ceilometer_access.log combined
</VirtualHost>
[[email protected] ~]# vim /etc/ceilometer/ceilometer.conf   # 编辑ceilometer.conf配置文件,修改如下内容
[DEFAULT]
#根据官方文档解释,ceilometer使用pecan框架,pecan框架的DebugMiddleware不支持多进程,在多进程的情况下没有办法设置debug模式
debug=False  # 注意要关闭debug模式
[api]pecan_debug=False  # 为了支持多进程,关闭DebugMiddleware
[[email protected] ~]# service httpd restart  # 重启httpd服务生效


参考链接

http://docs.openstack.org/developer/ceilometer/install/mod_wsgi.html

时间: 2024-12-18 15:49:19

Ceilometer - Install the API behind mod_wsgi的相关文章

OpenStack监控测量服务Ceilometer安装及 API说明

1.Ceilometer是做什么的 Ceilometer是OpenStack中的一个子项目,它像一个漏斗一样,能把OpenStack内部发生 的几乎所有的事件都收集起来,然后为计费和监控以及其它服务提供数据支撑.Ceilometer的核心架构图 2.OpenStack监控测量服务Ceilometer安装 2.1 到github下载最新的ceilometer代码 2.2安装mongodb, 由于ceilometer采用mongodb作为默认数据持久化数据库,所以需要先安装mongodb apt-g

Ceilometer RESTful框架

ceilometer-api使用pecan和flask来构建restful api,这里简单介绍一下pecan和flask的使用. ceilomter-api服务启动流程 /usr/bin/ceilometer-api ... from ceilometer.cli import api if __name__ == "__main__": sys.exit(api())... /usr/lib/python2.6/site-packages/ceilometer/cli.py ...

探索 OpenStack 之(16):计量模块 Ceilometer

0. 背景 0.1 为什么要有 Ceilometer? 通常云,特别是公有云在计费方面有三个层次: 计量 (Metering): 收集资源的使用数据,其数据信息主要包括:使用对象(what), 使用者(who), 使用时间(when)和 用量(how much). 计费 (Rating):将资源使用数据按照商务规则转化为可计费项目并计算费用 结算 (Billing):收钱开票 Ceilometer 的目标是 计量 Metering 方面,为上层的计费.结算或者监控应用提供统一的资源使用数据收集功

Ubuntu安装Apache + mod_wsgi + Trac + Python 2.7

概述 Trac是自带wiki的轻量级软件项目管理系统,遵循BSD开源协议的开源软件.项目主页是https://trac.edgewall.org, 源代码在Github上有镜像git://github.com/edgewall/trac.git Trac可以运行独立服务器,使用下面一行命令即可运行服务器.如果只有一个Trac实例,这种方式完全可以满足需求. tracd path/to/trac --port=8080 Trac也可以使用Apache来运行,通过加载mod_wsgi模块来实现运行P

linux+django+apache+mod_wsgi+eclipse+python2.7 环境的搭建

首先,说明下环境: linux:fedora14: IDE:eclipse: python:python2.7 python框架:django web服务器:apache web服务器的python模块:mod_wsgi 写在前面: 之前用的windows下面的xampp,写的php后台,现在想转向linux下面的python,跟以前一样,选择apache和eclipse作为自己的开发工具. eclipse的python配置, 参见之前的博客:http://blog.csdn.net/zy416

ubuntu 编译安装 mod_wsgi

在编译过程中遇到一些问题,记录下来方便别人使用. step1: 下载.windows下面会有编译好的包,Ubuntu没有需要自己编译. 地址: https://github.com/GrahamDumpleton/mod_wsgistep2: 解压然后进入里面 执行 sudo ./configure 这个提示line 2765: apxs: command not found 原因是apache里面没有安装对应的模块. 然后执行 sudo apt-get install apache2-dev

Ubuntu+Django+mod_wsgi+Apache配置过程

Ubuntu15.10 Apache2.4( sudo apt-get install apache2 ) Python3.4( sudo apt-get install apache2 ),  [系统还有个自带的Python2.7] Django1.9.5( pip3.4 install django ) mod_wsgi4.5.2(编译安装) Django项目目录:/var/www/DjangoProject已经建好了mysite工程, python3.4 manage.py runserv

云计算之openstack基础服务之一keystone服务最佳实践

1.openstack简介 Openstack是一个项目,该项目支持所有类型的云环境的一个开源云计算平台,该项目的目的是为了实现简单,大规模可扩展性,以及丰富功能集,来自世界各地的云计算专家项目作出贡献.Openstack提供了一个基础架构即服务(Iaas)并通过各种配套服务的解决方案,每个服务提供一个应用编程接口来完成整个openstack的结合. 架构图如下: 相关服务介绍: 服务名称 项目名称 描述 Dashboard Horizon 基于openstackAPI接口使用Django开发的

OpenStack 搭建(一)

OpenStack介绍 openstack是一个云平台管理项目,我们可以使用openstack来管理我们的资源池,在这个资源池中包含了很多的子项目.openstack是有多个不同的模块组成,不同的功能有相对应得不同模块负责.openstack三大核心分别是 计算.网络.存储.通过调用不同模块的API来对外提供交互. openstack 的版本发布很快,从最初的A版到现在的N版,官方一般会每隔六个月发布一个新的版本. openstack每个服务都有对应的项目名称,不同的项目就相当于一个提供单独服务