TF實戰Q&A丨這個問題,我以前也遇到過

科技探路者發表於2020-09-09

TF  中文社群,  愛折騰的“實戰派”們經常探討有關  SDN  Tungsten Fabric  的各種問題,  我們將其中的  精華部分  整理出來,形成 “ TF Q&A ”   欄目,  他們碰到  的困惑  、踩過的坑  ,也許正是你  想要  瞭解的——

Q    最近在做的小實驗,OpenStack+Tungsten Fabric  模式的網路效能以及穩定性問題,但是因為沒有瞻博的路由器,沒有  gateway    VM  無法訪問外部網路。想請問有沒有  OpenStack+ Tungsten Fabric  模式,有沒有其他替代的訪問外部網路的方式,並且有沒有這方面的文件?

楊雨:  可以用vMX  或者更簡單的  vSRX 

       也可以用來做測試。

Q    Tungsten Fabric  如何支援多個  VXLAN fabric  ?(物理網建了  VXLAN fabric  ,他們各自有各自的  gateway    Tungsten Fabric  要跟這幾個物理網的  fabric  打通,也就是說  Tungsten Fabric  裡面管理的這些宿主機裡面的  VM  或者容器的例項,能夠跟物理  VXLAN  裡面  BMS  裸金屬伺服器通起來,同時它能把不同的  fabric  裡面的這些虛機連線到一起)

Edward Ting:     這個是可以做的,但它有一個plug in  ,要自己寫。因為物理的  Facebook    switch  或者  VXLAN fabric  ,它們目前只支援  Juniper  的,但社群的版本是隻支援  Juniper  的,然後怎麼去配置這些東西,它在  5.1  版是用  ansible  或一些自動化的指令碼做,社群的  UI  不能做這些事情。

Q    有大神知道這個咋解決的嗎(Disk for DB is too low  )?

wenrui    /etc/contrail/common.env  ,需要把  config database    docker compose  重啟一下,自己做  lab  的話,這個問題可以忽略,不影響功能。

      


Q    對於 Tungsten Fabric    Overlay  隧道可以是基於  GRE/UDP    MPLS  隧道,也可以是  VXLAN  隧道。為什麼要用  GRE/UDP    MPLS 

JianXun-KkBLuE  :一個原因是之前  vxlan  還不夠成熟,第二個是考慮可能  SP  (運營商)的場景。

Wenrui    Tungsten Fabric  一開始就是  vRouter  組網,是  L3 overlay    Juniper  又比較擅長  MPLS  ,另外十多年前  vxlan  也不太成熟,所以  vxlan  是後來支援的。

Q    諮詢大家一個小白問題,DPDK  有沒有  flow  模式和  packet  模式  ?

錢譽: 可能未必是你所想的模式。有流分類庫和資料包分發器庫。
我的理解是這樣的,因為在contrail  裡預設就是基於  flow  的模式,跟  DPDK  網路卡配置沒有關係。預設情況下每個  vrouter  都有一個流標的。  contrail  還提供另一種包模式。
因為流不是無限的,而且很多時候我們不需要那麼嚴格的流功能,那麼流的意義就失去了,另一個主要原因就在於流是很廢資源的,會在使用中竊取負載資源。
當然這個裡面其實有利有弊存在,比如說包模式的優點在於出現故障時候能快速收斂,不需要時間去建立流,vrouter  上沒有  SYN FLOOD  這種  DDOS  ,因為  vrouter  不需要保持狀態,當然缺點就是沒有留就少了分析,網路策略不能實現  ACL  ,不能進行映象或者  steering  ,僅僅支援單個  SI  服務鏈,也沒有  RPF  等等。

[root@openshift-comp01 ~]# vif --get 3Vrouter Interface Tablevif0/3      OS: tap233eefc1-94            Type:Virtual HWaddr:00:00:5e:00:01:00 IPaddr:5.5.5.4Vrf:2 Mcast Vrf:2 Flags:PL3L2DUufEr QOS:-1 Ref:6[root@openshift-comp01 ~]# vif --get 3Vrouter Interface Tablevif0/3      OS: tap233eefc1-94            Type:Virtual HWaddr:00:00:5e:00:01:00 IPaddr:5.5.5.4Vrf:2 Mcast Vrf:2 Flags:L3L2DUufEr QOS:-1 Ref:6

開了包模式後你看Flags:  這個裡面第一個  P  消失了。

Q    Tungsten Fabric  目前能對接多少個  OpenStack  叢集啊?  instances.yaml  配置檔案中看不出可以定義多組的樣子,難道是  1:1  然後做聯盟?

楊雨:1:1 

Q    請教下,Cloudify  已經比較成熟了嗎?已經有一些公司在使用的成功案例嗎?

楊雨:Cloudify  都大改過一次了,  NFV  方面用來做  NFVO  還是比較多的,

https://www.mirantis.com/blog/which-nfv-orchestration-platform-best-review-osm-open-o-cord-cloudify/    

Q    Tungsten Fabric  支援  vlan aware vm  接入嗎?

王峻:可以建立一個子介面port  ,測試一下。

Q    哪位專家有Tungsten Fabric  體系架構文件  ?

陳剛:中文版本

  

Q    Tungsten Fabric  原始碼編譯成  deb    rpm  包的連結或文件嗎?

Shuqiang  :現在  Tungsten Fabric  直接下載  image    ansible  部署好之後就可以用了,都用不著編譯。可以從這裡下載映象       

Q    Tungsten Fabric    rest api  文件嗎?有沒有寫怎麼傳遞引數?

Edward Ting:

http://configuration-schema-documentation.s3-website-us-west-1.amazonaws.com/R3.2/tutorial_with_rest.html       這個  3.2  基本類似,  2005  版也可以。有一些開放的庫可以用,你不一定需要自己寫。這個  api  文件裡面,有一些引數,可以直接把  vnc-api  庫拿過來用就行。

Q    閱讀vRouter  的程式碼,想分析下資料層的資料流程,有參考資料嗎?

楊雨:vRouter  的資料轉發是在  kernel  層實現的,可以去  GitHub  搜尋  contrail-vrouter  找到原始碼。

Q    vRouter  ,是說的  EDGE  這個麼?

Wenrui    EDGE    nsx  裡的  gateway  ,就像  Tungsten Fabric  裡的  VMX    Tungsten Fabric    VMware  環境的  vRouter  不是  EDGE  的作用,主要是用於內部  VN 

Q    DLR  這個是分散式路由器麼?  NSX-T    NSX  又不一樣。

Wenrui    Tungsten Fabric  裡的  vRouter    dlr  比較像,在  VMware  裡不太一樣,是一個  VM  ,實現方式是透過  portgroup    VM  的埠連到  vRouter VM 

其實Tungsten Fabric    VMware  環境先後有三種整合方式,  vCenter as compute    contrail VM  ),  vRO  整合,  CVFM  (商業版),現在商業版主要是做  CVFM  了。

Q    Tungsten Fabric    vRouter  裡,  vhost0.    pkt0.  分別是什麼作用?

錢譽:vhost0  是主機作業系統和  vRouter  之間的  Tap  介面。  vhost0  是主機作業系統使用的第  3  層介面。作為設定的一部分,  Tungsten Fabric  軟體會將  IP  配置從乙太網埠遷移到  vhost0  。當主機作業系統的網路堆疊在  vhost0  介面上傳送資料包時,它們將  vRouter  模組接收。  vRouter  依次路由資料包。當  vRouter  需要將資料包傳送到  host-os  的網路堆疊時,它將透過  vhost0  介面進行傳輸。  pkt0    vRouter    vrouter-agent  之間的  Tap  介面。  vRouter  在該介面上捕獲需要控制處理(例如流設定)的資料包。另外,當代理使用  pkt0  介面傳輸控制資料包(例如  ARP  )時。詳細可參考:

 

Q    請問有vRouter  詳細一點的資料嗎  ?

錢譽:

        

      

           

 

Q    如果OpenStack  整合了  Tungsten Fabric  控制器,那這個  OpenStack  能否透過  Ironic  元件部署裸機?

楊雨:可以,Contrail Command  可以實現,目前開源版本還沒有這個功能,得自己改。簡單的描述一下:  1. PXE OS Provision  時,要把物理機的  PXE  口對應交換機的口改到  Provision  的虛擬機器網路,完成  TFTP  裝機;  2.  裝完機,把  PXE  口對應交換機的口改到業務虛擬網路;  3.  物理機下架或維護,需要報網口切換到用於清理的虛擬網路,完成清理;  OVSDB  是過去時,現在是用  EVPN-VXLAN 

Q    PXE OS Provision  網路和  Ironic    tftp  是怎麼配置才能互通呢?

楊雨:

https://www.juniper.net/documentation/en_US/contrail19/topics/concept/how-bms-manager-works.html   

Q    OpenStack project  刪除了,但是  Tungsten Fabric  還有,就會出現錯誤……  UI  很多錯誤都二次封裝了。導致看不到原來的錯誤。

Edward Ting:  以前的  5.1    bug  ,我以前也遇到過這個問題。  UI  介面  bug  很多,  5.2    5.1  都是有這個問題,  5.1    5.2  好一些,但都有些  bug  ,得自己修。我建議不要用  UI  。有兩個原因,第一它有很多  bug  ,第二它沒有漢化。所以用  UI  大家可能會浪費更多時間,倒不如自己寫  UI 

Q    nova_compute    nova_libvirt  一直  restarting    docker logs  也看不到任何報錯。  VT-x  已經開了,請問怎麼排障啊?

陳剛:找到方法了,VM    systemctl disable libvirtd.service    systemctl disable dnsmasq  之後,兩個  docker  容器就正常了。

Q    有人用vqfx  遇到過這個問題嗎?總是提示要登入  vc-m  。虛擬的還分主備引擎嗎?

錢譽:用這個方法試試

     

 

Q    同網段跨節點交換mac  路由嗎?類似於  l2vni  ,還是隻用  l3vni  ,同網段用  arp proxy 

JianXun-KkBLuE    L3 

Q    如果路由模式,  VNF  可以配置一個網路卡嗎?還是必須  left    right  兩個?

Wenrui  :必須是兩個,分別連兩個  VNF  。路由模式  VM  的閘道器也不在  VNF  上。

Q    兩個網路卡,是不是虛擬機器的兩個網路卡都要配置IP 

Wenrui  :嗯,  VNF    L2    L3  都可以,但是需要連線不同子網。其實有沒有地址對  Tungsten Fabric  來說都一樣,即使是  L3  ,業務  VM  的閘道器也不在  VNF  上。

Q    nat  也一樣,對吧?

Wenrui    nat  不太一樣,是用在內外網的場景。

Q    如果服務鏈中vnf    nat  也可以實現?就是  waf  反向代理。

Wenrui  :對,  in-netwrok nat  就是這種方式。

Q    宿主機有兩塊網路卡,TF  建立的幾個  network  總是使用跟  vhost  一起的  eth1  ,怎麼才能讓  VM  的兩塊網路卡中的一個使用宿主機的  eth0?

楊雨:可以看看這個


Q    專家們,你們怎麼解決neutron l3 router  的效能瓶頸?

錢譽:Tungsten Fabric    pkt0    openflow  的首包沒什麼關係,因為  Tungsten Fabric    overlay  方式,報文不需要上送控制器,另外控制器主動下發  Virtual Overlay vSwitch/vRouter  ,依靠現有的協議來建立  IP Fabric  的連通性。  Underlay  拓撲變化不會影響  overlay    Tungsten Fabric  不會保留任何  Overlay Per-Tenant  狀態資訊。

Q    Tungsten Fabric  支援高可用 (  HA  )嗎?

Edward Ting:  它有支援,而且很容易做。它的設計是要有三個節點,  3    5    7  個節點,那  HA  就有了。

Q    分析服務可選部署,減少佔用小環境裡使用不合適?

Edward Ting:

https://www.juniper.net/documentation/en_US/contrail20/information-products/pathway-pages/contrail-service-provider-feature-guide.pdf       你可以分開部署,它有個東西叫做  remote computer  ,就是遠端計算,它是把分析服務放在  central office  裡,然後控制的伺服器可以放在邊緣,所以邊緣的那些節點上並不需要分析伺服器,你可以用運營商的  central office  裝分析伺服器,部署,然後分析所有邊緣的伺服器,這樣的話,比如說有  1000  臺節點,但是你的分析伺服器都在  central office  裡頭,這樣可以減少環境的一些浪費。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69981760/viewspace-2718195/,如需轉載,請註明出處,否則將追究法律責任。

相關文章