欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Openstack 網(wǎng)絡(luò)知識(shí)資料詳細(xì)介紹及總結(jié)

 更新時(shí)間:2016年12月04日 14:41:27   作者:Yakir Yang  
這篇文章主要介紹了Openstack 網(wǎng)絡(luò)知識(shí)資料詳細(xì)介紹及總結(jié)的相關(guān)資料,在開發(fā)云計(jì)算的時(shí)候 Openstack 很多公司都在用,這里就整理下網(wǎng)絡(luò)知識(shí),需要的朋友可以參考下

Openstack 網(wǎng)絡(luò)知識(shí)資料總結(jié):

Openstack 概念

我剛聽說要去做 openstack 開發(fā)的時(shí)候,蠻激動(dòng)的啊。雖然我不知道 openstack 是什么東西,但是我知道這個(gè)東西和云計(jì)算有關(guān)。云計(jì)算這東西,聽著就高大上,各大互聯(lián)網(wǎng)公司都有投人進(jìn)去搞,所以大方向上是必須肯定的。于是我按捺不住了,想在自己的主機(jī)上部署 openstack,來體驗(yàn)下這個(gè)是什么東西。經(jīng)過一頓折騰之后,終于在虛擬機(jī)里面用 devstack 把 openstack 給部署出來了(部署過程中,最坑的就是國(guó)內(nèi)的防火墻)。

部署的過程,其實(shí)就是把一堆 Python 包安裝到主機(jī)系統(tǒng)的過程。openstack 有一個(gè) python 包叫做 Dashboard,這個(gè)東西提供了一個(gè) Web 界面,從那里我真正體驗(yàn)到了 openstack 是個(gè)啥。在 Dashboard 上創(chuàng)建一臺(tái)虛擬機(jī)的過程蠻有趣的,這個(gè)過程涉及到的步驟,很多都和現(xiàn)實(shí)中安裝電腦很像。

Openstack Real Life
創(chuàng)建 ubuntu 鏡像 使用 Ultraiso 刻錄好一個(gè) ubuntu 系統(tǒng) 的 U 盤
創(chuàng)建 provider 網(wǎng)絡(luò) 叫電信的來給家里開通網(wǎng)絡(luò)
創(chuàng)建 Instance 主機(jī) 買了一臺(tái)主機(jī),并用剛剛的 U 盤給它裝好 Ubuntu 系統(tǒng)
啟動(dòng) Instance 主機(jī) 把電信的網(wǎng)口插到主機(jī)網(wǎng)卡上

我在 Dashboard 創(chuàng)建了兩臺(tái) Instance 主機(jī),兩臺(tái)主機(jī)跑的好好的。就目前來說,這個(gè)效果和 VMware Workstation 軟件就很像了,可以在一臺(tái)物理機(jī)上,跑多虛擬主機(jī)。只不過 VMware Workstation 軟件面向的是單臺(tái)物理機(jī),而 openstack 卻可以 面對(duì)物理機(jī)集群 進(jìn)行管理和虛擬化。當(dāng)成百上千的物理機(jī)被 openstack 管理著,而終端使用用戶只需要面對(duì)唯一的一個(gè) Dashboard 界面,這個(gè)時(shí)候私有云的概念就體現(xiàn)出來了。

有了感性的認(rèn)識(shí)后,再去 openstack 官網(wǎng)是什么定義自己的:

Open source software for creating private and public clouds.

OpenStack software controls large pools of compute, storage, and networking resources throughout a datacenter, managed through a dashboard or via the OpenStack API. OpenStack works with popular enterprise and open source technologies making it ideal for heterogeneous infrastructure.

Hundreds of the world's largest brands rely on OpenStack to run their businesses every day, reducing costs and helping them move faster. OpenStack has a strong ecosystem, and users seeking commercial support can choose from different OpenStack-powered products and services in the Marketplace.

The software is built by a thriving community of developers, in collaboration with users, and is designed in the open at our Summits.

OpenStack 軟件控制整個(gè)數(shù)據(jù)中心的大型計(jì)算,存儲(chǔ)和網(wǎng)絡(luò)資源,用戶可以通過 Dashboard 或 OpenStack API 進(jìn)行管理。就我理解,Openstack 更像是一個(gè)操作系統(tǒng),一個(gè)強(qiáng)大的云計(jì)算操作系統(tǒng)。

Openstack 網(wǎng)絡(luò)概念

我前面通過 Dashboard 創(chuàng)建的兩個(gè) Instance 虛擬機(jī),它們之間是可以互相 ping 通的,因?yàn)樗鼈儍墒翘幱谕粋€(gè)二層網(wǎng)絡(luò)的,都是直接鏈接到 Provider 網(wǎng)絡(luò)。

| VM1 |       | VM2 |
|-------|       |-------|
  |           |
  | Eth(172.24.4.2)   | Eth(172.24.4.3)
____|______________________|___________
- - - - - - - - - - - - - - - - - - - - Provider (172.24.4.0/24)

上面的拓?fù)淦鋵?shí)已經(jīng)涵蓋了 openstack 中比較核心的三個(gè)網(wǎng)絡(luò)概念:Network,Subnet, Port 。我們把這三個(gè)概念和上面的網(wǎng)絡(luò)拓?fù)溆成湟幌拢?/p>

  1. “Provider” 這個(gè)名字,對(duì)應(yīng)的就是 openstack 的 Network
  2. “172.24.4.0/24” 這個(gè) IP 地址池,對(duì)應(yīng)的就是 openstack 的 Subnet
  3. “Eth(172.24.4.2)” 這個(gè) Instance 網(wǎng)卡,對(duì)應(yīng)的就是 openstack 的 Port

其實(shí)我們還可以讓 VM1 和 VM2 不在一個(gè)二層網(wǎng)絡(luò)上,只不過這個(gè)時(shí)候,就需要引入 openstack 網(wǎng)絡(luò)的另一核心概念 Router。 

 | VM2 |
            |-------|
              |
              | Eth(10.0.0.2)
           _______|_______
           - - - - - - - - Private (10.0.0.0/24)
              |
              | If(10.0.0.1)
              |
 | VM1 |       | Router1 |
 |-------|       |----------|
  |            |
  | Eth(172.24.4.2)    | Gw(172.24.4.3)
____|_______________________|__________
- - - - - - - - - - - - - - - - - - - - Provider (172.24.4.0/24)

這樣一來 VM1 和 VM2 就不在同一個(gè)二層網(wǎng)絡(luò)了,兩個(gè) Instance 虛擬機(jī)的網(wǎng)絡(luò)環(huán)境也就實(shí)現(xiàn)了隔離。從拓?fù)渖峡梢钥闯?,這里多出了三樣新部件:

  1. Router: 也就是拓?fù)渲械?Router1
  2. Router-Gateway: 也就是拓?fù)渲械?Gw(172.24.4.3),主要是為了 Router1 后面的虛擬機(jī)訪問 Provider 網(wǎng)絡(luò)。
  3. Router-Interface: 也就是拓?fù)渲械?If(10.0.0.1),讓 Router1 作為 Private 網(wǎng)絡(luò)的 L3 網(wǎng)關(guān)。

上面兩個(gè)網(wǎng)絡(luò)拓?fù)?,就覆蓋 openstack 網(wǎng)絡(luò)的核心概念了,當(dāng)然僅僅有以上四個(gè)核心概念,是沒辦法適應(yīng)實(shí)際 Data Center 復(fù)雜的網(wǎng)絡(luò)拓?fù)湫枨蟮模瑸榇擞辛似渌摂M網(wǎng)絡(luò)概念如:FloatingIP, SecurityGroup, ServiceFunctionChain 等。

Openstack 網(wǎng)絡(luò)組件介紹

Openstack 包含了非常多的子項(xiàng)目,目前幾個(gè)核心的子項(xiàng)目如下:

  • Nova: 提供 compute 計(jì)算能力(虛擬機(jī))
  • Neutron: 提供 networking 網(wǎng)絡(luò)連接能力
  • Glance: 提供 image 鏡像存儲(chǔ)能力
  • Keystone: 提供 identity 身份認(rèn)證能力
  • Cinder / Swift: 提供 storage 存儲(chǔ)能力

網(wǎng)絡(luò)虛擬化是塊發(fā)展比較快的領(lǐng)域,到目前 Neutron 已經(jīng)很好的支持 L2, L3, HA, SecurityGroup, LBaas, FWaas, VPNaas, DVR 等等。只不過我看過一些文章,里面說到 Neutron 的發(fā)展方向應(yīng)該是,專注于 API 標(biāo)準(zhǔn)的定制。讓各個(gè)網(wǎng)絡(luò)功能從 Neutron 中剝離出去,讓各個(gè)網(wǎng)絡(luò)設(shè)備商的 SDN Controller Plugin 去聚焦和實(shí)現(xiàn)這部分功能。Neutron 需要設(shè)計(jì)出一組良好的北向接口規(guī)范,讓自己成為一個(gè)純粹的 API Server(這些觀點(diǎn)的正確性,我也不確定,只不過換個(gè)高度看事情,未嘗不是件好事)。

Neutron 里面有兩個(gè)框架比較有趣, ML2 框架和 Extension Plugin框架 。ML2 是對(duì) L2 網(wǎng)絡(luò)功能的一次抽象,這讓不同的 L2 虛擬化技術(shù)(LinuxBridge, OpenvSwitch…)只需統(tǒng)一對(duì)接到 ML2 即可。而 Extension Plugin 為一些在開發(fā)中的 SDN Controler or Network Function Virtual,能夠方便的對(duì)接到 Neutron 中,進(jìn)行部署測(cè)試,待其孵化成熟之后,再合并到 Neutron 項(xiàng)目中。我在主機(jī)上部署的 Openstack (Neutron + OVN),其實(shí)就是充分利用了 Neutron ML2 和 ExtensionPlugin 才得以實(shí)現(xiàn),從這點(diǎn)上也看出了 Neutron 的靈活性非常強(qiáng)大。

上面簡(jiǎn)單介紹了 Neutron,現(xiàn)在說說 OVN (Open Virtual Network for OpenvSwitch),它是 OpenvSwitch 團(tuán)隊(duì)自己孵化 OVS 的子項(xiàng)目,目的是為了讓 OVS 更加友好的支持虛擬網(wǎng)絡(luò),容我引用 IBM 的一篇博文的精彩觀點(diǎn):

Pick up from 如何借助 OVN 來提高 OVS 在云計(jì)算環(huán)境中的性能

眾所周知,OpenvSwitch 以其豐富的功能和不錯(cuò)的性能,已經(jīng)成為 Openstack 部署中最受歡迎的虛擬交換機(jī)。由于 Openstack Neutron 的架構(gòu)引入了一些性能問題,比如 neutron-server 要與非常多的 agent 通信,RPC 就是一個(gè)性能瓶頸,還有 neutron 里面用到非常多的 namespace,namespace 資源有限而且系統(tǒng)開銷比較大,這也是一個(gè)性能瓶頸。OVS 社區(qū)覺得從長(zhǎng)遠(yuǎn)來看,Neutron 應(yīng)該讓一個(gè)其它的項(xiàng)目來做虛擬網(wǎng)絡(luò)的控制平面,Neutron 只需要提供 API 的處理,于是 OVS 社區(qū)推出了 OVN(Open Virtual Network)這個(gè)項(xiàng)目,OVN 是 OVS 的控制平面,它給 OVS 增加了對(duì)虛擬網(wǎng)絡(luò)的原生支持,大大提高了 OVS 在實(shí)際應(yīng)用環(huán)境中的性能和規(guī)模。

如果想用 OVN 和 Neutron 進(jìn)行集成使用,還需要 Networking-ovn Plugin 的幫助。Networking-ovn 是個(gè)比較簡(jiǎn)單的 Plugin,它的工作是將 Neutron 中對(duì)虛擬網(wǎng)絡(luò)的定義,翻譯到 OVN 對(duì)虛擬網(wǎng)絡(luò)的定義中去。它的簡(jiǎn)單,來源于優(yōu)美的 Neutron API 接口設(shè)計(jì),和精簡(jiǎn)的 OVN 北向數(shù)據(jù)庫(kù)表設(shè)計(jì)。

|   OPENSTACK   |
|           |
|   (neutron)   | API Server
-----------------------
     | |
     v v
---> networing-ovn <--- Service and Plugin
     | |
     v v
   |----------|
   |  OVN  |    SDN Controller for OpenvSwitch
   |----------|
     |
     v
----------------------
|  OpenvSwitch   |  DataPlan support for Virtual Networking Function
|          |

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論