配置AppFlow特性
您可以按照与大多数其他基于策略的特性相同的方式配置AppFlow。首先,启用AppFlow特性。然后指定将流记录发送到的收集器。在此之后,您将定义操作,这些操作是一组配置的收集器。然后配置一个或多个策略,并将操作关联到每个策略。该策略告诉Citrix ADC设备选择发送到关联操作的流记录的请求。最后,将每个策略全局绑定或绑定到特定的虚拟服务器以使其生效。
您可以进一步设置AppFlow参数,以指定模板刷新间隔,并启用导出httpURL、httpCookie和httpReferer信息。在每个收集器上,必须将Citrix ADC IP地址指定为出口商的地址。
请注意
有关将Citrix ADC配置为收集器上的导出器的信息,请参阅特定收集器的文档。
配置实用程序提供了帮助用户定义策略和操作的工具。它确定Citrix ADC设备如何将特定流的记录导出到一组收集器(操作)。命令行接口为喜欢使用命令行的有经验的用户提供了相应的基于cli的命令集。
使演示applow
要使用AppFlow特性,必须首先启用它。
请注意
AppFlow只能在nCore Citrix ADC设备上启用。
使用命令行接口启用AppFlow特性
在命令提示符下,键入以下命令之一:
启用ns feature AppFlow
使用配置实用程序启用AppFlow特性
导航到系统>设置,点击配置高级特性,并选择演示applow选择。
指定采集器
收集器接收由Citrix ADC设备生成的AppFlow记录。要发送AppFlow记录,必须指定至少一个收集器。缺省情况下,采集器监听UDP 4739端口的IPFIX消息。可以在配置采集器时修改默认端口。同样,缺省情况下,AppFlow流量使用NSIP作为源IP。配置采集器时,可将此默认源IP地址修改为SNIP地址。还可以删除不使用的收集器。
通过使用命令行接口指定收集器
重要的
从Citrix ADC发行版12.1 build 55.13开始,您可以指定想要使用的收集器类型。中引入了一个新的参数“Transport”
添加appflow收集器
命令。缺省情况下,采集器监听IPFIX消息。您可以将收集器的类型更改为任意一种logstream
或ipfix
或使用“Transport”参数休息。有关配置的更多信息,请参见示例。
在命令提示符下,输入以下命令来添加收集器并验证配置:
- add appflow collector - ipaddress -port -netprofile -Transport - show appflow collector
例子
add appflow collector col1 -IPaddress 10.102.29.251 -port 8000 -netprofile n2 -Transport ipfix
使用命令行接口指定多个收集器
在命令提示符下,键入以下命令,向多个收集器添加和发送相同的数据:
add appflow collector -IPAddress add appflow collector -IPAddress add appflow action -collectors add appflow policy true bind lbvserver -policy -priority
使用配置实用程序指定一个或多个收集器
导航到System > AppFlow >采集器,并创建AppFlow收集器。
配置AppFlow动作
AppFlow动作是一个集合收集器,如果相关联的AppFlow策略匹配,流记录就会发送到它。
使用命令行接口配置AppFlow操作
在命令提示符下,输入以下命令来配置AppFlow操作并验证配置:
添加appflow action ——collectors …[-clientSideMeasurements (Enabled|Disabled)] [-comment ] show appflow action
例子
添加appflow操作apfl-act-collector-1-and-3 -collectors collector-1 collector- 3
使用配置实用程序配置AppFlow动作
导航到System > AppFlow >操作,并创建AppFlow动作。
配置AppFlow策略
配置AppFlow动作之后,下一步必须配置AppFlow策略。AppFlow策略基于规则,规则由一个或多个表达式组成。
请注意
对于创建和管理AppFlow策略,配置实用程序提供了命令行接口所没有的帮助。
通过命令行界面配置AppFlow策略
在命令提示符下,输入以下命令添加AppFlow策略并验证配置:
添加appflow policy show appflow policy
例子
add appflow policy apfl-pol-tcp-dsprt client.TCP.DSTPORT.EQ(22) apfl-act-collector- 1,and -3
使用配置实用程序配置AppFlow策略
导航到System > AppFlow >策略,并创建AppFlow策略。
使用“添加表达式”对话框添加表达式
在“添加表达式”对话框中,在第一个列表框中为表达式选择第一个项。
- HTTP HTTP协议。如果希望检查与HTTP协议相关的请求的某些方面,则选择该选项。- - - - - - SSL
受保护的网站。选择该选项,如果您想检查与请求接收者有关的请求的某些方面。- CLIENT发送请求的计算机。如果希望检查请求发送方的某些方面,则选择该选项。当您做出选择时,最右边的列表框将为表达式的下一部分列出适当的术语。
- 在第二个列表框中,为表达式选择第二个项。这些选择取决于您在上一步中所做的选择,并且适合于上下文。在您做出第二个选择之后,Construct Expression窗口(为空白)下面的Help窗口将显示描述您刚刚选择的术语的目的和使用的帮助。
- 继续从前一个列表框右侧出现的列表框中选择术语,或在提示您输入值的文本框中输入字符串或数字,直到表达式完成。
绑定AppFlow策略
要使策略生效,您必须全局绑定它,以便它适用于流经Citrix ADC的所有流量,或者绑定到特定的虚拟服务器,以便该策略只适用于与该虚拟服务器相关的流量。
绑定策略时,为其分配优先级。优先级决定了您定义的策略的评估顺序。您可以将优先级设置为任何正整数。
在Citrix ADC操作系统中,策略优先级的工作顺序是相反的——数字越高,优先级越低。例如,如果您有三个优先级分别为10、100和1000的策略,那么优先级为10的策略将首先执行。之后,该策略的优先级为100,最后该策略的优先级为1000。
您可以为自己留出足够的空间,以任何顺序添加其他策略,并仍然按您想要的顺序设置它们。您可以通过在全局绑定每个策略时设置间隔为50或100的优先级来实现这一目标。然后,您可以在任何时候添加更多的策略,而不必更改现有策略的优先级。
使用命令行接口全局绑定AppFlow策略
在命令提示符下,输入以下命令全局绑定AppFlow策略并验证配置:
bind appflow global [] [-invoke ( )] show appflow global
例子
bind appflow global af_policy_lb1_10.102.71.190 1 NEXT -type REQ_OVERRIDE -invoke vserver谷歌
使用命令行接口将AppFlow策略绑定到特定的虚拟服务器
在命令提示符下,输入以下命令将AppFlow策略绑定到特定的虚拟服务器并验证配置:
绑定lb vserver -policyname -priority
例子
绑定lb vserver谷歌-policyname af_policy_google_10.102.19.179 -priority 251
通过使用配置实用程序全局绑定AppFlow策略
导航到系统> AppFlow,点击AppFlow策略管理器,并选择相应的“绑定点(默认全局)”和“连接类型”,绑定AppFlow策略。
使用配置实用程序将AppFlow策略绑定到特定的虚拟服务器
导航到流量管理>负载均衡>虚拟服务器,选择虚拟服务器,单击政策,并绑定AppFlow策略。
为虚拟服务器启用AppFlow
如果您只想监视通过某些虚拟服务器的流量,请专门为这些虚拟服务器启用AppFlow。AppFlow可用于负载均衡、内容切换、缓存重定向、SSL VPN、GSLB和认证虚拟服务器。
使用命令行接口为虚拟服务器启用AppFlow
在命令提示符处,输入:
set cs vserver -appflowLog ENABLED
例子
set cs vserver vserver - cs -1 HTTP 10.102.29.161 80 -appflowLog ENABLED
使用配置实用程序为虚拟服务器启用AppFlow
导航到流量管理>内容交换>虚拟服务器,选择虚拟服务器,并启用AppFlow Logging选项。
为服务启用AppFlow
您可以为要绑定到负载均衡虚拟服务器的服务启用AppFlow。
使用命令行接口为服务启用AppFlow
在命令提示符处,输入:
set service -appflowLog ENABLED
例子
set service ser -appflowLog ENABLED
使用配置实用程序为服务启用AppFlow
导航到流量管理>负载均衡>业务,选择该服务,并启用AppFlow Logging选项。
设置AppFlow参数
通过设置AppFlow参数,可以自定义数据导出到采集器的方式。
通过命令行界面设置AppFlow参数
重要的
从Citrix ADC release 12.1 build 55.13开始,可以使用NSIP发送
Logstream
记录而不是SNIP。中引入了一个新的参数“logstreamoversip”设置appflow参数
命令。缺省情况下,logstreamoversip参数为“DISABLED”,必须为“ENABLE”。有关配置的更多信息,请参见示例。从Citrix ADC发行版13.0开始构建58。在AppFlow特性中启用Web SaaS应用程序选项。可以启用它从Citrix Gateway服务接收Web或SaaS应用程序的数据使用情况。有关配置的更多信息,请参见示例。
在命令提示符下,输入以下命令来设置AppFlow参数并验证设置:
- set appflow param [- templaterefresh ] [- appnamerefresh ] [- udppmtu ] [- httpurl (**ENABLED** | **DISABLED**)][- httpcookie (**ENABLED** | **DISABLED**)][- httpreferer (**ENABLED** | **DISABLED**)][- httpmethod (**ENABLED** | **DISABLED**)][- httphost (**ENABLED** | **DISABLED**)][- httppuseragent (**ENABLED** | **DISABLED**)][- clienttrafficonly (**YES** | **NO**)] [- clienttrafficonly (**YES** | **NO**][- websaasappusagereports (**ENABLED** | **DISABLED**)] [- logstreamoversip (**ENABLED** | **DISABLED**)] - show appflow Param
例子
set appflow Param -templateRefresh 240 -udpPmtu 128 -httpUrl enabled - websaasappusagereportenabled - logstreamoversip enabled
使用配置实用程序设置AppFlow参数
导航到系统> AppFlow,点击更改AppFlow设置,并指定AppFlow相关参数。
支持订阅者ID混淆
从Citrix ADC release 13.0开始构建35。xx, AppFlow配置被增强,以支持“subscriberIdObfuscation”算法,用于模糊4层或7层AppFlow记录中的MSISDN。但是,在将算法配置为MD5或SHA256之前,必须先将其作为AppFlow参数启用。该参数默认为禁用。
通过CLI配置用户ID混淆算法
在命令提示符处,输入:
set appflow param [-subscriberIdObfuscation (ENABLED | DISABLED) [- subscriberidobfusationalgo (MD5 | SHA256)]]
例子
set appflow param - subscriberidobfusationenabled - subscriberidobfusationalgo SHA256
通过GUI配置用户ID混淆算法
- 导航到系统> AppFlow.
- 在AppFlow详细信息窗格中,单击更改AppFlow设置下设置.
2 .在“配置AppFlow设置”界面中设置以下参数:
- 用户ID混淆。在L4/L7 AppFlow记录中启用混淆MSISDN选项。
- 用户ID混淆算法。选择算法类型为MD5或SHA256。
点击好吧而且关闭.
示例:配置DataStream的AppFlow
下面的示例演示了使用命令行接口为DataStream配置AppFlow的过程。
enable feature appflow add db user sa password freebsd add lbvserver lb0 MSSQL 10.102.147.97 1433 -appflowLog ENABLED add service sv0 10.103.24.132 MSSQL 1433 -appflowLog ENABLED bind lbvserver lb0 sv0 add appflow collector col0 -IPAddress 10.102.147.90 add appflow action act0 -collectors col0 add appflow policy pol0 " MSSQL .req.query.text.contains("select")" act0 bind lbvserver lb0 -policyName pol0 -priority 10
当Citrix ADC设备接收到数据库请求时,该设备将根据配置的策略对请求进行评估。如果找到匹配,则将详细信息发送到策略中配置的AppFlow收集器。
配置度量收集器
度量收集器支持以不同格式(如AVRO、Prometheus格式和inflow DB格式)每30秒导出一次时间序列分析数据。
CLI配置启动指标导出
通过CLI界面可以配置采集器服务,包括IP、协议和端口等详细信息。
例子:
Logproxy服务,包含Logproxy服务器IP,类型HTTP,端口5563)
在命令提示符处,输入:
set analytics profile ns_analytics_time_series_profile -collectors <使用第1步中配置的服务> -type timeseries -metrics ENABLED -outputMode
在命令提示符处查看CLI配置的输出结果。
show analytics profile ns_analytics_time_series_profile名称:ns_analytics_time_series_profile **Collector**: ' < Collector Name > ' profile -type: timeseries输出模式:avro **Metrics**: ENABLED **Schema文件**:Schema。服务模式:Push引用计数:0\
调试度量收集器
需要的调试日志存储在/var/nslog/metricscollector.log
的位置。
文件生成
的metrics_ <格式> _log。*
文件是在/var/nslog/
文件夹的位置。
指标收集器中的动态模式支持
有了动态模式计数器的支持,包含计数器列表的模式文件可以在运行时根据需求进行更新。默认情况下,/var/metrics_conf / schema.json
文件配置了计数器列表。
注意:
度量收集器默认模式文件
/var/metrics_conf / schema.json
可以通过installns程序安装到Citrix ADC设备上。
该任务指导软件调测工程师通过CLI配置指标采集器订阅指标
通过配置收集器服务启动度量导出。
在命令提示符处,输入:
set analytics profile ns_analytics_time_series_profile -metrics ENABLED -collectors -schemaFile schema。-outputMode
注意:
schema.json
是默认的schemaFile配置。
可以使用CLI命令配置一个新的模式文件,其中包含所需的一组计数器,以便度量收集器进行导出。模式文件必须出现在/var/metrics_conf /
的位置。
包含stats infra支持的所有计数器列表(reference_schema.json)的模式文件出现在/var/metrics_conf /
的位置。此文件可作为构建自定义计数器列表的参考。
通过CLI配置模式文件
set analytics profile ns_analytics_time_series_profile -metrics ENABLED -collectors <采集器名称> -schemaFile模式。-outputMode
可以使用上面的CLI命令添加和配置一个包含所需计数器的新模式文件,以便导出度量收集器。
包含stats infra支持的所有计数器列表(reference_schema.json)的引用模式文件出现在/var/metrics_conf /
的位置。此文件可作为构建自定义计数器列表的参考。
在命令提示符处查看CLI配置的输出结果。
show analytics profile ns_analytics_time_series_profile名称:ns_analytics_time_series_profile Collector: profile -type: timeseries Output Mode: avro Metrics: ENABLED Schema文件:Schema。服务模式:Push引用计数:0
更新导出的计数器列表的步骤
更新导出的计数器列表的步骤如下:
- 更新自定义/新模式文件。
- 方法禁用或启用度量
指标
选项显示在CLI配置中,以便使用更新后的模式文件。
多个时间序列概要文件支持
度量收集器支持Citrix ADC设备上最多三种时间序列概要配置。您可以将每个时间序列配置为具有以下特性。
收集器。
包含要导出的必需计数器集的模式文件。
要导出指标的数据格式。
启用或禁用度量审计日志和事件的选项。
有了多时间序列配置文件支持,度量收集器可以以不同格式(AVRO、Prometheus、inflow)将不同的度量集(基于配置的模式文件)同时导出到不同的收集器。
该任务指导管理员通过CLI添加时间序列配置文件
在命令提示符处,输入:
添加分析配置文件 -type timeseries
通过CLI配置时间序列配置文件
在命令提示符处,输入:
set analytics profile -metrics -auditlogs -events -collectors -schemaFile schema。-outputMode
支持多个时间序列配置文件的日志文件命名约定
- Avro日志文件以
metrics_avro_ < profile_name > _log。*
. - Prometheus日志文件以
metrics_prom_ < profile_name > . log
.
注:
- 尽管可以在所有配置的时间序列概要文件上启用度量,但事件和审计日志只能在一个概要文件上启用。
- 从版本13.1构建23.16起支持动态模式特性。
- 从版本13.1构建33.6开始支持多时间序列概要文件。