2016年1月17日,由UnitedStack网络组提出并创建的Steth项目正式并入Big Tent,成为OpenStack正式项目。该项目主要针对网络故障排查和部署前的硬件网络环境检查。
这是自Big Tent模式确认以来,UnitedStack有云第一个并入Big Tent的项目,也是继Scalpels项目和pandaman之后,来自中国的项目再次被社区接纳。作为OpenStack开源社区的一员,我们既是受益者,也是社区的建设者和所有人。
Steth项目因何而来?解救忙碌的网络工程师
Steth项目是怎么出现的?因为网络工程师实在太累了。这种感觉不是一个人,而是在UnitedStack有云网络团队每个人的认知。
“我们每周都会有新项目或者新POC,很多时间都花在了调试硬件网络的连通性或者性能上。Steth的初衷就是为了解决这些问题。”Steth项目的核心贡献者、UnitedStack有云SDN网络部工程师苌智如是说。
当前,UnitedStack有云业务爆发式增长,部署规模逐步扩大,背后是研发和支持团队高效运转和鼎力支持。但是,让网络工程师最懊恼的是在部署过程中遇到的很多问题和Neutron 没有任何关系。比如 Vlan 配错了、交换机上Vlan 没放行、Floating IP 网关没有起、甚至用于 VxLan 隧道的 Endpoint IP配错了,此外一些奇怪的现网还会带来一些例如策略路由造成的简单检查无法暴露但虚拟机却无法发送广播报文、光纤质量引发的跨机柜通信带宽异常等等问题。
这些“简单的小问题”在传统网络中也会遇到一些,只是当网络遇到OpenStack,问题叠加,就更难诊断。但是这些问题会占用工程师的大量时间,需要逐一排查解决。
“对于新部署的Region,我们总会遇到很多莫名的网络配置或性能问题,Steth能够迅速抓包分析数据包路径,定位问题所在;对于生产Region,可能会被虚拟网络连通性困扰,Steth能够在虚拟设备上发包快速模拟问题现场。”Steth项目的核心贡献者、UnitedStack有云SDN网络部工程师姚威如是说,正是这样的愿景诞生了Steth。
Steth项目解析 如何完成网络检查
网络的的稳定性是是OpenStack云平台稳定可用的基石。Steth的出发点很简单,就是在Neutron 内置有一个 sanity test,用于检查本机的情况,Steth 可以作为 Sanity 的分布式补充,检查 Neutron 运行的整个环境。
具体来说,Steth集成了一系列实用的脚本和第三方工具(包括iperf、tcpdump等),并能够模拟虚拟机发出 DHCP 请求、ARP 请求,帮助网络运营者实时追踪VM网络的状态。
Steth采用了多节点架构
在上面的架构图中,可以看到Steth是无状态的CLI和控制器,通过 Agent可以读取配置文档。通过与OpenStack的交互,在需要时向相关的Agent发送RPC请求。此外,Steth的Agent需要安装在每一个计算节点和网络节点之上,Steth的控制器中的配置文件为其指定IP地址。“通过Steth我们可以使用CLI远程调用运行在个节点的Steth-Agent提供的API,快速定位网络问题,为运维人员提供准确的排查思路,从而节省运维人员花费在定位网络问题上的时间。”苌智解释道。
需要指出的是,Steth项目除了可以应用在OpenStack环境以外,还可以使用在其他的分布式网络环境中。这个监测工具,基于C/S模式运行,能够在OpenStack网络环境部署前或者运营过程中对网络问题进行精准定位。目前,Steth仅适用于ML2网络。
网络监测 为什么不能借用其他项目?
如果说自动化是解决大规模部署之后,网络监测的必由之路,那么在OpenStack的众多项目中是否有一款适合的呢?事实上,找成熟项目也是UnitedStack有云网络组最初的想法,但是很快大家就发现,这条路行不通。
“在设计Steth之前,我们考察了Zabbix和Scalpals等同类工具。但感觉现有的工具仍然无法满足我们在大规模部署过程中的网络运维需求。”Steth项目的核心贡献者、UnitedStack有云SDN网络部PTL王为说,“实际上,Mirantis也同样遇到了网络自动化运维的问题,他们在FUEL中集成了 network-checker,这个工具后来被剥离出来成为独立项目。但network-checker相对简单、代码质量和把控比较糟糕,无法满足我们的需求。Zabbix的技术架构相对僵化,Scalpals在解决新集群部署方面还有一些局限。”
既然没有合适的项目,那我们就开发自己的项目并且快速开源,帮助每一个业务快速增长的公司摆脱疲于奔命的现状吧。姚威说:“我们想要提供一条OpenStack网络的无痛部署和运维的途径,节约老手时间,免除新手烦恼。”
Steth项目并入BigTent的背后
在正式解读了Steth项目之后,介绍创造这一项目的UnitedStack有云网络组
Steth项目的核心贡献:王为、苌智、姚威(右起)
Steth项目的审阅时间非常短,只有四天的时间,期间还因为重名的问题耽误了一天半。因为Steth的使命正是社区亟待解决的问题,所以快速得到了认可。
除了Steth项目,UnitedStack有云还有另外一个项目正在准备向社区提交,敬请期待好消息。
此外,Steth项目从成立到现在只有不到两个月的时间,它还有很多不成熟的地方。我们希望有更多的OpenStack开发者可以加入,让我们共同打造一个快速交付,持续运维的OpenStack网络!
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
OpenStack走过沉淀期:中国市场迎来新格局
开源OpenStack技术发展至今,市场的讨论声音已经越来越少;在这种情况下,不少人开始提出质疑:“OpenStack是否已经不行了?”。然而,过去11月份的OpenStack悉尼峰会却用事实给出了否定的答案。
-
OpenStack不行了吗?悉尼峰会回答你
金融行业并不是OpenStack未来发展的全部,在我看来,这次悉尼峰会的主要任务,应该是要回答“OpenStack不行了吗?”。
-
OpenStack的Pike和Queens版本:你有什么期待?
虽然SDN具有为混合云优化企业网络的潜力,但是它的技术及其周围的生态系统仍处于不成熟的阶段。
-
OpenStack本地存储选项的现在与未来
SSD、HDD和NVMe都能为OpenStack部署提供了存储服务。但他们各自的优势和哪里,并且这些技术将如何演进?