fortinet.fortimanager.fmgr_firewall_accessproxy_apigateway_realservers 模块 – 选择此访问代理将流量分配到的真实服务器。

注意

此模块是 fortinet.fortimanager 集合(版本 2.8.2)的一部分。

如果您正在使用 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install fortinet.fortimanager

要在 playbook 中使用它,请指定:fortinet.fortimanager.fmgr_firewall_accessproxy_apigateway_realservers

fortinet.fortimanager 2.1.0 中的新功能

概要

  • 此模块能够配置 FortiManager 设备。

  • 示例包括所有参数和值,这些参数和值需要在使用前调整为数据源。

参数

参数

注释

access-proxy

字符串

已弃用,请使用“access_proxy”

access_proxy

字符串

请求 URL 中的参数 (access-proxy)。

access_token

字符串

无需使用用户名和密码即可访问 FortiManager 的令牌。

adom

字符串 / 必需

请求 URL 中的参数 (adom)。

api-gateway

字符串

已弃用,请使用“api_gateway”

api_gateway

字符串

请求 URL 中的参数 (api-gateway)。

bypass_validation

布尔值

仅当模块架构与 FortiManager API 结构不同时才设置为 True,模块将继续执行而不验证参数。

选择

  • false ←(默认)

  • true

enable_log

布尔值

启用/禁用任务日志记录。

选择

  • false ←(默认)

  • true

firewall_accessproxy_apigateway_realservers

字典

设置的顶级参数。

addr_type

别名: addr-type

字符串

地址类型。

选择

  • "fqdn"

  • "ip"

address

字符串

真实服务器的地址或地址组。

domain

字符串

真实服务器的通配符域名。

external_auth

别名: external-auth

字符串

启用/禁用将外部浏览器用作 SAML 用户身份验证的用户代理。

选择

  • "disable"

  • "enable"

health_check

别名: health-check

字符串

启用以检查真实服务器的响应能力,然后再转发流量。

选择

  • "disable"

  • "enable"

health_check_proto

别名: health-check-proto

字符串

轮询以确定服务器连接状态时要使用的运行状况检查监视器的协议。

选择

  • "ping"

  • "http"

  • "tcp-connect"

holddown_interval

别名: holddown-interval

字符串

启用/禁用保持时间计时器。

选择

  • "disable"

  • "enable"

http_host

别名: http-host

字符串

HTTP 标头中的 HTTP 服务器域名。

id

整数 / 必需

真实服务器 ID。

ip

字符串

真实服务器的 IP 地址。

mappedport

任何

(列表或字符串)用于与真实服务器通信的端口。

port

整数

用于与真实服务器通信的端口。

ssh_client_cert

别名: ssh-client-cert

字符串

设置访问代理 SSH 客户端证书配置文件。

ssh_host_key

别名: ssh-host-key

任何

(列表或字符串)一个或多个服务器主机密钥。

ssh_host_key_validation

别名: ssh-host-key-validation

字符串

启用/禁用 SSH 真实服务器主机密钥验证。

选择

  • "disable"

  • "enable"

status

字符串

将真实服务器的状态设置为活动,以便它可以接受流量;或者设置为待机或禁用,以便不发送流量。

选择

  • "active"

  • "standby"

  • "disable"

translate_host

别名: translate-host

字符串

启用/禁用将主机名/IP 从虚拟服务器转换为真实服务器。

选择

  • "disable"

  • "enable"

tunnel_encryption

别名: tunnel-encryption

字符串

隧道加密。

选择

  • "disable"

  • "enable"

type

字符串

TCP 转发服务器类型。

选择

  • "tcp-forwarding"

  • "ssh"

weight

整数

真实服务器的权重。

forticloud_access_token

字符串

使用 forticloud API 访问令牌对 Ansible 客户端进行身份验证。

proposed_method

字符串

覆盖底层 Json RPC 请求的方法。

选择

  • "update"

  • "set"

  • "add"

rc_failed

列表 / 元素=整数

将覆盖失败条件的 rc 代码列表。

rc_succeeded

列表 / 元素=整数

将覆盖成功条件的 rc 代码列表。

state

字符串 / 必需

创建、更新或删除对象的指令。

选择

  • "present"

  • "absent"

workspace_locking_adom

字符串

在工作区模式下运行的 FortiManager 要锁定的 adom,该值可以是全局的,也可以是包括根目录的其他值。

workspace_locking_timeout

整数

等待其他用户释放工作区锁定的最长时间(秒)。

默认值: 300

注释

注意

  • 从 2.4.0 版本开始,所有输入参数都使用下划线命名约定 (snake_case) 命名。 请将诸如“var-name”之类的参数更改为“var_name”。 旧的参数名称仍然可用,但您会收到弃用警告。 您可以通过在 ansible.cfg 中设置 deprecation_warnings=False 来忽略此警告。

  • 此 FortiManager 模块支持在工作区锁定模式下运行,顶层参数 workspace_locking_adom 和 workspace_locking_timeout 有助于完成工作。

  • 要创建或更新对象,请使用 state present 指令。

  • 要删除对象,请使用 state absent 指令。

  • 通常,当返回非零 rc 时,运行一个模块可能会失败。 您还可以使用参数 rc_failed 和 rc_succeeded 覆盖失败或成功的条件

示例

- name: Example playbook (generated based on argument schema)
  hosts: fortimanagers
  connection: httpapi
  vars:
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_httpapi_port: 443
  tasks:
    - name: Select the real servers that this Access Proxy will distribute traffic to.
      fortinet.fortimanager.fmgr_firewall_accessproxy_apigateway_realservers:
        # bypass_validation: false
        workspace_locking_adom: <value in [global, custom adom including root]>
        workspace_locking_timeout: 300
        # rc_succeeded: [0, -2, -3, ...]
        # rc_failed: [-2, -3, ...]
        adom: <your own value>
        access_proxy: <your own value>
        api_gateway: <your own value>
        state: present # <value in [present, absent]>
        firewall_accessproxy_apigateway_realservers:
          address: <string>
          health_check: <value in [disable, enable]>
          health_check_proto: <value in [ping, http, tcp-connect]>
          http_host: <string>
          id: <integer>
          ip: <string>
          mappedport: <list or string>
          port: <integer>
          status: <value in [active, standby, disable]>
          weight: <integer>
          addr_type: <value in [fqdn, ip]>
          domain: <string>
          holddown_interval: <value in [disable, enable]>
          ssh_client_cert: <string>
          ssh_host_key: <list or string>
          ssh_host_key_validation: <value in [disable, enable]>
          type: <value in [tcp-forwarding, ssh]>
          translate_host: <value in [disable, enable]>
          external_auth: <value in [disable, enable]>
          tunnel_encryption: <value in [disable, enable]>

返回值

常见的返回值记录在这里,以下是此模块特有的字段

描述

meta

字典

请求的结果。

返回: 总是

request_url

字符串

请求的完整URL。

返回: 总是

示例: "/sys/login/user"

response_code

整数

API请求的状态。

返回: 总是

示例: 0

response_data

列表 / 元素=字符串

API响应。

返回: 总是

response_message

字符串

API响应的描述性消息。

返回: 总是

示例: "OK."

system_information

字典

目标系统的信息。

返回: 总是

rc

整数

请求的状态。

返回: 总是

示例: 0

version_check_warning

列表 / 元素=字符串

如果playbook中使用的参数不受当前FortiManager版本支持的警告。

返回: 复杂

作者

  • Xinwei Du (@dux-fortinet)

  • Xing Li (@lix-fortinet)

  • Jie Xue (@JieX19)

  • Link Zheng (@chillancezen)

  • Frank Shen (@fshen01)

  • Hongbin Lu (@fgtdev-hblu)