跳转到主要内容

构建计划以配置pound负载均衡器

项目描述

Pound构建计划

本软件包提供了用于配置pound的buildout_recipes。这是我们发现的PyPI上的功能更全面的配方之一,支持诸如500错误页面、紧急服务器和可配置亲和力等功能。

我们使用系统pound,因此此配方不会为您安装pound。如果您想安装pound,或许可以使用zc.recipe.cmmi

标准设置的示例

[pound]
recipe = isotoma.recipe.pound
address = 127.0.0.1
port = 8080
session = COOKIE:_ZopeID:3600
err500 = /var/www/emergency/index.html
emergency = 127.0.0.1:8090
backends =
    127.0.0.1:8081
    127.0.0.1:8082
    127.0.0.1:8083

如果您使用pound或其他负载均衡器,您可能会发现isotoma.recipe.portmap也很有用。

必填参数

address

监听连接的地址

port

监听连接的端口号

backends

后端列表,以空格分隔,格式为 地址:端口

可选参数

可执行文件

磅(pound)二进制文件的路径。默认为 /usr/sbin/pound

poundctl

poundctl 二进制文件的路径。默认为 /usr/sbin/poundctl

用户

以哪个用户运行磅(pound)。默认为 www-data

以哪个组运行磅(pound)。默认为 www-data

日志设施

将日志输出发送到哪个 syslog 设施。默认为 local0

日志级别

日志级别。默认为 ‘2’。

存活

检查先前已死亡的背端存活的秒数。默认为 ‘30’。

超时

到背端的 HTTP 请求的超时时间。默认为 ‘60’。

xHTTP

接受哪些动词。请参阅磅(pound)手册以获取更多详细信息。默认为 ‘0’(仅接受标准动词)。

模板

配置文件模板的完整路径,如果您想进一步自定义。默认为此软件包中的 pound.cfg 模板。

会话

如果您希望有会话亲和性,请在此提供配置,格式为 类型:id:TTL

紧急

如果您使用紧急服务器,请在此提供配置,格式为 地址:端口

err500

如果您想提供错误 500 页面,请在此提供完整路径。

err503

如果您想提供错误 503 页面,请在此提供完整路径。

紧急服务器

还包括一些食谱来帮助构建紧急页面。磅(pound)对紧急服务的支持相当基础,因此需要一些帮助来提供良好的服务。紧急食谱

  • 提供适合此情况的 Apache 配置

  • 通过简单的字符串替换处理紧急内容的索引页面,以便可以定位图像和 CSS 资源

紧急服务器的索引页面也适合在 err500 指令中使用。

要使用此功能,您首先应创建一个包含索引.html 页面的目录,以及从 Apache 服务器提供此页面的所有所需资源。在模板中,使用 $baseurl 引用所有资源。例如,如果我们有

htdocs/index.html
htdocs/images/logo.png

那么在 index.html 中放置

<html>
    <body>
        <img src="$baseurl/images/logo.png" />
    </body>
</html>

然后提供如下食谱

[emergency]
recipe = isotoma.recipe.pound:emergency
path = /path/to/htdocs
interfaces =
    127.0.0.1:8090
    32.32.32.32:emerg.example.com:80
listen = yes
public = http://www.emerg.example.com
access_log = /var/log/apache2/help.help.access.log
error_log = /var/log/apache2/help.help.error.log
substitute = index.html

$baseurl 将替换为 public 的值。

这看起来可能是一种过于复杂的设置相对简单事情的方法,但如果您想在持续集成、预发布和产品环境中获得有效且可测试的配置,这值得一试。

变更日志

0.1.13 (2013-01-28)

  • 尚未有任何更改。

0.1.12 (2013-01-21)

  • 确保周期脚本以运行状态运行,并且只有在存在磅(pound)套接字时才运行。

0.1.11 (2012-10-25)

  • 在确定要使用的背端时不要调用 poundctl。这避免了 python2.4 无法解析的糟糕的磅(pound)XML 整个问题。

0.1.10 (2012-10-14)

  • 将可重用的周期逻辑重构到 Backend 类中。

  • 在移动到下一个背端之前,确保监听地址处于正确状态。

  • 您可以选择在背端上戳 URL,以确保它已启动。

0.1.9 (2012-10-01)

  • 添加默认紧急页面。

0.1.8 (2012-07-03)

  • 没有变化 - 发布以修复版本同步奇怪的问题?

0.1.7 (2012-07-03)

  • 恢复 python2.4 兼容性

0.1.6 (2012-02-03)

  • 更好地处理迁移到 ${buildout:run-directory}

0.1.5 (2011-08-26)

  • 如果存在 ${buildout:run-directory},则将 pid 文件放在那里

项目详细信息


下载文件

下载适合您平台的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。

源代码分发

isotoma.recipe.pound-0.1.13.zip (21.0 kB 查看哈希值)

上传时间 源代码

由以下组织支持