iRules是基于F5 TMOS操作系统的开放脚本语言,为F5设备提供灵活强大的定制功能,基于TCL语法的iRules可以方便的加入到F5设备内部,处理通过F5设备的网络流量,控制各种协议和应用数据。每个iRules必须包含事件、命令和逻辑三部分才可以有效运行,通过这三个部分的灵活组合和排序可以定制IP层面以上的数据流量处理功能,提高和增强F5设备的灵活性和功能性。同时,高效的使用iRules定制某些应用功能,可以大大降低应用系统的研发成本,简化研发复杂程度,提高应用系统性能,减少计划内外当机时间。
在开始使用iRules之前,需要了解F5设备的基本功能及配置;同时,根据要实现的不同功能,需要对该功能涉及的相关知识有所了解,比如TCP协议、UDP协议、DNS原理、SSL证书原理、HTTP协议、安全攻击及防护、Cache、XML等。
那什么时候需要用到iRules语言呢?F5设备支持绝大多数应用交付的标准功能,可以满足绝大部分IT系统对这方面的功能及部署要求,但某些应用系统对数据控制有着更加精细的定制要求,或者对标准协议的功能支持有更高的要求,这些时候需要使用iRules来增强F5设备的功能,实现这些功能要求。比如,F5的LTM设备支持基于源地址、COOKIE、目的地址、SSL ID等模式的会话保持方式,可以满足大多数应用交付系统对会话保持的要求。但大多数JAVA开发人员希望使用中间件的SESSION ID作为会话保持的依据,这样可以更加方便和准确的控制应用数据的后台走向,这时候,使用iRules编写一段简单的代码并输入到F5设备中,即可高效的实现这一功能,满足应用程序的功能需求。
1