■ 河南 郭建伟
编者按:对于APIC-EM(即应用策略基础设施控制器企业模块)来说,是基于软件定义网络的控制器,具有可扩展平台、高可靠性、简单部署、北向RESTful APIs等特点。APIC-EM主要用来协调和管理由思科基础设施组成的局域网和广域网,可以托管大量的诸如网络PnP、IWAN、路径追踪、EasyQOS、PKI证书基础设施和网络资产等嵌入式服务,可以从GUI或者RESTful API查看这些应用。也就是说,APIC-EM是一个平台,利用容器技术可以允许各种服务或应用嵌入到该平台中。
对于RESTful架构来说,是一种互联网软件架构,具有结构清晰、符合标准、易用理解、库扩展方便等特点,可以通过各种语言(例如Python等)来调用RESTful API,实现自动化管理操作。从APIC-EM解决方案来说,其是在原有的传统网络解决方案的基础上,利用APIC-EM控制器对各种网络设备(例如路由器等)进行统一管理,帮助管理员快速部署各种配置信息。
APIC-EM管理的对象依然是传统的网络设备,这些设备并没有分离管理层面,管理员也可以单独对这些设备进行管理。
APIC-EM支持虚拟化平台和基于设备的部署,允许用户定义自动化和抽象的策略,APIC为企业网络接入提供了应用控制平台,简化了复杂的网络配置,支持现有设备和新的网络设备。同PI(即Cisco Prime Infrastructure)等传统的网络方式不同,APIC-EM可以实现更加智能化自动化的网络管理。例如,传统网络是针对单个设备进行手工配置,只能针对已知区域进行静态配置,花费的时间很长,对于APIC-EM来说,针对整个网络进行程序化配置,可以管理已知或未知区域,利用策略和GUI进行配置,短时间内即可完成。
当然。以上两种管理方式是可以关联的。各种应用程序可以通过REST API来向APIC-EM发送各种策略,APIC-EM再向各种网络设备推送各种配置参数。对于APIC-EM的安装来说,可以使用硬件设备,例如C系列USC APIC-EM-APL-R-K9等,在其中已经预装了APIC-EM软件,也可以下载ISO镜像进行安装,服务器需要安装Ubuntu 14.04 64位系统。APIC-EM对于武器的硬件要求较高,例如CPU需要六核,内存为64GB,占用硬盘 500GB等,如果是多主机部署的话,内存为32GB即可。在实际使用时,建议配置128GB内存并使用固态硬盘。APIC-EM对于Catalyst企业级的交换机,ASR系列的路由器以及IOS XE和AireOS的WLC提供了很好的支持。
在服务器上加载“APICEM-1.x.iso”的安装镜像,展开安装文件,接受授权信息,选择“Create a new APICEM cluster”项,创建新的APIC-EM控制器。如果选择“Add this host to an existing APIC-EM cluster”项,表示将其添加到一个APIC-EM集群中,实现分布式部署。这里选择前者。
之后为其设置IP地址,子网掩码,网关和DNS地址。
因为APIC-EM需要连接Internet,所以需要配置DNS服务器,使其可以解析域名。接下来根据需要来设置是否需要代理上网,之后输入CCO账户名和密码以及公司名称。对于CCO账户来说,主要用来在线升级。一般来说即使随意设置CCO名称,也不影响使用。
接下来需要配置底层Linux账户信息,账户名为Root,密码需要进行设置。
之后根据提示设置APIC-EM的管理员账户和密码,例如将其账户名设置为“admin”等。为了保证APIC-EM正常运行,必须按照提示设置正确的NTP服务器地址,实现时间同步操作。在下一步窗口中的“Enable IPSec Encryption”栏中选择内部主机通讯流量是否加密,例如输入“no”不进行加密。其余设置保持默认,执行具体的安装操作。
注意:安装的时间可能比较长。
利用网络PnP即插即用技术,可以统一让思科交换机,路由器以及AP等设备的配置流程实现统一化管理。
例如当新设备接入后,可以从DHCP服务器取得控制器的IP,并注册到控制器,进而获得IOS、证书以及所需的配置信息。这样可以统一刷入IOS系统,省却了手工操作的繁琐。
网络PnP可以为企业网络客户提供安全并集成的增强型解决方案,让新设备的部署和更新的过程变得更加简单快捷。
当新设备发现控制器后,控制器会创建用于该设备的数据库条目。管理员可利用该条目,为设备调配合适的镜像和配置参数。因此,网络PnP不仅免于人工干预,还可节约时间避免出错。
对于企业级网管来说,不仅要实现操作的简单性和安全性,更重要的是要实现配置的一致性。
在部署网络PnP时,为了提高效率,可以先创建一个数据库,在其中输入对应的主机名、序列号、设备类型等数据。
当然,也可以使用Excel文件来存储这些数据,通过合适的Python脚本文件,来读取该数据库的信息,提取所需的信息,利用PnP REST API直接将信息写入到 APIC-EM控制器中。
在本例中,所有的服务器设备,例如APIC-EM主机。PI主机,DNS服务器,DHCP服务器,网关设备,管理主机等都位于172.16.0.0/24的网络范围。这里使用了一台路由器作为DHCP服务器,在其全局配置环境中执行“ip dhcp pool r_dhcp”,“network 172.16.0.0 255.255.255.0”,“defaultrouter 172.16.0.10”,“option 43 ascii xxx”等命令,来配置DHCP地址池,其中的“172.16.0.10”为网关地址。“xxx”为控制器地址。注意,该地址的格式比较特殊。
例如对于“5A1D;B2;K4;I172.16.0.25 4;J80”来说,其中的“5A”表示PnP DHCP ID,为固定代码。“1D” 表示激活 PnP DHCP debug,“B2”和“K4”表示通过HTTP协议访问IPV4格式的地址,“I”参数指定控制器的 IP,“J”参数指定端口。R1,R2和R3等路由器位于另外的网段,在其上运行的是OSPF协议,其均处于Aera 0区域,R1的Gi0/1接口和172.16.0.0/24网段相连。R1的Gi0/2接口和R2的Gi0/1接口连接。
R2为ABR边界路由器,其Gi0/2接口和其他设备相连,位于Aera100 区域。R1的 的Gi0/2接 口的 IP 为 192.168.10.1/24,R2的Gi0/1接 口IP为192.168.21.10/24。R1 的Gi0/3接口和R3的Gi0/1接口连接。R3为ABR边界路由器,其Gi0/2接口和其他设备相连,位于Aera200区域。R1的的Gi0/3接口的 IP 为 192.168.30.1/24,R3的Gi0/1接 口IP为192.168.31.10/24。
这里为了简单起见,在R2和R3等设备上已经手工执行了所需的配置操作,并且处于开机状态。仅仅在R1没有进行任何配置,其处于纯空未开机状态。以在R1上开启网络PnP功能为例,来说明具体的实现方法。当然,也可以按照类似的方法为R2和R3配置网络PnP功能。例如当R1开机后,通过DHCP服务器获取自身IP和控制器的地址,并从控制器上得到自己的系统和配置信息,之后自动完成所有的配置,这样该网段就处于畅通状态。
在管理主机上访问“https://172.16.0.254”地 址,“172.16.0.254” 为APIC-EM的地址,在登录界面输入上述APIC-EM的管理员账户和密码,在APIC-EM管理界面顶部选择“SYSTEM HEALTH”项,查看系统的健康信息,包括CPU,内存和硬盘的利用率,以及各服务是否处于启用状态等。在最左侧纵向工具栏上点击“Network Plug and Play”按钮,在顶部点击“Configuration”项,在打开窗口中点击“Upload”按钮,上传R1的配置文件。
该配置文件是文本文 件,其 中 包 含Gi0/1,Gi0/2和Gi0/3的地址信息、OSPF宣告信息、指定Enable Password密 码、设置Username Password和Privilege 15参 数、SSH以 及SNMP的Red/Write Community等配置信息,如果有下层连接的设备,需要配置Option 43选项等信息。例如在配置文件中输入“hostname R1”,“enable secret xxx”,设置主机名和密码信息。
输 入“no aaa newmodel”,“ip dhcp excludedaddress 192.168.10.1 192.168.10.100”,“snmpserver community ceshiro ro”,“ snmp-server community ceshi RW”,“ip dhcp pool VLAN10”,“network 192.168.10.0 255.255.255.0”,“defaultroute 192.168.10.100”,“option 42 xxx”,“ip domain name xxx.com”,“username admin priv 15 secret password”,“cdp run”,“route 2”,“redistribute connected subnets”,“interface GigabitEthernet1 ip address 172.16.0.2 2555.255.255.0”,“negotiation auto”,“cdp enable”,“no shutdown”等。
这和平时手工配置OSPF协议的基本一致,这里限于篇幅就不详述了。点击顶部 的“Projects”项,点击“Add”按钮,在“Project Name”栏中输入项目的名称(例 如“R1Project”),点击“Create”按钮,创建该项目。点击左侧的“Add”按钮,在打开窗口中的“Device Name”栏中输入设备的名 称(例 如“Route1”),在“Product ID”栏中输入其产品 ID(例 如“CSR1000V”),在“Serial Number”栏中输入其序列号,对于序列号可以在路由器的命令行中执行“show license udi”命令查看。
在“Image”栏中点击选择按钮,选择IOS文件,这样可以将IOS刷入目标设备中。在“Config”列表中选择上述导入的配置文件。选择“Drvice Certificate”项,可以对目标设备发放证书,因为APIC-EM可以作为证书服务器存在。点击“add”按钮,保存上述配置信息。之后将R1开机,其会通过DHCP Option 43获取PnP Server(即APIC-EM)的相关信息,例如传输协议类型、端口号等,之后发送HTTP请求给APIC-EM。如果连接建立成功,APIC-EM会给R1推送一张证书,R1加载该证书到信任证书中,有了证书之后,R1就会和APIC-EM建立HTTPS连接,来得到ISO系统文件以及配置信息,并自动进行配置。
利用APIC-EM的设备发现功能,可以检测到各种设备信息。在APIC-Em管理界面右上角点击设置按钮。在弹出菜单中选择“Settings”项,在左侧选择“CLI Credentials”项,在右侧输入目标设备(例如R1等)的管理用户名和密码,以及Enable Password特权密码,点击“Add”按钮将其添加进来。
同理可以添加各种设备的密码信息。在左侧选择“SNMPv2c”项,在右侧的“Read Community”和“Write Community”面板中分别输入目标设备的读写团体名称。这样,就添加了CLI和SNMP登录凭据。
在左侧选择“Prime Credentials”项,在右侧输入PI的地址,用户名和密码。这样,就可以让APICEM和PI服务器之间进行数据的同步。只要APICEM发现的设备,PI也可以知晓。在左侧纵向工具栏上点击“Discovery”按钮,在右侧的“Dicovery Name”栏中输入发现项目的名称(例 如“Fxdev”),在“Type”栏中选择“CDP”项,在“IP Address”栏中输入R1的Gi0/1接 口 的IP(例 如“172.16.0.2”)。
如果不是思科的设备,可以选择“Range”项,输入一个网段,来发现其中的主机并进行探测。在“CDP Level”栏中输入搜索的跳数。例如在本例中,点击“Start”按钮,APIC-EM可以利用预设的凭据登录到R1上,之后利用CDP协议登录到与之相邻的设备。并进一步利用预设的凭据逐层级登录到其他的设备,利用CDP协议获取更多相关的设备。这样可以快速发现全网的所有设备,在报告窗口中的“LIST”列表中显示发现的所有设备信息。同PI的设备发现功能相比,APIC-EM发现的效率更高。
在左侧工具列中选择“Device Inventory” 按钮,在右侧显示资产的详细信息。在工具列上点击“Topology”按钮,在右侧显示查看网络拓扑结构图。
对于APIC-EM等SDN设备来说,路径追踪功能使其优势之一。所有的设备都会被APIC-EM等控制器集中管理,控制器掌管一切并了解全局状态,利用控制器的路径可视化功能,大大提高了管理的效率,使排错诊断的过程变得简单明了。
在左侧工具列中选择“Path Trace”按 钮,在 顶部 点 击“Start new Path Trace”链接,在打开面板中的“Source”栏中输入起始地址,在“Destination”栏中输入目标IP,点击“More Options”项,可以设置更多的项目,包括源端口、目的端口以及协议等。
选 择“Include Stats”项,可以选择所需的状态信息,包括QoS、接口、设备、性能分析等信息。选择“ACL Trace”项,激活ACL列表追踪功能。
点击“Stat Trace”按钮,开始路径追踪操作。APEMEM可以根据源地址和目标地址进行分析,判断经过了哪些设备、了解其出入接口情况、使用的路由协议信息、获取每个设备的状态、检测其是否存在问题等。在报告窗口中点击“Reverse”按钮,可以进行反向分析,更加深入的对网络进行检测。