内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

TungstenFabric入門寶典丨多編排器用法及配置-創(chuàng)新互聯(lián)

在多個(gè)編排器之間共享控制平面有很多好處,包括routing/bridging、DNS、security等。

目前創(chuàng)新互聯(lián)已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站托管、服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計(jì)、睢陽網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。 下面我來描述每種情況的使用方法和配置。    K8s+OpenStack
Kubernetes + OpenStack的組合已經(jīng)涵蓋并且運(yùn)行良好。
  • https://github.com/Juniper/contrail-ansible-deployer/wiki/Deployment-Example:-Contrail-and-Kubernetes-and-Openstack


另外,Tungsten Fabric支持嵌套安裝(nested installation)和非嵌套安裝(non-nested installation),因此你可以選擇其中一個(gè)選項(xiàng)。
  • https://github.com/Juniper/contrail-kubernetes-docs


   K8s+K8s 將多個(gè)Kubernetes集群添加到一個(gè)Tungsten Fabric中,是一種可能的安裝選項(xiàng)。 由于kube-manager支持cluster_name參數(shù),該參數(shù)修改了將要?jiǎng)?chuàng)建的租戶名稱(默認(rèn)為“k8s”),因此這應(yīng)該是可行的。不過,我在上次嘗試該方法時(shí)效果不佳,因?yàn)橛行?duì)象被其它kube-manager作為陳舊對(duì)象(stale object)刪除了。
  • https://github.com/Juniper/contrail-container-builder/blob/master/containers/kubernetes/kube-manager/entrypoint.sh#L28


在將來的版本中,可能會(huì)更改此行為。 注意: 從R2002及更高版本開始,這個(gè)修補(bǔ)程序解決了該問題,并且不再需要自定義修補(bǔ)程序。
  • https://review.opencontrail.org/c/Juniper/contrail-controller/+/55758


注意:應(yīng)用這些補(bǔ)丁,似乎可以將多個(gè)kube-master添加到一個(gè)Tungsten Fabric集群中。

diff --git a/src/container/kube-manager/kube_manager/kube_manager.py b/src/container/kube-manager/kube_manager/kube_manager.py
index 0f6f7a 0 ..adb20a6  100644
--- a/src/container/kube-manager/kube_manager/kube_manager.py
+++ b/src/container/kube-manager/kube_manager/kube_manager.py
@@ - 219 , 10  + 219 , 10  @@  def  main(args_str=None, kube_api_skip=False, event_queue=None,

      if args. cluster_id:
         client_pfx = args.cluster_id +  '-'
-        zk_path_pfx = args.cluster_id +  '/'
+        zk_path_pfx = args.cluster_id +  '/' + args.cluster_name
      else:
         client_pfx =  ''
-        zk_path_pfx =  ''
+        zk_path_pfx =  '' + args.cluster_name

      # randomize collector list
     args.random_collectors = args.collectors
diff --git a/src/container/kube-manager/kube_manager/vnc/vnc_namespace.py b/src/container/kube-manager/kube_manager/vnc/vnc_namespace.py
index  00cce81..f968cae  100644
--- a/src/container/kube-manager/kube_manager/vnc/vnc_namespace.py
+++ b/src/container/kube-manager/kube_manager/vnc/vnc_namespace.py
@@ - 594, 7 + 594, 8 @@  class  VncNamespace( VncCommon):
                  self._queue.put(event)

      def  namespace_timer( self) :
-         self ._sync_namespace_project()
+         # self._sync_namespace_project() ## temporary disabled
+        pass

      def  _get_namespace_firewall_ingress_rule_name( self, ns_name) :
          return   "-" .join([vnc_kube_config.cluster_name(),


由于kube-master創(chuàng)建的pod-network都在同一個(gè)Tungsten Fabric controller上,因此在它們之間實(shí)現(xiàn)路由泄漏(route-leak)是可能的:)
  • 由于cluster_name將成為Tungsten Fabric的fw-policy中的標(biāo)簽之一,因此在多個(gè)Kubernetes集群之間也可以使用相同的標(biāo)簽

172.31.9.29 Tungsten Fabric controller
172.31.22.24 kube-master1 (KUBERNETES_CLUSTER_NAME=k8s1 is  set)
172.31.12.82 kube-node1 (it belongs  to kube-master1)
172.31.41.5 kube-master2(KUBERNETES_CLUSTER_NAME=k8s2  is  set)
172.31.4.1 kube-node2 (it belongs  to kube-master2) [root@ip -172-31-22-24 ~] # kubectl get node
NAME                                               STATUS      ROLES    AGE    VERSION
ip -172-31-12-82.ap-northeast -1.compute.internal   Ready      < none>    57m   v1 .12.3
ip -172-31-22-24.ap-northeast -1.compute.internal   NotReady    master    58m   v1 .12.3
[root@ip -172-31-22-24 ~] # 

[root@ip -172-31-41-5 ~] # kubectl get node
NAME                                              STATUS      ROLES    AGE    VERSION
ip -172-31-4-1.ap-northeast -1.compute.internal    Ready      < none>    40m   v1 .12.3
ip -172-31-41-5.ap-northeast -1.compute.internal   NotReady    master    40m   v1 .12.3
[root@ip -172-31-41-5 ~] # 

[root@ip -172-31-22-24 ~] # kubectl get pod -o wide
NAME                                 READY    STATUS    RESTARTS   AGE     IP              NODE                                              NOMINATED NODE
cirros-deployment -75c98888b9 -7pf82    1/ 1     Running    0           28m      10.47.255.249   ip -172-31-12-82.ap-northeast -1.compute.internal   < none>
cirros-deployment -75c98888b9-sgrc6    1/ 1     Running    0           28m      10.47.255.250   ip -172-31-12-82.ap-northeast -1.compute.internal   < none>
cirros-vn1                            1/ 1     Running    0           7m56s    10.0.1.3        ip -172-31-12-82.ap-northeast -1.compute.internal   < none>
[root@ip -172-31-22-24 ~] #  [root@ip -172-31-41-5 ~] # kubectl get pod -o wide
NAME                                 READY    STATUS    RESTARTS   AGE     IP              NODE                                            NOMINATED NODE
cirros-deployment -75c98888b9 -5lqzc    1/ 1     Running    0           27m      10.47.255.250   ip -172-31-4-1.ap-northeast -1.compute.internal   < none>
cirros-deployment -75c98888b9-dg8bf    1/ 1     Running    0           27m      10.47.255.249   ip -172-31-4-1.ap-northeast -1.compute.internal   < none>
cirros-vn2                            1/ 1     Running    0           5m36s    10.0.2.3        ip -172-31-4-1.ap-northeast -1.compute.internal   < none>
[root@ip -172-31-41-5 ~] #  /  # ping 10.0.2.3
PING  10.0.2.3 ( 10.0.2.3):  56  data  bytes
64  bytes  from  10.0.2.3: seq= 83 ttl= 63  time= 1.333 ms
64  bytes  from  10.0.2.3: seq= 84 ttl= 63  time= 0.327 ms
64  bytes  from  10.0.2.3: seq= 85 ttl= 63  time= 0.319 ms
64  bytes  from  10.0.2.3: seq= 86 ttl= 63  time= 0.325 ms
^C
--- 10.0.2.3 ping statistics ---
87 packets transmitted,  4 packets received,  95% packet loss
round-trip  min/ avg/ max =  0.319/ 0.576/ 1.333 ms
/  # 
/  # ip -o a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu  65536 qdisc noqueue qlen  1000\     link/loopback  00: 00: 00: 00: 00: 00 brd  00: 00: 00: 00: 00: 00
1: lo    inet  127.0.0.1/ 8  scope host lo\       valid_lft forever preferred_lft forever
18: eth0@if19: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu  1500 qdisc noqueue \     link/ether  02:b9: 11:c9: 4c:b1 brd ff:ff:ff:ff:ff:ff
18: eth0    inet  10.0.1.3/ 24  scope  global eth0\       valid_lft forever preferred_lft forever
/  #
 -> 在屬于不同kubernetes 集群的Pod之間ping,工作良好 [root@ip -172-31-9-29 ~] # ./contrail-introspect-cli/ist.py ctr route show -t default-domain:k8s1-default:vn1:vn1.inet.0 

default- domain:k8s1- default:vn1:vn1.inet .0:  2 destinations,  2 routes ( 1 primary,  1 secondary,  0 infeasible)

10.0.1.3/ 32, age:  0: 06: 50.001343, last_modified:  2019-Jul -28  18: 23: 08.243656
    [XMPP ( interface)|ip -172-31-12-82.local] age:  0: 06: 50.005553, localpref:  200, nh:  172.31.12.82, encap: [ 'gre',  'udp'], label:  50,  AS  path:  None

10.0.2.3/ 32, age:  0: 02: 25.188713, last_modified:  2019-Jul -28  18: 27: 33.056286
    [XMPP ( interface)|ip -172-31-4-1.local] age:  0: 02: 25.193517, localpref:  200, nh:  172.31.4.1, encap: [ 'gre',  'udp'], label:  50,  AS  path:  None
[root@ip -172-31-9-29 ~] # 
[root@ip -172-31-9-29 ~] # ./contrail-introspect-cli/ist.py ctr route show -t default-domain:k8s2-default:vn2:vn2.inet.0 

default- domain:k8s2- default:vn2:vn2.inet .0:  2 destinations,  2 routes ( 1 primary,  1 secondary,  0 infeasible)

10.0.1.3/ 32, age:  0: 02: 36.482764, last_modified:  2019-Jul -28  18: 27: 33.055702
    [XMPP ( interface)|ip -172-31-12-82.local] age:  0: 02: 36.489419, localpref:  200, nh:  172.31.12.82, encap: [ 'gre',  'udp'], label:  50,  AS  path:  None

10.0.2.3/ 32, age:  0: 04: 37.126317, last_modified:  2019-Jul -28  18: 25: 32.412149
    [XMPP ( interface)|ip -172-31-4-1.local] age:  0: 04: 37.133912, localpref:  200, nh:  172.31.4.1, encap: [ 'gre',  'udp'], label:  50,  AS  path:  None
[root@ip -172-31-9-29 ~] #
 -> 基于以下的網(wǎng)絡(luò)策略,每一個(gè)kube- master的每一個(gè)虛擬網(wǎng)絡(luò)有路由去其他的kube- master 的Pod (venv) [root@ip -172-31-9-29 ~] # contrail-api-cli --host 172.31.9.29 ls -l virtual-network
virtual-network/f9d06d27 -8fc1 -413d-a6d6-c51c42191ac0   default- domain:k8s2- default:vn2
virtual-network/ 384fb3ef -247b -42e6-a628 -7111fe343f90   default- domain:k8s2- default:k8s2- default-service-network
virtual-network/c3098210 -983b -46bc-b750-d06acfc66414   default- domain:k8s1- default:k8s1- default-pod-network
virtual-network/ 1ff6fdbd-ac2e -4601-b08c -5f7255466312   default- domain: default- project:ip-fabric
virtual-network/d8d95738 -0a00 -457f-b21e -60304859d1f9   default- domain:k8s2- default:k8s2- default-pod-network
virtual-network/ 0c075b76 -4219-4f79-a4f5 -1b4e6729f16e   default- domain:k8s1- default:k8s1- default-service-network
virtual-network/ 985b3b5f -84b7 -4810-a54d-abd09a37f525   default- domain:k8s1- default:vn1
virtual-network/ 23782ea7 -4000-491f-b20d -01c6ab9e2ba8   default- domain: default- project: default- virtual-network
virtual-network/ 90cce352-ef9b -4358-81b3-ef87a9cb63e8   default- domain: default- project:__link_local__
virtual-network/ 0292810c-c511 -4147-89c0 -9fdd571ccce8   default- domain: default- project:dci-network
(venv) [root@ip -172-31-9-29 ~] # 

(venv) [root@ip -172-31-9-29 ~] # contrail-api-cli --host 172.31.9.29 ls -l network-policy
network- policy/ 134d38b2 -79e2-4a3e-a2f7-a3d61ceaf5e2   default- domain:k8s1- default:vn1- to-vn2  < -- route-leak between to kubernetes cluster
network- policy/ 8e5c5c4a -14eb -4fc4 -9b46 -81a5b923bbe0   default- domain:k8s1- default:k8s1- default-ip-fabric-np
network- policy/ 544d5076 -3dff -45a1-bb47 -8aec5e1e5a37   default- domain:k8s1- default:k8s1- default-pod-service-np
network- policy/ 33884d88 -6492-4e0f -934c -080a794ce132   default- domain:k8s2- default:k8s2- default-ip-fabric-np
network- policy/ 232beb43 -2008-4df3 -969f-a4eee653ff46   default- domain:k8s2- default:k8s2- default-pod-service-np
network- policy/a6ee02bd-ad0d -4393-be60 -66da8032237a   default- domain:k8s2- default:k8s2- default-service-np
network- policy/a9cedd67 -127a -40fd -9f44 -78890dc3cfe4   default- domain:k8s1- default:k8s1- default-service-np
(venv) [root@ip -172-31-9-29 ~] #


   OpenStack+OpenStack
我還沒有嘗試將兩個(gè)OpenStack集群添加到一個(gè)Tungsten Fabric controller中,但如果它們不使用相同的租戶名稱,那么應(yīng)該是可行的。    K8s+vCenter
Kubernetes和vCenter的組合可以同時(shí)使用。用例類似于Kubernetes + OpenStack。
   OpenStack+vCenter
OpenStack和vCenter的組合有點(diǎn)奇怪,因?yàn)镺penStack儀表盤可能用作vCenter網(wǎng)絡(luò)的管理UI。 根據(jù)我的嘗試,vcenter-plugin會(huì)檢查所有可用租戶下的所有virtual-network,而不是“vCenter”租戶下的virtual-network,因此,如果創(chuàng)建了virtual-network或其它Neutron組件,也可以在ESXi上的vRouterVM上使用。通過此設(shè)置,vCenter用戶可以自己實(shí)現(xiàn)網(wǎng)絡(luò)功能,就像使用EC2 / VPC一樣。
  • 還可以使用vCenter的權(quán)限功能來實(shí)現(xiàn)VMI和NF的偽多租戶。


  • https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.security.doc/GUID-4B47F690-72E7-4861-A299-9195B9C52E71.html


   vCenter+vCenter
多vCenter是一個(gè)重要話題,因?yàn)関Center具有明確定義的大配置,而多vCenter安裝是解決這些問題的常用方法。 在這種情況下,最簡(jiǎn)單的設(shè)置是在每個(gè)vCenter上配置多個(gè)Tungsten Fabric集群,但此時(shí)很難在兩個(gè)集群之間進(jìn)行vMotion,因?yàn)門ungsten Fabric在vMotion完成后會(huì)創(chuàng)建一個(gè)新的端口,并且可能會(huì)分配不同的固定IP。 因此,我認(rèn)為將多個(gè)vCenter分配給一個(gè)Tungsten Fabric集群,將會(huì)有比較合理的用例。 根據(jù)我的嘗試,在當(dāng)前實(shí)現(xiàn)中,由于vcenter-plugin僅對(duì)某些對(duì)象使用“vCenter”租戶,因此,如果不進(jìn)行代碼修改,就不可能同時(shí)使用兩個(gè)vcenter-plugin。 如果可以按vcenter-plugin和vcenter-manager修改租戶,則可以為每個(gè)vCenter分配一個(gè)單獨(dú)的租戶,然后同時(shí)使用它們,就像同時(shí)使用Kubernetes和OpenStack一樣。 如果這是可行的,還可以在多vCenter的環(huán)境中使用service-insertion和物理交換機(jī)擴(kuò)展。
  • 甚至SRM集成也可能采用這種方式,因?yàn)檎嘉环鸙M將分配一個(gè)新的端口,可以對(duì)其進(jìn)行編輯以分配正確的固定IP。


   K8s+ OpenStack+vCenter
我不知道是否會(huì)使用這樣的配置,因?yàn)镵ubernetes / OpenStack / vCenter具有一些功能重疊,盡管如果設(shè)置正確的話會(huì)工作良好。


  ·END·

Tungsten Fabric入門寶典系列文章——


  1. 首次啟動(dòng)和運(yùn)行指南
  2. TF組件的七種“武器”

  3. 編排器集成
  4. 關(guān)于安裝的那些事(上)
  5. 關(guān)于安裝的那些事(下)
  6. 主流監(jiān)控系統(tǒng)工具的集成
  7. 開始第二天的工作
  8. 8個(gè)典型故障及排查Tips
  9. 關(guān)于集群更新的那些事

  10. 說說L3VPN及EVPN集成

  11. 關(guān)于服務(wù)鏈、BGPaaS及其它

  12. 關(guān)于多集群和多數(shù)據(jù)中心


 Tungsten Fabric 架構(gòu)解析 系列文章 ——

  • 第一篇: TF主要特點(diǎn)和用例

  •   第二篇: TF怎么運(yùn)作

  •    第三篇:詳解vRouter體系結(jié)構(gòu)

  •    第四篇: TF的服務(wù)鏈

  •   第五篇: vRouter的部署選項(xiàng)

  •    第六篇: TF如何收集、分析、部署?

  •    第七篇: TF如何編排

  •   第八篇: TF支持API一覽

  •   第九篇: TF如何連接到物理網(wǎng)絡(luò)

  •   第十篇: TF基于應(yīng)用程序的安全策略




Tungsten Fabric入門寶典丨多編排器用法及配置
TF中文社區(qū)

多云互聯(lián) · 開源開放

Tungsten Fabric入門寶典丨多編排器用法及配置

我知道你“在看”喲~



文章題目:TungstenFabric入門寶典丨多編排器用法及配置-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://www.rwnh.cn/article8/csdjip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷推廣網(wǎng)站制作、網(wǎng)站策劃、網(wǎng)站內(nèi)鏈、手機(jī)網(wǎng)站建設(shè)域名注冊(cè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)
云和县| 微山县| 兴文县| 东阿县| 凤山市| 湖口县| 务川| 洪泽县| 周至县| 临沭县| 深圳市| 泉州市| 常宁市| 衡东县| 公主岭市| 宜春市| 安远县| 葵青区| 泗洪县| 金山区| 巴彦县| 广东省| 温州市| 贡山| 壤塘县| 乌拉特后旗| 乡宁县| 宿迁市| 迁西县| 金门县| 海阳市| 廉江市| 长宁区| 兴义市| 西昌市| 广河县| 扎囊县| 同江市| 上杭县| 汽车| 宝应县|