community.general.apache2_mod_proxy 模块 – 设置和/或获取 Apache httpd 2.4 mod_proxy 负载均衡池的成员属性
注意
此模块是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.general
。
要在 playbook 中使用它,请指定:community.general.apache2_mod_proxy
。
概要
使用 HTTP POST 和 GET 请求设置和/或获取 Apache httpd 2.4 mod_proxy 负载均衡池的成员属性。必须启用并可以访问 httpd mod_proxy balancer-member 状态页面,因为此模块依赖于解析此页面。此模块支持 ansible check_mode,并需要 BeautifulSoup python 模块。
参数
参数 |
注释 |
---|---|
访问负载均衡池状态页面所需的负载均衡池 URL 后缀(例如 balancer_vhost[:port]/balancer_url_suffix)。 默认值: |
|
Apache httpd 2.4 mod_proxy 负载均衡池的 (ipv4|ipv6|fqdn):port。 |
|
要获取或设置属性的负载均衡成员的 (ipv4|ipv6|fqdn)。端口号会自动检测,此处无需指定。如果未定义,apache2_mod_proxy 模块将返回一个包含所有当前负载均衡池成员属性的字典列表。 |
|
成员主机所需的状态。(absent|disabled),drained,hot_standby,ignore_errors 可以通过逗号分隔同时调用(例如 state=drained,ignore_errors)。 可接受的状态值:["present", "absent", "enabled", "disabled", "drained", "hot_standby", "ignore_errors"] |
|
使用 https 访问负载均衡管理页面。 选项
|
|
验证 ssl/tls 证书。 选项
|
属性
属性 |
支持 |
描述 |
---|---|---|
支持:完全支持 |
可以在 |
|
支持:不支持 |
在差异模式下,将返回有关已更改内容(或可能需要在 |
示例
- name: Get all current balancer pool members attributes
community.general.apache2_mod_proxy:
balancer_vhost: 10.0.0.2
- name: Get a specific member attributes
community.general.apache2_mod_proxy:
balancer_vhost: myws.mydomain.org
balancer_suffix: /lb/
member_host: node1.myws.mydomain.org
# Enable all balancer pool members:
- name: Get attributes
community.general.apache2_mod_proxy:
balancer_vhost: '{{ myloadbalancer_host }}'
register: result
- name: Enable all balancer pool members
community.general.apache2_mod_proxy:
balancer_vhost: '{{ myloadbalancer_host }}'
member_host: '{{ item.host }}'
state: present
with_items: '{{ result.members }}'
# Gracefully disable a member from a loadbalancer node:
- name: Step 1
community.general.apache2_mod_proxy:
balancer_vhost: '{{ vhost_host }}'
member_host: '{{ member.host }}'
state: drained
delegate_to: myloadbalancernode
- name: Step 2
ansible.builtin.wait_for:
host: '{{ member.host }}'
port: '{{ member.port }}'
state: drained
delegate_to: myloadbalancernode
- name: Step 3
community.general.apache2_mod_proxy:
balancer_vhost: '{{ vhost_host }}'
member_host: '{{ member.host }}'
state: absent
delegate_to: myloadbalancernode
返回值
常见的返回值已在 此处 记录,以下是此模块特有的字段
键 |
描述 |
---|---|
当使用 member_host 参数调用 apache2_mod_proxy 模块时返回的特定负载均衡成员信息字典。 返回:成功 示例: |
|
成员(如上定义)字典列表,当 apache2_mod_proxy 在没有 member_host 和 state 参数的情况下调用时返回。 返回:成功 示例: |