1. 程式人生 > >OpenStack架構知識梳理

OpenStack架構知識梳理

openstack 架構 知識梳理

OpenStack既是一個社區,也是一個項目和一個開源軟件,提供開放源碼軟件,建立公共和私有雲,它提供了一個部署雲的操作平臺或工具集。包括OpenStack計算(代號為Nova),OpenStack對象存儲(代號為Swift),並OpenStack鏡像服務(代號Glance)的集合。

整個OpenStack是由控制節點,計算節點,網絡節點,存儲節點四大部分組成。
其中:

控制節點負責對其余節點的控制,包含虛擬機建立,遷移,網絡分配,存儲分配等等
計算節點負責虛擬機運行
網絡節點負責對外網絡與內網絡之間的通信
存儲節點負責對虛擬機的額外存儲管理等等

控制節點架構:

控制節點包括以下服務
? ?管理支持服務
? ?基礎管理服務
? ?擴展管理服務

1)管理支持服務包含MySQL與Qpid兩個服務
MySQL:數據庫作為基礎/擴展服務產生的數據存放的地方
Qpid:消息代理(也稱消息中間件)為其他各種服務之間提供了統一的消息通信服務
?
2)基礎管理服務包含Keystone,Glance,Nova,Neutron,Horizon五個服務
Keystone:認證管理服務,提供了其余所有組件的認證信息/令牌的管理,創建,修改等等,使用MySQL作為統一的數據庫
Glance:鏡像管理服務,提供了對虛擬機部署的時候所能提供的鏡像的管理,包含鏡像的導入,格式,以及制作相應的模板
Nova:計算管理服務,提供了對計算節點的Nova的管理,使用Nova-API進行通信

Neutron:網絡管理服務,提供了對網絡節點的網絡拓撲管理,同時提供Neutron在Horizon的管理面板
Horizon:控制臺服務,提供了以Web的形式對所有節點的所有服務的管理,通常把該服務稱為DashBoard
?
3)擴展管理服務包含Cinder,Swift,Trove,Heat,Centimeter五個服務
Cinder:提供管理存儲節點的Cinder相關,同時提供Cinder在Horizon中的管理面板
Swift:提供管理存儲節點的Swift相關,同時提供Swift在Horizon中的管理面板
Trove:提供管理數據庫節點的Trove相關,同時提供Trove在Horizon中的管理面板
Heat:提供了基於模板來實現雲環境中資源的初始化,依賴關系處理,部署等基本操作,也可以解決自動收縮,負載均衡等高級特性。
Centimeter:提供對物理資源以及虛擬資源的監控,並記錄這些數據,對該數據進行分析,在一定條件下觸發相應動作
控制節點一般來說只需要一個網絡端口用於通信/管理各個節點

網絡節點架構
網絡節點僅包含Neutron服務
Neutron:負責管理私有網段與公有網段的通信,以及管理虛擬機網絡之間的通信/拓撲,管理虛擬機之上的防火等等
網絡節點包含三個網絡端口
eth0:用於與控制節點進行通信
eth1:用於與除了控制節點之外的計算/存儲節點之間的通信
eth2:用於外部的虛擬機與相應網絡之間的通信
計算節點架構
計算節點包含Nova,Neutron,Telemeter三個服務

?
1)基礎服務
Nova:提供虛擬機的創建,運行,遷移,快照等各種圍繞虛擬機的服務,並提供API與控制節點對接,由控制節點下發任務
Neutron:提供計算節點與網絡節點之間的通信服務
?
2)擴展服務
Telmeter:提供計算節點的監控代理,將虛擬機的情況反饋給控制節點,是Centimeter的代理服務
計算節點包含最少兩個網絡端口
eth0:與控制節點進行通信,受控制節點統一調配
eth1:與網絡節點,存儲節點進行通信

存儲節點架構
存儲節點包含Cinder,Swift等服務

Cinder:塊存儲服務,提供相應的塊存儲,簡單來說,就是虛擬出一塊磁盤,可以掛載到相應的虛擬機之上,不受文件系統等因素影響,對虛擬機來說,這個操作就像是新加了一塊硬盤,可以完成對磁盤的任何操作,包括掛載,卸載,格式化,轉換文件系統等等操作,大多應用於虛擬機空間不足的情況下的空間擴容等等
Swift:對象存儲服務,提供相應的對象存儲,簡單來說,就是虛擬出一塊磁盤空間,可以在這個空間當中存放文件,也僅僅只能存放文件,不能進行格式化,轉換文件系統,大多應用於雲磁盤/文件

存儲節點包含最少兩個網絡接口
eth0:與控制節點進行通信,接受控制節點任務,受控制節點統一調配
eth1:與計算/網絡節點進行通信,完成控制節點下發的各類任務

OpenStack架構知識梳理