经常使用SDN控制器安装部署之Floodlight篇

1 Floodlight概述html

Floodlight是目前主流的SDN控制器之一,它的稳定性、易用性已经获得SDN专业人士以及爱好者们的一致好评,并因其彻底开源,这让SDN网络世界变得更加有活力。控制器做为SDN网络中的重要组成部分,能集中地灵活控制SDN网络,为核心网络及应用创新提供了良好的扩展平台,本文档主要介绍基于Java语言的开源SDN控制器Floodlight的安装部署。git

安装前准备工做web

若是不是专业人士,咱们建议在虚拟机中搭建环境并安装。json

Linux:本文基于Ubuntu12.04版本安装api

■系统需求:Ubuntu 10.04Natty)及以上版本(运行Ant1.8.1及如下版本)微信

■安装JDKAnt。(可在Eclipse上安装)网络

安装图形化Eclipse(非必须)eclipse

■安装gitui

安装Floodlightspa

1)从Github下载并编译Floodlight

2)运行Floodlight

稍等一会Floodlight就会开始运行,并在控制台打印debug信息。

若是Floodlight运行不正常能够查看Floodlight的主进程是否正在运行。

3Eclipse设置

若是是桌面版带图形化界面的Ubuntu而且以前已经安装了Eclipse,那么咱们就能够经过图形化界面的Eclipse运行、开发、配置Floodlight

上述命令将建立多个文件:Floodlight.launchFloodlight_junit.launchclasspath.project。打开Eclipse软件,能够经过下面这些来设置新的Eclipse项目。

■打开eclipse建立一个新的工程

File -> Import -> General -> Existing Projects into Workspac ,点击下一步

■点击“Browse”。选择以前放置Floodlight的路径

■点击Floodlight

■点击“Finish

如今就产生了一个FloodlightEclipse工程。因为咱们是使用静态模块加载系统运行Floodlight,咱们必须配置Eclipse来正确的运行Floodlight。建立Floodlight目标文件:

■点击Run->Run Configurations

■右击Java Application,选择 New

■“Name”使用“FloodlightLaunch

■“Project”使用“Floodlight

■“Main”使用“net.floodlightcontroller.core.Main

■点击“Apply

■点击“Run”,Floodlight就开始运行了

4)运行Floodlight后能够经过登陆http://localhost:8080/ui/index.html使用Floodlight提供的web管理界面查看里面的信息,包括交换机、主机等等,由于咱们没有接什么设备,页面没有什么信息。

配置Floodlight

Floodlight提供了两个配置文件:floodlightdefault.propertieslearningswitch.properties,路径都位于floodlight/src/main/resources/。经过这两个配置文件能够查看Floodlight已经加载的子模块以及控制器的侦听端口、web端口,默认的侦听端口是6633web端口是8080。若有必要用户能够自定义加载子模块和修改侦听端口,经过vi命令修改配置文件后,在Floodlight目录下执行ant编译后重启Floodlight便可。配置参数以下两图a)、图b)所示:

                    a)  floodlightdefault.properties配置信息

                    图b)  learningswitch.properties配置信息

经常使用Floodlight命令

Floodlight将本身的API经过Rest Api的形式向外暴露,关于Rest Api,就是将程序的API封装成为通用的http GET/PUT的形式,这样的话无需关注程序实现细节,经过发送http请求便可完成API操做。因此用户能够经过FloodlightRestful api来向Floodlight请求各类信息,包括交换机状态、能力、拓扑等。须要注意,经过FloodlightRestful api返回的信息以json格式封装。REST Api信息用户访问http://www.projectfloodlight.org/floodlight/来得到。

1)请求该控制器上全部的switchDPID,能够参考以下命令,其中localhost:8080要换成控制器的ipport

2)加入流表项

3)读取流表项

注:这种方式是经过static flow pusher来获取流表项。

4)删除流表项

假如要删除全部的流表项,使用以下命令:

其它常见操做同Open vSwitch

6 Floodlight可兼容交换机

下面列出了能够和Floodlight控制器兼容的交换机:

虚拟交换机

Open vSwitchOVS

硬件交换机

Arista 7050

Brocade MLXe

Brocade CER

Brocade CES

Dell S4810

Dell Z9000

Extreme Summit x440, x460, x670

HP 3500, 3500yl, 5400zl, 6200yl, 6600, and 8200zl (the old-style L3 hardware match platform)

HP V2 line cards in the 5400zl and 8200zl (the newer L2 hardware match platform)

Huawei openflow-capable router platforms

IBM 8264

Juniper (MX, EX)

NEC IP8800

NEC PF5240

NEC PF5820

NetGear 7328SO

NetGear 7352SO

Pronto (3290, 3295, 3780) - runs the shipping pica8 software

本文来源于SDNLAB,可点击此阅读原文。若是您对本文感兴趣,可参与如下互动方式与做者近距离交流。       (1) 微博(http://weibo.com/sdnlab/


(2) 微信(帐号SDNLAB)

(3) QQ

SDN研究群(214146842)

OpenDaylight研究群(194240432)

相关文章
相关标签/搜索