只在此网中,云深不知处丨TF Q&A

有这样一群人,他们的来历各不相同,有技术老鸟、市场老炮,也有资深用户、行业小白,他们的共同点是“爱折腾”,喜欢摆弄SDN、多云互联、开源云网络,关注Tungsten Fabric的一举一动。

在TF中文社区,他们找到了大本营,无论是技术实战中的问题,还是精心整理的资料,都希望和伙伴们积极地探讨、分享。

我们将其中的精彩问答整理出来,形成 “TF Q&A ”栏目,看看“实战派”们遇到的问题和困惑,也许正是你希望了解的——

Q:TF现在代码量大概有多少了?想评估下去读代码的话要花多少时间。
杨雨:我初步看了看,controller组建C语言的代码就到了50w的量级,还有vRouter、config、analytics,整体应该是百万量级的。我们还是先能使用起来,掌握使用场景和搭建,技术原理。看代码是后面的事情了。

Q:TF的编译一定要root权限吗?是因为要docker吗?哪里有编译指导吗?
杨雨:不一定,访问docker应该是在build镜像阶段,用户需要访问docker只需要访问/var/run/docker.sock就行。如果您是刚接触TF,建议先从部署和使用开始,这里有可下载的镜像:

Q:TF和K8s对接,大家的Linux kernel都用的啥版本的?
Wenrui:TF和Linux Kernel的要求,不同的TF版本对Kernel的要求不完全一样,建议部署前查看相应的版本支持列表。例如

Q:现在哪能下到最新镜像?
钱誉:https://hub.docker.com/u/tungstenfabric/
杨雨:https://hub.docker.com/u/opencontrailnightly 这个是nightly build的,会比较新。

Q:有人用下面部署成功过TF么?

大家都是怎么部署的?
杨雨:用国产版本吧,

Q:TF支持Hyper-v环境吗?
JianXun-KkBLuE:不支持传统Hyper-v。如果Hyper-v上面有Docker的话可以。
钱誉:
弄过一次实验,没有成功,vrouter-agetn貌似部分代码不跨平台要重写或者修改,没深入的去弄。

Q:在K8s环境里TF能否给容器配置静态IP?做法和OpenStack环境下一样吗?
杨雨:TF对接OpenStack是可以指定虚拟机的IP的。对接K8s只有StatefulSet可以,因为K8s本身是要求资源是动态的,创建是动态的,销毁也是动态的。所以需要用DNS服务来做service discovery。像External IP等是可以指定的。

Q:在部署K8s的时候,kubeadm和helm这两个工具是什么关系?可以先用kubeadm部署好k8,然后再在k8 cluster上装helm ?
zhouzhao:helm是部署应用的,kubeadm部署K8s集群。helm的客户端在K8s里,控制端随意,能控制客户端就可以。

Q:TF集成K8s支持多租户网络,想了解一下TF的多租户网络是怎么管理主机网络模式pod与非主机网络模式pod之间的互通问题?
杨雨:主机网络模式的POD是不受TF控制的,网卡也是在物理机上的,属于underlay网络。在TF接入下的POD都是接入到vRouter里的,属于overlay网络,目前underlay网络需要和overlay网络三层互通只能通过CloudGateway。overlay到underaly多增加的访问方式就是link-local IP。

Q:目前TF和Akraino怎么结合使用的?用在哪个use case呢?
杨雨:Akraino是针对边缘云的项目,其实边缘云有很多的组件和场景,也很复杂。包含了基础架构编排,应用编排等等。Edge的基础架构是OpenStack和K8s的云,云就需要SDN。Akraino的项目里要求SDN支持SR-IOV,DPDK这些特性,正好TF也支持。

Q:TF service chain的默认集成支持的NVF 防火墙, 负载均衡image是啥?防火墙是vSRX? 负载设备是?
杨雨:这个不限。你用vSRX可以,用Palo Alto也可以,没有限定防火墙的品牌和型号,服务链主要是导流量。
钱誉:不过FortiGate是有问题的,我们poc过, 有些feature起不来,除了vSRX,其他基本都要poc。

Q:POC指的不是简单的集成,是指需要通过改代码,接口之类的。对吧?
钱誉:是的,有小部分二开。LB我们对接了Redware。

Q:想不明白,为什么Flannel做了VXLAN,但是有不做策略,为什么Calico做了BGP,又不做overlay?
zhouzhao:Flannel的定位很简单明确,一个容器overlay网络,没有安全特性,Calico其实是有两种overlay模式,IPinIP和VXLAN都支持。易用性都不错,容易上手,不过都比不上TF的网络解决方案强壮完善。

对于一个DevOps工程师或者小团队,flannel是最优选择,几乎零难度,也不需要了解网络架构。我们现在生产环境出于性能考虑是用了Calico BGP。但是实际上都比不了TF这种全面的SDN方案。多集群、多云以及与非容器环境交互等需求,Flannel和Calico都满足不了。只能说轻量级有轻量级的取舍,重量级有重量级的负担,TF是官方适配K8s版本的进度比较慢不过比起国内厂家的进度,还是大大的,是开源界企业级SDN唯一的希望。

杨雨:我觉得Calico的好处就是无论在裸机环境还是部署在云的环境,都没有性能开销,而且足够简单。基于overlay的方案部署在云上,大部分云的网络已经overlay了。云上K8s的网络再overlay一层,性能会比较堪忧。现在很多公有云都提供了Kubernetes as service,所以我觉得Calico还是有它的定位和市场空间的,足够简单,适合在云上部署,就是太过于依赖iptables了,不花点功夫学习看不懂。

Q:TF支持的API有可以设置vRouter的发送速率(限速)的吗?
JianXun-KkBLuE:如果限速的话,可以查查QoS的API。
BeStrong:需要弄清楚是限制一个vRouter整体的速率,还是vRouter后面某个VM的。对一个vRouter整体的速率限制在交换机的接入端口上做通常更简单。TF的QoS则可以做到VM甚至更细的颗粒--解决VM间和VM内多种应用,在服务器的同一个网口(连接TOR)上竞争带宽资源的问题。当然物理网络配合好,也能解决经过物理网络的带宽竞争问题,也就是实现端到端控制。


  • 本站原创文章仅代表作者观点,不代表SDNLAB立场。所有原创内容版权均属SDNLAB,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用,转载须注明来自 SDNLAB并附上本文链接。 本站中所有编译类文章仅用于学习和交流目的,编译工作遵照 CC 协议,如果有侵犯到您权益的地方,请及时联系我们。
  • 本文链接https://www.sdnlab.com/24109.html
分享到:
相关文章
条评论

登录后才可以评论

SDNLAB君 发表于20-05-15
0