动态智能策略之EEM 原创:wildlee
今天和大家分享一下EEM技术,EEM是Cisco IOS的嵌入式事件管理器,其英文全称为Embeded Event Manager。它可以监控思科IOS系统中的多种系统微事件,这些事件可以是接口的内容、CPU的负载、日志信息等。通过设定一个微事件用来触发一个EEM动作。EEM灵活多变、功能丰富、在配合人工智能,非常强悍,想了解更多的EEM技术,请GOOGLE EEM.基于APPLET应用的EEM策略编制可以分为三步。
1. EEM服务器注册一个EEM策略。
2. 配置event的触发条件,也就上我上面说的系统中的各种微事件。
3. 定义一个动作,此动作可以是改变系统配置、发送EMIAL、生成日志信息等。
实例应用EEM策略分析
我将用例子来发挥EEM技术,这个例子我引用来自51CTO朋友的一个工程案例,其作者bgp4more没有给出配置实例。案例说明:”分支到总部有2根物理分离的2M线路,平时业务数据流量(3M,4M)。现在要新部署一套1080p高清视频,经测试至少需要2M带宽。线路条件不变,视频会议开始,要求其中1根2M线路为高清视频专用(等同于点对点的一根专用2M线路),视频会议关闭时,2根2M线路正常ospf负载均衡。PBR我相信很多人用过不多说,所谓的基于源的策略路由。普通的PBR或QOS显然在此案中无法解决问题。
问题关键:得到判断后,PBR如何智能加载?如何知道视频会议结束?会议结束后,网络如何恢复正常运行[卸载PBR]?”下面我们通过分析并逐步解决这个难题。
1. 怎么判断视频会议召开?
基于任何网络的应用,都有一个流的特征,也就是通信中的五元组。我们可以通过一个扩展ACL去识别这个网络应用。
2. PBR如何智能加载?
EEM具有日志事件触发动作的功能。因此我们可以用扩展ACL生成日志事件并被EEM获知,让EEM进行一个系统配置动作,加载这个PBR策略。
3. 如何知道视频会议结束?
在实例中PBR策略生效后,只有特定的流被转发到定义的视频会议链路,当视频会议结束后,此链路将不在承载数据分组,链路使用率降低或消失。
我们可以判断接口传输率小于某个阀值,用来确定视频会议的结束。
4. 恢复网络卸载PBR
EEM可以被一个接口微事件触发,当某接口的转发速率达到某个阀值的时候触发EEM事件,EEM执行一个配置动作卸载PBR.这里有一点要注意,如果网络在正常使用情况下,接口的转发率符合定义的阀值,EEM也将被触发。
动态智能EEM策略实例
下图是参照上面的实例情况模拟的环境,由于没有真实的实例应用流量,我测试的时候会用telnet流量代替,其接口速率也只是理论模拟,真实环境的数值要大家测试,东西不能死学。
分支机构到公司总部有两条链路,当分支机构的EEMpolicy路由器中定义的ACL检测到有特定的穿越流量时,ACL生成日志事件,EEMpolicy路由器根据ACL日志事件触发EEM策略,EEM策略动作将pbr策略应用到特定的接口上将特定的流转发到2M链路之上,其下一跳为13.1.1.3[B],其它的流转发到12.1.1.2[A]。当某种网络应用消失,2M链路转发率降低达到某个阀值,在次触发另一个EEM策略,卸载pbr策略。细节的配置不在给出,我们直接看EEMpolicy路由器的配置。
EEMpolicy Configuration
1.ACL
ip access-list extended testtelnet
permit tcp any 172.16.1.5 0.0.0.255 eq telnet log
permit ip any any
网络应用识别并成生ACL日志事件,用来触发EEM策略。
2.EEM pbrinstall策略
event manager applet pbrinstall
向EEM服务器注册一个EEM策略,策略名为pbrinstall.
event syslog occurs 2 pattern “list testtelnet permitted tcp”
指定一个触发EEM策略的条件,当定义的日志事件字符串出现两次且被匹配,执行动作。
action 1.0 cli command “enable”
action 1.1 cli command “conf t”
action 1.2 cli command “inter f1/0″
action 1.3 cli command “ip policy route-map wildlee”
EEM动作执行了一系列系统配置,其将PBR策略配置到指定接口。
action 1.4 syslog msg “hello, policy has been enabled”
生成系统日志报告
action 1.5 mail server “8.8.8.8″ to “448997701@qq.com” from “haifeng_10@sina.com” subject ” EEM pbrinstall” body ” hello, policy has been enabled “
发送email通知,这里旧的IOS不支持我们输入邮件账号与密码,而现在我们发送email都是要验证用户身份的。
3.PBR策略
route-map wildlee permit 10
match ip address pbrinstall
set ip next-hop verify-availability
set ip next-hop 13.1.1.3
route-map wildlee permit 20
set ip next-hop verify-availability
set ip next-hop 12.1.1.2
定义了一个PBR策略,用于分流。
ip access-list extended pbrinstall
permit tcp any host 172.16.1.5 eq telnet
此处定义的ACL被ROUTE-MAP调用,为什么不用testtelnet,这个自己可以考虑一下。
4.EEM pbruninstall策略
event manager applet pbruninstall
Event interface name “FastEthernet0/1″ parameter transmit_rate_bps entry-val 8000 entry-op le entry-val-is-increment false poll-interval 60
定义一个接口事件用来触发EEM策略,当一个接口的转发速率小于或等于8000bps的时候。
action 1.0 cli command “enable”
action 1.1 cli command “conf t”
action 1.2 cli command “int f1/0″
action 1.3 cli command “no ip policy route-map wildlee”
action 1.4 syslog msg “$ _interface_name download: $ _interface_parameter = $ _interface_value ,fast1/0 pbrpolicy is uninstall”
本文完毕,此文是要结合逻辑分析与思考来做的.
转载请注明:爱开源 » 动态智能策略之EEM