community.network.netscaler_cs_vserver 模块 – 管理内容切换虚拟服务器

注意

此模块是 community.network 集合 (版本 5.1.0) 的一部分。

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

要安装它,请使用:ansible-galaxy collection install community.network。您需要其他要求才能使用此模块,有关详细信息,请参见 要求

要在 playbook 中使用它,请指定:community.network.netscaler_cs_vserver

注意

community.network 集合已被弃用,并将从 Ansible 12 中移除。有关更多信息,请参见 讨论主题

已弃用

在以下版本中移除:

6.0.0 版本

原因:

此集合及其中的所有内容均未维护且已弃用。

替代方案:

未知。

概要

  • 管理内容切换虚拟服务器

  • 此模块旨在在 Ansible 控制节点或具有对实际 NetScaler 实例访问权限的堡垒机(跳板服务器)上运行

别名:network.netscaler.netscaler_cs_vserver

要求

执行此模块的主机需要以下要求。

  • nitro python sdk

参数

参数

注释

appflowlog

字符串

启用日志记录 appflow 流信息。

选项

  • "enabled"

  • "disabled"

authentication

布尔值

验证请求连接到内容切换虚拟服务器的用户。

选项

  • false

  • true

authenticationhost

字符串

身份验证虚拟服务器的 FQDN。虚拟服务器的服务类型应为 HTTPSSL

最小长度 = 3

最大长度 = 252

authn401

布尔值

启用基于 HTTP 401 响应的身份验证。

选项

  • false

  • true

authnprofile

字符串

启用身份验证时要使用的身份验证配置文件的名称。

authnvsname

字符串

验证传入用户请求到此内容切换虚拟服务器的身份验证虚拟服务器的名称。

最小长度 = 1

最大长度 = 252

backupip

字符串

.

最小长度 = 1

backupvserver

字符串

您正在配置的备份虚拟服务器的名称。必须以 ASCII 字母数字或下划线 _ 字符开头,并且只能包含 ASCII 字母数字、下划线 _、井号 #、句点 .、空格 、冒号 :、at 符号 @、等号 = 和连字符 - 字符。创建备份虚拟服务器后可以更改。您可以分配不同的备份虚拟服务器或重命名现有虚拟服务器。

最小长度 = 1

cacheable

布尔值

使用此选项指定用于负载平衡或内容切换的虚拟服务器是否在将请求发送到已配置的服务器之前将其路由到缓存重定向虚拟服务器。

选项

  • false

  • true

casesensitive

布尔值

在 URL 中考虑大小写(对于使用 URL 而不是规则的策略)。例如,使用 on 设置,URL /a/1.html 和 /A/1.HTML 被视为不同,并且可以具有不同的目标(由内容切换策略设置)。使用 off 设置,/a/1.html 和 /A/1.HTML 切换到相同的目标。

选项

  • false

  • true

clttimeout

字符串

空闲时间(以秒为单位),在此时间后客户端连接将终止。默认值为

最小值 = 0

最大值 = 31536000

comment

字符串

有关此虚拟服务器的信息。

cookiedomain

字符串

.

最小长度 = 1

cookietimeout

字符串

.

最小值 = 0

最大值 = 1440

dbprofilename

字符串

数据库配置文件的名称。

最小长度 = 1

最大长度 = 127

disabled

布尔值

设置为 yes 时,cs 虚拟服务器将被禁用。

设置为 no 时,cs 虚拟服务器将被启用。

请注意,由于底层 NITRO API 的限制,仅 disabled 状态更改不会导致模块结果报告已更改状态。

选项

  • false ← (默认)

  • true

disableprimaryondown

字符串

即使主服务器从 DOWN 状态恢复到 UP 状态,也要继续将流量转发到备份虚拟服务器。

选项

  • "enabled"

  • "disabled"

dnsprofilename

字符串

要与 VServer 关联的 DNS 配置文件的名称。DNS 配置文件属性将应用于 VServer 处理的事务。此参数仅对 DNS 和 DNS-TCP VServer 有效。

最小长度 = 1

最大长度 = 127

domainname

字符串

要更改生存时间 (TTL) 和/或备份服务 IP 地址的域名。

最小长度 = 1

downstateflush

字符串

刷新与状态从 UP 转换为 DOWN 的虚拟服务器关联的所有活动事务。请勿为必须完成其事务的应用程序启用此选项。

选项

  • "enabled"

  • "disabled"

httpprofilename

字符串

包含虚拟服务器HTTP配置设置的HTTP配置文件名称。虚拟服务器的服务类型应为HTTPSSL

最小长度 = 1

最大长度 = 127

icmpvsrresponse

字符串

可以是主动或被动。

选项

  • “PASSIVE”

  • “ACTIVE”

insertvserveripport

字符串

在请求头中插入虚拟服务器的VIP地址和端口号。可用值的功能如下:

VIPADDR - 头部包含虚拟服务器的IP地址和端口号,无需任何转换。

OFF - 虚拟IP和端口头插入选项被禁用。

V6TOV4MAPPING - 头部包含与虚拟服务器的IPv6地址对应的映射IPv4地址和端口号。可以使用set ns ip6命令将IPv6地址映射到用户指定的IPv4地址。

选项

  • “OFF”

  • “VIPADDR”

  • “V6TOV4MAPPING”

ipmask

字符串

IP掩码,采用点分十进制表示法,用于IP模式参数。可以有前导或尾随非零八位字节(例如,255.255.240.00.0.255.255)。相应地,掩码指定客户端请求中目标IP地址的前n位或后n位是否要与IP模式中的相应位匹配。前者称为前向掩码,后者称为反向掩码。

ippattern

字符串

IP地址模式,采用点分十进制表示法,用于识别虚拟服务器要接受的数据包。IP掩码参数指定目标IP地址的哪一部分与模式匹配。与IP地址参数互斥。

例如,如果分配给虚拟服务器的IP模式为198.51.100.0,IP掩码为255.255.240.0(前向掩码),则目标IP地址中的前20位将与模式中的前20位匹配。虚拟服务器接受IP地址范围从198.51.96.1到198.51.111.254的请求。您也可以使用0.0.2.2这样的模式和0.0.255.255这样的掩码(反向掩码)。

如果目标IP地址与多个IP模式匹配,则选择匹配最长的模式,并由关联的虚拟服务器处理请求。例如,如果虚拟服务器vs1vs2具有相同的IP模式0.0.100.128,但IP掩码分别为0.0.255.2550.0.224.255,则目标IP地址198.51.100.128与vs1的IP模式匹配最长。如果目标IP地址与两个或多个虚拟服务器的匹配程度相同,则由端口号与请求中的端口号匹配的虚拟服务器处理请求。

ipv46

字符串

内容切换虚拟服务器的IP地址。

最小长度 = 1

l2conn

布尔值

使用L2参数标识连接。

选项

  • false

  • true

lbvserver

字符串

默认的负载均衡虚拟服务器。

listenpolicy

字符串

指定内容切换虚拟服务器侦听策略的字符串。可以是现有表达式的名称或内联表达式。

mssqlserverversion

字符串

MSSQL服务器的版本。

选项

  • "70"

  • "2000"

  • “2000SP1”

  • "2005"

  • "2008"

  • “2008R2”

  • "2012"

  • "2014"

mysqlcharacterset

字符串

mysql vserver返回的字符集。

mysqlprotocolversion

字符串

mysql vserver返回的协议版本。

mysqlservercapabilities

字符串

mysql vserver返回的服务器功能。

mysqlserverversion

字符串

mysql vserver返回的服务器版本字符串。

最小长度 = 1

最大长度 = 31

name

字符串

内容切换虚拟服务器的名称。必须以ASCII字母数字或下划线_字符开头,并且只能包含ASCII字母数字、下划线_、井号#、句点.、空格、冒号:、@符号@、等号=和连字符-字符。

创建CS虚拟服务器后无法更改。

最小长度 = 1

netprofile

字符串

网络配置文件的名称。

最小长度 = 1

最大长度 = 127

nitro_pass

字符串 / 必需

用于向Netscaler节点进行身份验证的密码。

nitro_protocol

字符串

访问Nitro API对象时使用的协议。

选项

  • "http" ← (默认)

  • “https”

nitro_timeout

浮点数

与Netscaler建立新会话时,超时错误抛出之前的时间(秒)。

默认值: 310.0

nitro_user

字符串 / 必需

用于向Netscaler节点进行身份验证的用户名。

nsip

字符串 / 必需

将进行Nitro API调用的Netscaler设备的IP地址。

可以使用冒号 (:) 指定端口。例如 192.168.1.1:555。

oracleserverversion

字符串

Oracle服务器版本。

选项

  • “10G”

  • “11G”

port

字符串

内容切换虚拟服务器的端口号。

最小值 = 1

范围 1 - 65535

* 在CLI中表示为NITRO API中的65535

precedence

字符串

用于内容切换虚拟服务器上基于规则和基于URL的策略的优先级类型。使用默认的RULE设置,将根据基于规则的内容切换策略评估传入的请求。如果没有任何规则匹配,则将根据基于URL的内容切换策略评估请求中的URL。

选项

  • “RULE”

  • “URL”

push

字符串

处理与绑定到此内容切换虚拟服务器的推送虚拟服务器(由“推送虚拟服务器”参数指定)的流量。推送虚拟服务器的服务类型应为HTTPSSL

选项

  • "enabled"

  • "disabled"

pushlabel

字符串

用于从服务器接收到的响应中提取标签的表达式。此字符串可以是现有规则名称或内联表达式。虚拟服务器的服务类型应为HTTPSSL

pushmulticlients

布尔值

允许来自同一客户端的多个Web 2.0连接连接到虚拟服务器并期望更新。

选项

  • false

  • true

pushvserver

字符串

负载均衡虚拟服务器的名称,类型为PUSHSSL_PUSH,服务器将客户端面向的负载均衡虚拟服务器上接收到的更新推送到该服务器。

最小长度 = 1

range

字符串

连续IP地址的数量,从IP地址参数指定的地址开始,包含分配给此虚拟服务器的一系列地址。

最小值 = 1

最大值 = 254

redirectportrewrite

字符串

执行HTTP重定向时端口重写的状态。

选项

  • "enabled"

  • "disabled"

redirecturl

字符串

如果虚拟服务器不可用,则将流量重定向到的URL。虚拟服务器的服务类型应为HTTPSSL

警告:确保URL中的域名与为内容切换策略指定的域名不匹配。如果匹配,请求将不断重定向到不可用的虚拟服务器。

最小长度 = 1

rhistate

字符串

根据虚拟服务器上的设置注入主机路由。

* 如果在共享IP地址的所有虚拟服务器上都设置为PASSIVE,则设备始终注入主机路由。

* 如果在共享IP地址的所有虚拟服务器上都设置为ACTIVE,则即使一个虚拟服务器处于UP状态,设备也会注入。

* 如果在某些虚拟服务器上设置为ACTIVE,而在其他虚拟服务器上设置为PASSIVE,则即使一个设置为ACTIVE的虚拟服务器处于UP状态,设备也会注入。

选项

  • “PASSIVE”

  • “ACTIVE”

rtspnat

布尔值

为实时流协议 (RTSP) 连接启用网络地址转换 (NAT)。

选项

  • false

  • true

save_config

布尔值

如果为yes,则模块将在进行任何更改时保存Netscaler节点上的配置。

如果模块没有进行任何更改,则不会保存Netscaler节点上的配置。

选项

  • false

  • true ← (默认)

servicetype

字符串

虚拟服务器使用的协议。

选项

  • “HTTP”

  • “SSL”

  • “TCP”

  • “FTP”

  • “RTSP”

  • “SSL_TCP”

  • “UDP”

  • “DNS”

  • “SIP_UDP”

  • “SIP_TCP”

  • “SIP_SSL”

  • “ANY”

  • “RADIUS”

  • “RDP”

  • “MYSQL”

  • “MSSQL”

  • “DIAMETER”

  • “SSL_DIAMETER”

  • “DNS_TCP”

  • “ORACLE”

  • “SMPP”

sitedomainttl

字符串

.

最小值 = 1

sobackupaction

字符串

如果溢出生效,但没有可用的或存在的溢出备份链时要执行的操作。

选项

  • “DROP”

  • “ACCEPT”

  • “REDIRECT”

somethod

字符串

用于将流量转移到备份虚拟服务器(当主虚拟服务器达到溢出阈值时)的溢出类型。连接溢出基于连接数。带宽溢出基于传入和传出流量的总Kbps。

选项

  • “CONNECTION”

  • “DYNAMICCONNECTION”

  • “BANDWIDTH”

  • “HEALTH”

  • “NONE”

sopersistence

字符串

在主虚拟服务器和备份虚拟服务器上维护基于源IP的持久性。

选项

  • "enabled"

  • "disabled"

sopersistencetimeout

字符串

溢出持久性的超时值(分钟)。

最小值 = 2

最大值 = 1440

sothreshold

字符串

根据溢出方法,虚拟服务器在溢出发生之前可以处理的最大连接数或最大总带宽 (Kbps)。

最小值 = 1

最大值 = 4294967287

ssl_certkey

字符串

绑定到此服务的SSL证书的名称。

SSL证书必须已存在。

可以使用 community.network.netscaler_ssl_certkey 模块创建证书。

此选项仅在 servicetypeSSL 时适用。

state

字符串

模块在 Netscaler 节点上配置的资源状态。

如果存在,则根据模块的参数需要创建并配置资源。

如果不存在,则会从 Netscaler 节点删除资源。

选项

  • "absent"

  • "present" ← (默认)

stateupdate

字符串

为特定的内容切换虚拟服务器启用状态更新。默认情况下,无论与其绑定的负载均衡虚拟服务器的状态如何,内容切换虚拟服务器始终处于 UP 状态。此参数与全局设置的交互方式如下:

全局级别 | 虚拟服务器级别 | 结果

已启用 已启用 已启用

已启用 已禁用 已启用

已禁用 已启用 已启用

已禁用 已禁用 已禁用

如果只想为某些内容切换虚拟服务器启用状态更新,请确保禁用状态更新参数。

选项

  • "enabled"

  • "disabled"

targettype

字符串

虚拟服务器目标类型。

选项

  • "GSLB"

tcpprofilename

字符串

包含虚拟服务器 TCP 配置设置的 TCP 配置文件的名称。

最小长度 = 1

最大长度 = 127

td

字符串

唯一标识要在其中配置实体的流量域的整数值。如果未指定 ID,则实体将成为默认流量域的一部分,其 ID 为 0。

最小值 = 0

最大值 = 4094

ttl

字符串

.

最小值 = 1

validate_certs

布尔值

如果为 no,则不会验证 SSL 证书。这仅应在使用自签名证书的个人控制站点上使用。

选项

  • false

  • true ← (默认)

vipheader

字符串

虚拟服务器 IP 和端口标头的名称,用于 VServer IP 端口插入参数。

最小长度 = 1

备注

注意

示例

# policy_1 must have been already created with the netscaler_cs_policy module
# lbvserver_1 must have been already created with the netscaler_lb_vserver module

- name: Setup content switching vserver
  delegate_to: localhost
  community.network.netscaler_cs_vserver:
    nsip: 172.18.0.2
    nitro_user: nsroot
    nitro_pass: nsroot

    state: present

    name: cs_vserver_1
    ipv46: 192.168.1.1
    port: 80
    servicetype: HTTP

    policybindings:
      - policyname: policy_1
        targetlbvserver: lbvserver_1

返回值

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

描述

diff

字典

实际配置的对象与模块中指定的配置之间的差异列表

返回:失败

示例: {"clttimeout": "difference. ours: (float) 100.0 other: (float) 60.0"}

loglines

列表 / 元素=字符串

模块记录的消息列表

返回:始终

示例: ["message 1", "message 2"]

msg

字符串

详细说明失败原因的消息

返回:失败

示例: "Action does not exist"

状态

  • 此模块将在 6.0.0 版本中删除。[已弃用]

  • 更多信息请参见 已弃用

作者

  • George Nikolopoulos (@giorgos-nikolopoulos)