1.sflow的安装和使用
首先要安装Java jdk,然后再进行sflow相关app的下载,网络上已经有诸多关于这些内容的教程,在此就不多赘述
wget https://inmon.com/products/sFlow-RT/sflow-rt.tar.gz
tar -xvzf sflow-rt.tar.gz
./sflow-rt/start.sh
2.sflow的启动
下载完成的sflow包解压后名称为sflow-rt
在本次实验中笔者将压缩包解压在桌面,当然各位可以选择其他位置
之后打开sflow-rt
,启动sflow
然后打开http://localhost:8008/html/index.html查看界面
由于sflow-rt 3代与2代图形界面有显著差异,所以在此介绍一下
界面本身显示由原来的数据显示变为图形化显示 相比上一代操作有了些许变化 于下文讲述
3.sflow与mininet关联使用
1.mininet启动
测试阶段只创建最简单的拓扑,其他类型的拓扑在熟悉操作流程后由读者自行尝试
2.sflow启动
同本文先前介绍的方法一样打开start.sh
即可
3.控制虚拟网络
将eth0端口的IP等信息复制给s1,由s1端口作为sflow Agent来监听,开启新终端
ifconfig ens33 0 up
ovs-vsctl add-port s1 ens33
ifconfig s1 10.0.0.3 netmask 255.255.255.0
route add default gw 10.0.0.1
4.启动
开启OpenvSwitch的sFlow功能,并配置sFlow Agent
ovs-vsctl -- --id=@sflow create sFlow agent=s1 target=\"10.0.0.4:6343\" header=128 sampling=64 polling=1 -- set bridge s1 sflow=@sflow
之后得到一串字符
此时,sflow的主界面发生变化
显示出与初始情况不同的图像,表示不同的测量APP(关于APP的相关描述见文末)
同时,手动选择APPS
模块,呈现手动下载的APP
随意打开一个APP会发现,此时sFlow的APP已经检索到sFlow Agent的存在,可以开始测量
通过调整Metric中不同的参数可以选择测量不同的信息 以图表的形式表示出来
剩余的datasource Statistic
读者根据自身需要调整
其他APP的实例如下
4.APP的下载
根据官方文档的介绍https://sflow-rt.com/download.php
当笔者在使用sFlow中不同APP的测量功能时,需要进行下载,区别于sFlow-rt 2代
./sflow-rt/get-app.sh sflow-rt name_app
注意,笔者在自己亲身实践中发现,此处下载时候terminal所处的位置并不属于sFlow rt的目录中,而是位于上级目录,虽然官方并没有解释为什么要在这个地方进行APP的下载,但是笔者在使用时发现,如果在sFlow rt的文件夹所处位置中下载APP会发生诸多问题,所以在此处建议读者完全按照官方文档的要求来做,避免出现不必要的错误。
tips:关于APP下载的补充:
由于大环境的问题,很多学习者无法在ubuntu中输入命令直接获取到APP,下载时有一定困难,通过询问sflow-RT的开发人员,找到以下解决方法:
有问题的朋友可以采用开发人员推荐的方法;
除了这种方法之外,文档中还推荐了另一种使用方法,running sFlow-RT in a Docker container
https://hub.docker.com/r/sflow/sflow-rt/详细的使用方法参考文档
本次分享结束 如果对你有帮助请一键三连哟 有问题也可以在留言区发表相关评论 看到的话我会及时和大家讨论。