雲端計算openstack、kvm以及docker和k8s

2022-01-13 10:00:09

雲端計算

概念

雲端計算是一種基於網際網路的計算方式,通過這種方式,共用的軟硬體資源和資訊,可以按照需求提供給計算機和其他網路裝置。使用者不需要了解「雲」中的基礎設施細節,不必具有相應的專業知識,也無需直接控制。雲端計算描述了一種基於網際網路的新的IT服務增加、使用和互動模式。

為什麼需要雲端計算

元計算本質是希望解決資源利用率、計算能力不足和成本的問題

1、有效解決硬體單點故障問題

  • 單點故障會造成服務的中斷,要解決單點故障,需要為每個硬體準備備用硬體,不但增加了硬體購置成本,部署與維護成本也大。

2、按需增加資源
這裡的按需指的是硬體、頻寬等。自己管理伺服器會面另一個很頭疼的問題

  • 增加服務的時候,需要購買伺服器,購買伺服器需要時間;使用雲伺服器的時候,可隨時增加素驅動的結果:需求拉動和技術推動。業務需求的拉動,希望解決業務應用的問題。技術發展的推動,是的雲端計算具備了技術上的可行性。
  • 減少服務的時候,需要把購置的伺服器取下,伺服器會退還給廠商或者閒置下來,而云伺服器不用的時候,直接不續費就好了(比如阿里雲、騰訊雲)
  • 未使用雲伺服器之前,加入我們需要一臺低設定的伺服器執行一個服務,伺服器需要空間存放,每年的耗電量也不小,因此都是使用一臺伺服器來執行多個服務來見底伺服器的購買和維護成本,而使用雲服務之後,需要什麼樣的設定,直接購買即可,對伺服器的指責進行分離,減少各個服務之間的相互影響,效率更高。
  • 再託管雲服務的時候,我們需要購買頻寬,一般在與ISP服務商簽訂合同之前需要確定頻寬大小,當後期發現想改變頻寬大小時,是不被支援的。使用雲服務之後,可以靈活增減頻寬,可以隨時對頻寬進行增減。

3、更好的費用支付方式

  • 一般在IDC託管伺服器的時候,合同都是以年為單位簽訂合同,一次制度一個季度的費用;而是用雲服務,可以支付更短時間內的費用,像阿里雲可以按照月為單位進行支付或者按照使用量購買(比如網路流量支付費用)

4、BGP解決南北線路問題

  • 寬頻市場一直有「南電信北聯通」的問題,所以我們需要考慮南北互通的問題,即路由問題。比如說,南方的聯通使用者,在存取上海電信機房的伺服器的時候,先要繞路到聯通的北京總出口(假設),再回到上海。雖然光纖的速度很快,但是當聯通的總出口出現瓶頸,無法負擔巨大的網路流量時,聯通的使用者存取電信網路的伺服器就會很慢。BGP就解決了南北互通時的繞路問題,優化了線路。

雲端計算服務模式

雲端計算包含三種模式

  • IaaS:基礎設定即服務------消費者使用「基礎計算資源」,如處理能力、儲存空間、網路元件或中介軟體。消費者能掌控作業系統、儲存空間、一部書的應用程式及網路組建(如防火牆、負載平衡器等),但並不掌握雲基礎架構。例如:Amzon AWS、Rackspace。
  • PasS:平臺即服務------消費者使用主機操作應用程式。消費者掌控運作應用程式的環境(也擁有部分掌控權),但並不掌握系統、硬體或運作的網路基礎架構。平臺通常是應用程式基礎架構。例如:Google App Engine。
  • SaaS:軟體即服務------消費者使用應用程式,但並不掌握作業系統、硬體或運作的網路基礎架構。是一種服務觀念的基礎,軟體服務供應商,以租憑的概念提供客戶服務,而非購買,比較常見的模式是提供一組賬號密碼。例如:Microsoft CRM與Salesforce.com。

雲端計算應用

  • 公有云 ------ 公有云服務可通過網路及第三方服務供應者,開放給客戶使用,「公有」一詞並不一定代表「免費」,但也可能代表免費或相當廉價,公有云並不表示使用者資料可供任何人檢視,公有云供應者通常會對使用者實施使用存取控制機制,公有云作為解決方案,既有彈性,又具備成本效益。
  • 私有云 ------ 私有云具備許多公有云環境的特點,例如彈性、適合提供服務,兩者差別在於私有云服務中,資料與程式皆在組織內管理,切於公有云服務不同,不會收到網路頻寬、安全疑慮、法規限制影響;此外,私有云讓供應者及使用者更能掌握雲基礎架構、改善安全與彈性,因為使用者與網路都收到特殊限制。
  • 雲物聯 ----- 「物聯網就是物物相連的網際網路」。這有兩層意思:第一,物聯網的核心和基礎仍然是網際網路,是在網際網路基礎上的延伸和擴充套件的網路;第二,其使用者端延伸和擴充套件到了任何物品與物品之間,進行資訊交換和通訊。
  • 雲端儲存 ------ 雲端儲存是在雲端計算概念上延伸和發展出來的一個新的概念,是指通過叢集應用、網格技術或分散式檔案系統等功能,將網路中大量各種不同型別的儲存裝置通過應用軟體集合起來協同工作,共同對外提供資料儲存和業務存取功能的一個系統。當雲端計算系統運算和處理的核心是大量資料的儲存和管理時,雲端計算系統中就需要設定大量的儲存裝置,那麼雲端計算系統就變成了一個雲端儲存系統,所以雲端儲存是一個以資料儲存和管理為核心的雲端計算系統。
  • 雲遊戲 ------ 雲遊戲是以雲端計算為基礎的遊戲方式,在雲遊戲的執行模式下,所有遊戲都在伺服器執行,並將渲染完畢後的遊戲畫面壓縮後通過網路傳送給使用者。在使用者端,使用者的遊戲裝置不需要任何高階處理器和顯示卡,只需要基本的視訊解壓能力就可以了。
  • 雲安全 ------ 雲安全是以一個從雲端計算演變而來的新名詞。雲安全的策略構想是:使用者越多,每個使用者就越安全,因為如此龐大的使用者群,足以覆蓋網際網路的每個角落,只要某個網站被掛馬或密歐哥新木馬病毒出現,就會立刻被截獲。「雲安全」通過網路的大量使用者端對網路中軟體行為的異常檢測,獲取到互聯中木馬、惡意程式的最新資訊,推播到Server端進行自動分析和處理,再把木馬和病毒的解決方案分發到每一個使用者端。
  • 混合雲 ------ 混合雲結合公有云和私有云,這個模式中,使用者通常將非企業關鍵資訊外包,並在公有云上處理,但同時掌握企業關鍵服務及資料。

OpenStack

簡介

OpenStack是一個由NASA(美國國家航空航天局)和Rackspace合作研發並行起的,以Apache許可證授權的自由軟體和開原始碼專案,旨在為公共及私有云的建設與管理提供軟體的開源專案,幫助服務商和企業內部實現類似於Amazon EC2和S3的雲基礎架構服務(infrastructure as a Service,IaaS)

元件介紹

1、控制檯
服務名:Dashboard
專案名:Horzon
功能:提供一個Web前端控制檯,以此來展示OpenStack的功能
2、計算
服務名:計算(Compute)
專案名:Nova
功能:一套控制起,用於為單個使用者或使用群組管理虛擬機器器範例的整個生命週期,根據喲哦難怪乎需求來提供虛擬服務。負責虛擬機器器建立、開機、關機、掛起、暫停、調整、遷移、重新啟動、銷燬等操作,設定CPU、記憶體等資訊規格。
3、網路
服務名:網路&地址管理(Network)
專案名:Neutron
功能:提供雲端計算的網路虛擬化技術,為OpenStack其他服務提供網路連結服務。為使用者提供介面,可以定義Network、Subnet、Router,設定DHCP、DNS、負載均衡、L3服務,網路支援GRE、VLAN。外掛架構支援許多主流的網路廠家和技術,如OpenvSwitch
4、物件儲存
服務名:物件儲存(Object Storage)
專案名:Swift
功能:一套用於在大規模可延伸系統中通過內建冗餘及高容錯機制實現物件儲存的系統,允許進行儲存或者檢索檔案。可謂Glance提供映象儲存,為Cinder提供卷備份服務。
5、塊儲存
服務名:塊儲存(Block Storage)
專案名:Cinder
功能:為執行時力提供穩定的資料塊儲存服務,他的外掛驅動架構有利於塊裝置的建立和管理,如建立卷、刪除卷。在範例上掛載和解除安裝卷。
6、認證服務
服務名:認證服務(Identity Service)
專案名:Keystone
功能:為OpenStack其他服務提供身份認證、服務規則和服務令牌的功能,管理Domains、Projects、Users、Groups、Roles。
7、映象服務
服務名:映象服務(Image Service)
專案名:Glance
功能:一套虛擬機器器映象查詢及檢索系統,支援多種虛擬機器器映象格式(AKi、AMI、ARI、ISO、QCOW2、Raw、VDI、VHD、VMDK),有建立上傳映象、刪除映象、編輯映象基本資訊的功能。
8、計費服務
服務名:計費(Metering)
專案名:Ceilometer
功能:功能是把OpenStack內部發生的幾乎所有的事件都收集起來,然後為計費和監控以及其他服務提供資料支撐。
9、編排服務
服務名:部署編排(Orchestration)
專案名:Heat
功能:提供了一種通過模板定義的協同部署方式,實現雲基礎設施軟體執行環境(計算、儲存和網路資源)的自動化部署。
10、資料庫服務
服務名:資料庫服務(Database Service)
專案名:Trove
功能:為使用者在OpenStack的環境提供可延伸和可靠的關係和非關聯式資料庫引擎服務。

元件之間的邏輯關係圖
在這裡插入圖片描述
總結

keystone–認證節點提供身份認證;
Glance–映象節點提供映象管理;
Nova–計算節點能讓虛擬機器器執行起來;
Neutron–網路節點可以讓虛擬機器器連網上網;
Horizon–控制節點提供了web端的控制檯;
Cinder–儲存節點可以建立虛擬硬碟;
swift–物件儲存節點能讓檔案直接儲存在雲端
通常這些元件可以組合放到一臺伺服器:
keystone+glance+horizon放置在一臺伺服器稱為控制節點
Nova單獨放置稱為計算節點
Neutron單獨放置稱為網路節點
Cinder和Swift放置在一起稱為儲存節點

KVM

Docker

K8S(kurberntes)