雲計算介紹


一 為何選擇雲計算/雲計算之前遇到的問題

一、有效解決硬件單點故障問題

    單點故障是指某個硬件的故障造成網站某個服務的中斷。要真正解決這個問題,需要為每個硬件准備冗余,這不僅大大增加了硬件購置成本,而且部署與維護成本也不容小視。

    而雲計算平台是基於服務器集群,從設計之初就考慮了單點故障問題,並在建設時有效地解決了這個問題。如果一家雲服務商出現單點故障問題,就如同存在銀行的錢丟了。

二、按需增/減硬件資源

    自己托管服務器,增/減硬件一直是頭疼的問題。

    1. 增加服務器的時候,購買服務器需要時間,而且這個時間自己無法控制。而使用雲服務器,隨時可以增加服務器——垂手可得。

    2. 減服務器只能從機房拉回辦公室,無法再把服務器退給廠商,購置服務器的成本就浪費了。而使用雲服務器,如果下個月不用,不續費就行了(針對阿里雲按月購買的情況)——想用就用,想扔就扔。

    3. 不能按需增加滿足基本需求的服務器配置。假如我們現在需要一台低配置的服務器用Linux跑緩存服務,如果為之單獨購買一台便宜的低配置的服務器很不合算,因為這台服務器僅僅一年的電費就至少要3000元左右。所以只能盡量減少服務器數量,提高單台服務器的配置,在讓一台服務器跑更多東西。而使用雲服務器,需要什么樣的配置就買什么樣的配置,讓各個服務器的職責更單一,互相之間的影響更小——職責分明,效率更高。

三、按需增/減帶寬

    帶寬是主要成本,托管服務器時,與ISP服務商簽一年合同之前就要確定帶寬。用了一段時間之后,你發現帶寬買多了,想減一些是不允許的。中途要臨時增加帶寬一段時間也是不行的,要買就買一年(這是根據我們接觸過的ISP服務商)。所以,一般都會多買一些帶寬,留一些余量。

    使用雲服務器可以靈活地增減帶寬,不會浪費帶寬,即使買少了也不用擔心,隨時可以增加。雖然各個雲服務商會有一定的限制,比如在阿里雲一次至少要購買1個月的帶寬,但比自己托管服務器靈活很多,同樣的帶寬條件,會節省不少成本,尤其是帶寬需求在一年中變化比較大的網站。

四、更有吸引力的費用支付方式

    在IDC機房托管服務器一般是簽一年合同,一次支付一個季度的費用。

    而使用雲服務,一次可以支付更短時間的費用,比如阿里雲可以一次只支付一個月的費用,節約了流動資金。

    從總體上考慮,差不多的成本,卻擁有更多的內存、更多的CPU、更多的硬盤空間、更優質的帶寬線路,更重要的是可以隨時按需擴展計算資源。

五、BGP線路解決南北互通問題

    南北互通問題是南方電信與北方聯通線路之間的互通問題,這個問題困擾我們多年,之前用過雙線機房,解決的也不是很好。目前只有BGP線路才能有效解決這個問題,而擁有真正的BGP線路的機房不是很多,成本也非常高。而我准備使用的阿里雲用的就是BGP線路,這也是吸引我們的主要地方之一。

    究竟什么是南北互通問題?基於我們的理解簡體描述一下,不對之處歡迎指出。南北互通問題實際就是路由問題。假設我們的服務器放在上海電信的機房,上海一位聯通的用戶訪問我們的服務器,要先繞到聯通的北京總出口(假設總出口在北京),然后再繞回上海。實際上這位聯通用戶可以通過上海的線路直接到達我們的服務器,不用繞這么遠,但上海電信的機房無法告知聯通的路由器走近路過來,只能按照聯通路由器設定好的路由走。本來即使走北京繞一下也沒有大的影響,畢竟是光的速度,但是由於大多數聯通的用戶訪問電信網絡都這么繞着走,聯通的總出口成為了瓶頸,總出口流量太大時,聯通的用戶訪問電信的網絡速度就會慢。BGP線路也沒什么神奇之處,只是它能決定走什么路由過來,不繞遠路,問題自然解決了。它有這樣的特權,就不僅能解決南北互通的問題,而且能解決其他網絡的互通問題,比如教育網。因為有權限決定路由,就可以優化路由,哪條路堵,我就換條路。

二:什么是雲計算(資源和服務的交互方式)

一、概念分解:    

        雲:雲計算中的雲,代表循環利用的意思(雲多了變成雨,落到地面,雲減少,水蒸發到空中,雲增加)。

       計算:雲計算中的計算,代表計算資源,涵蓋虛機、存儲、網絡等。

       雲計算:代表計算資源向雲水循環一樣,按需分配,循環利用。

       附:企業數據中心部署在雲計算分布式平台上,類似於從原來單台發電機轉向電廠集中供電模式,它意味着訪問計算機和存儲系統也可以作為一種商品流通,就像煤氣、水電一樣,取用方便,費用低廉,只不過它是通過互聯網傳輸的,雲就是互聯網的一種比喻

二、雲計算分類:

        狹義:IT基礎設施的交互和使用模式,通過網絡以按需,易擴展的方式獲取資源

        廣義:服務(IT基礎設施、軟件等)的交互和使用模式,通過網絡以按需、易擴展的方式獲取資源。

三:雲服務模式

一、IaaS:基礎設施即服務

        用戶通過網絡獲取虛機、存儲、網絡,然后用戶根據自己的需求操作獲取的資源。  典型應用:亞馬遜AWS等

二、PaaS:平台即服務

        將軟件研發平台作為一種服務, 如Eclipse/Java編程平台,服務商提供編程接口/運行平台等。典型應用:Google AppEngine、Force.com、微軟Azure等 

三、SaaS:軟件即服務  

        將軟件作為一種服務通過網絡提供給用戶,如web的電子郵件、HR系統、訂單管理系統、客戶關系系統等。用戶無需購買軟件,而是向提供商租用基於web的軟件,來管理企業經營活動。典型應用:Google Doc、Saleforce.com、Oracle CRM On Demand、Office Live Workspace等

四:雲應用形式

一.私有雲

        將基礎設施與軟硬件資源構建於防火牆內,基於iaas構建私有雲平台供企業內部使用,開源組件有:openstack(最為出色),cloudstack等

二.雲存儲

        雲存儲系統是一個以數據存儲和管理為核心的雲計算系統

三.雲游戲

        游戲運行雲平台服務端,雲平台將游戲畫面解壓縮后傳給用戶,用戶端無需高配置處理器和顯卡,只需要基本的視頻解壓縮能力即可。

四.雲物聯

        基於雲平台實現物物相連的互聯網。

五.雲安全

        通過網狀的大量客戶端檢測網絡中軟件的異常,獲取木馬,惡意程序的最新信息,推送到雲平台服務端自動分析和處理,再把解決方案發送給每一個客戶端。雲平台使用者越多,越安全。

六.公有雲

        雲平台對外開放,主要以Iaas和Paas為主,較為成熟的是Iaas,如阿里雲,騰訊雲,青雲,ucloud,首都在線等

七.混合雲  

        公有雲和私有雲的結合,即對企業內部又對企業外部,例如AWS

五:傳統應用與雲感知應用

一、傳統應用

    傳統應用像養寵物,寵物病了要細心呵護

    每個應用都是獨特的、專門的

    專門的服務器、硬件和軟件保證可靠性

    資源不夠,增加cpu、內存、磁盤

    專門的技術支持

二、雲感知應用

    雲感知應用像養牛,牛生病了,你需要一頭新的牛

    應用跑在一個或多個虛擬機里

    資源不夠,增加新的虛擬機

    應用掛起,重啟或創建新的虛擬機

六:openstack與及其相關組件介紹

一、openstack由來

            openstack最早由美國國家航空航天局NASA研發的Nova和Rackspace研發的swift組成。后來以apache許可證授權,旨在為公共及私有雲平台建設。openstack主要用來為企業內部實現類似於Amazon EC2和S3的雲基礎架構服務(Iaas).每6個月更新一次,基本與ubuntu同步,命名是以A-Z作為首字母來的。

二、openstack項目與組件(服務名是項目名的別名)

    核心項目3個

    1.控制台

    服務名:Dashboard

    項目名:Horizon

    功能:web方式管理雲平台,建雲主機,分配網絡,配安全組,加雲盤

    

    2.計算

    服務名:計算

    項目名:Nova

    功能:負責響應虛擬機創建請求、調度、銷毀雲主機

    

    3.網絡

    服務名:網絡

    項目名:Neutron

    功能:實現SDN(軟件定義網絡),提供一整套API,用戶可以基於該API實現自己定義專屬網絡,不同廠商可以基於此API提供自己的產品實現

        

    存儲項目2個

    1.對象存儲

    服務名:對象存儲

    項目名:Swift

    功能:REST風格的接口和扁平的數據組織結構。RESTFUL HTTP API來保存和訪問任意非結構化數據,ring環的方式實現數據自動復制和高度可以擴展架構,保證數據的高度容錯和可靠性

    

    2.塊存儲

    服務名:塊存儲

    項目名:Cinder

    功能:提供持久化塊存儲,即為雲主機提供附加雲盤。 

文件存儲
對用戶來說是一個文件夾
特點:
1.不能格式化,
2.基本操作單位是文件
3.支持基於postfix標准的文件處理,打開,增刪改查


塊存儲
對用戶來說就是一塊裸盤
特點:
1.可以格式化
2.基本操作單位是block


對象存儲
key:value
http://1.1.1.1/api:object
http://pan.baidu.com/s/1slTMqT3:ceph-vmware.png
文件存儲、塊存儲、對象存儲

 

    共享服務項目3個

    1.認證服務

    服務名:認證服務

    項目名:Keystone

    功能:為訪問openstack各組件提供認證和授權功能,認證通過后,提供一個服務列表(存放你有權訪問的服務),可以通過該列表訪問各個組件。

    

    2.鏡像服務

    服務名:鏡像服務

    項目名:Glance

    功能:為雲主機安裝操作系統提供不同的鏡像選擇

 

    3.計費服務

    服務名:計費服務

    項目名:Ceilometer

    功能:收集雲平台資源使用數據,用來計費或者性能監控

 

    高層服務項目1個

    1.編排服務

    服務名:編排服務

    項目名:Heat

    功能:自動化部署應用,自動化管理應用的整個生命周期.主要用於Paas 

三、openstack各組件詳解及運行流程

各組件邏輯關系圖:

 

openstack新建雲主機流程圖:

虛擬機啟動過程如下:

  1. 界面或命令行通過RESTful API向keystone獲取認證信息。

  2. keystone通過用戶請求認證信息,並生成auth-token返回給對應的認證請求。

  3. 界面或命令行通過RESTful API向nova-api發送一個boot instance的請求(攜帶auth-token)。

  4. nova-api接受請求后向keystone發送認證請求,查看token是否為有效用戶和token。

  5. keystone驗證token是否有效,如有效則返回有效的認證和對應的角色(注:有些操作需要有角色權限才能操作)。

  6. 通過認證后nova-api和數據庫通訊。

  7. 初始化新建虛擬機的數據庫記錄。

  8. nova-api通過rpc.call向nova-scheduler請求是否有創建虛擬機的資源(Host ID)。

  9. nova-scheduler進程偵聽消息隊列,獲取nova-api的請求。

  10. nova-scheduler通過查詢nova數據庫中計算資源的情況,並通過調度算法計算符合虛擬機創建需要的主機。

  11. 對於有符合虛擬機創建的主機,nova-scheduler更新數據庫中虛擬機對應的物理主機信息。

  12. nova-scheduler通過rpc.cast向nova-compute發送對應的創建虛擬機請求的消息。

  13. nova-compute會從對應的消息隊列中獲取創建虛擬機請求的消息。

  14. nova-compute通過rpc.call向nova-conductor請求獲取虛擬機消息。(Flavor)

  15. nova-conductor從消息隊隊列中拿到nova-compute請求消息。

  16. nova-conductor根據消息查詢虛擬機對應的信息。

  17. nova-conductor從數據庫中獲得虛擬機對應信息。

  18. nova-conductor把虛擬機信息通過消息的方式發送到消息隊列中。

  19. nova-compute從對應的消息隊列中獲取虛擬機信息消息。

  20. nova-compute通過keystone的RESTfull API拿到認證的token,並通過HTTP請求glance-api獲取創建虛擬機所需要鏡像。

  21. glance-api向keystone認證token是否有效,並返回驗證結果。

  22. token驗證通過,nova-compute獲得虛擬機鏡像信息(URL)。

  23. nova-compute通過keystone的RESTfull API拿到認證k的token,並通過HTTP請求neutron-server獲取創建虛擬機所需要的網絡信息。

  24. neutron-server向keystone認證token是否有效,並返回驗證結果。

  25. token驗證通過,nova-compute獲得虛擬機網絡信息。

  26. nova-compute通過keystone的RESTfull API拿到認證的token,並通過HTTP請求cinder-api獲取創建虛擬機所需要的持久化存儲信息。

  27. cinder-api向keystone認證token是否有效,並返回驗證結果。

  28. token驗證通過,nova-compute獲得虛擬機持久化存儲信息。

  29. nova-compute根據instance的信息調用配置的虛擬化驅動來創建虛擬機。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM