天天看點

阿裡雲數字新基建系列——混合雲架構(第1章-2)

1.2 雲計算概述

在介紹雲計算之前,我們需要問如下幾個問題:

    • 雲計算技術為何出現和存在?
    • 雲計算短期發展方向是什麼?
    • 雲計算未來是否會存在?如果存在的話會是什麼樣子?

要回答這些問題,我們得回顧一下計算機發展曆程,看看驅動計算機技術

發展的動因究竟是什麼。

1.2.1 計算機簡史

1.概述

計算機技術發展經曆了一個漫長的過程,是人類思想穿透曆史和未來的迷

霧,擺脫現實實體世界的桎梏,開啟另一個全新虛拟世界的發展過程,是人類

思維的偉大勝利。

根據制造材料的不同,可以将計算機發展分為如下幾個階段。

第一階段:原型計算機。

第二階段:電子管計算機。

第三階段:半導體計算機。

第四階段:內建電路計算機。

從這幾個階段的一些關鍵事件可以看出,計算機技術發展是漸進的過程,在這個過程中,從機械電腦的發明、布爾代數的出現,到圖靈機模型、馮·諾依曼體系結構的提出,逐漸奠定了計算機的理論基礎,後面的電子管、半導體、內建電路等技術的出現使計算機的實體基礎越來越成熟,直至摩爾定律的出現,大大推進了計算機技術的發展,讓人類快速邁入了資訊時代。

2. 關鍵事件

時至今日,在計算機發展史上有兩個關鍵事件仍然在深刻影響計算機性能的發展。

(1)馮·諾依曼體系結構

1945 年馮·諾依曼提出了著名的馮·諾依曼體系結構,如圖1-1 所示。該結構明确了新機器由5 部分組成:運算器、邏輯控制裝置、存儲器、輸入裝置和輸出裝置。

阿裡雲數字新基建系列——混合雲架構(第1章-2)

圖1-1 馮·諾依曼體系結構

這種結構将計算單元和資料存儲單元分離,通過将程式和資料一起存儲在記憶體,并通過控制器來控制指令的加載和執行。這種體系結構為現代計算機結構奠定了基礎,直到現在,計算機的設計仍然遵從該體系結構。

(2)摩爾定律

1965 年戈登·摩爾提出了日後影響業界半個多世紀的摩爾定律,至今它仍在推動計算機行業的發展。

接下來詳細分析這兩個事件是如何影響計算機性能的演進的。

1.2.2 計算機性能的決定因素

現代計算機本質上是按照馮·諾依曼體系結構處理資料的,在這種結構設計中負責計算的處理器和負責存儲資料的存儲器是分離的。CPU 的發展讓計算性能提高得很快,但CPU 速度跟記憶體速度之間存在幾個數量級的差别,而且由于實體性質限制,這種速度差别不可能彌合。這意味着有如下性能定律:

    • 隻有計算集中才能提升性能。
    • 距離是計算的敵人,無論什麼尺寸規模(CPU 和記憶體之間、記憶體和外設之間、計算機之間即各個實體尺度),相對計算性能來說,資料移動成本都很高,距離在很大程度上決定了計算性能。
    • 計算機性能的沖突展現在高速CPU和低速記憶體及外設之間的沖突上。

需要注意的是,這些定律不僅适用于單台計算機,而且适用于由很多計算機組成的叢集。

毫無疑問,CPU 決定了計算機性能的上限。下面我們從CPU 的各個技術層面看看有哪些技術決定了其性能。

摩爾定律指出:當價格不變時,內建電路可容納的半導體數約每隔18 個月便會增加1 倍,性能也增加1 倍。

我們看看是哪些技術在提升計算機性能,具體有如下幾個因素。

    • 內建電路的規模不斷擴大,這是工藝制程水準的提高,在微觀上縮短了半導體器件的通信距離,提升了性能,降低了能耗。
    • 頻率也決定了CPU 的性能,時鐘頻率從最初隻有幾MHz 提高到目前最高達3.XGHz,提高時鐘頻率讓機關指令執行的時間縮短。
    • 總線技術革新大幅提高了資料傳輸效率,這表現在兩個方面:

- 南北總線結構可以分離快速裝置和慢速裝置,提高總線運作效率。

- 增加總線帶寬可以增加一次通路的資料量。

    • CPU 内的流水線技術有效提升了性能,這種技術可以在一個時鐘周期内同時執行多個指令。
    • CPU Cache 的大量運用提高了資料傳輸效率。由于程式運作的局部性原理,Cache 能提高程式/ 資料的命中率,進而避免了從慢速的RAM 加載資料。
    • 多核的出現,通過水準擴充的方式增加了 CPU 的算力,這意味着通過CPU 頻率提升性能方式的終結。
    • 虛拟化技術在提升性能的同時也帶動了雲計算的發展。

綜上可以看出,計算機性能是從如下三個方面來提升的:

    • 工藝水準,具體表現為摩爾定律驅動的半導體制程水準的提高。
    • 垂直擴充(scale-up),通過提高 CPU 内的各種技術點來提升單個 CPU核心的性能。
    • 水準擴充(scale-out),通過多核堆疊、虛拟化技術來提升性能。

當CPU 發展到一定階段後,單純通過工藝水準來提高其性能就會遇到瓶頸,工藝制程水準的提高讓半導體之間連接配接的實體距離變短,的确能提升整體性能,并且這種性能提升方式在內建電路發展早期非常有效,但在目前階段工藝水準的改進對CPU 性能提升就不那麼明顯了。随着內建度的提高,工藝制程水準的提高會越來越難,直至最終到達半導體尺寸的極限。

此外,通過CPU 内的技術改進所帶來的性能提升也幾乎走到了盡頭,是以水準擴充就成了性能最後的救星了,這種方式是通過增加CPU 内的核心數和通過虛拟化技術虛拟多個CPU 來提升性能的。這條路到最後也很難走通,因為超過8 核後,多核對程式的加速功能就會逐漸減弱(對大部分非并行化運作的程式而言)。

總結起來就是,如果把多核CPU 的計算機看作一個計算節點,則意味着單個計算節點的性能是有上限的,而且從成本效益角度來看,這個上限已經到來。但存在的問題是,數智時代對計算性能的需求日益增長,同時基于前面提到的性能定律:距離是計算的敵人,資料離計算單元越近性能會越好。是以,将海量的、有性能容量上限的單個計算節點集中互聯在一起對外提供計算服務模式就應運而生了。

1.2.3 雲計算發展趨勢

1. 雲計算簡史

從2006 年谷歌提出雲端計算的概念開始,雲計算至今已經走過了15 年發展曆程,在傳統業務快速雲化的需求推動下,雲計算從最開始的虛拟化開始普及,以VMware ESXi、Microsoft HyperV 及開源的Xen、KVM 為主的虛拟化平台,通過vSwitch 将實體網絡轉換成虛拟網絡,并使用VSAN、FC 或iSCSI 方式将異構存儲池化,将存儲和網絡資源集中排程配置設定給虛拟機使用。在這一階段,雲計算基礎設施都以私有化部署為主,運維人員是雲資源的主要配置設定者,而開發人員和測試人員則是雲資源的使用方,他們使用雲資源的方式和使用傳統實體機的方式基本上是相同的。資源的池化并沒有給應用架構設計帶來本質上的改變,但應用的虛拟化部署極大地提高了部署效率,并有效地提升了實體資源的使用率。

在雲計算發展的第二階段,引入軟體定義網絡(SDN)、軟體定義存儲(SDS)及容器化技術實作了基礎設施即服務(IaaS),并通過命名空間和隧道标簽協定等技術實作了多租戶的資源隔離。由于IaaS 技術的日漸成熟,如關系型資料庫、KV 資料庫、消息中間件等通用的企業級産品被內建到IaaS 上向租戶提供平台即服務(PaaS)的能力,使用者可以通過統一的門戶和标準化的API 接口自助申請使用IaaS 和PaaS 資源,實作應用的自動化部署。随着雲計算技術的快速發展,傳統煙囪式的架構開始向分布式雲架構轉變,單體式應用向輕量化轉變被拆分成不同的服務子產品,從實體機或虛拟機遷移到雲主機和容器平台,以減小元件之間的耦合并降低元件故障帶來的影響。資料庫也逐漸從傳統關系型資料庫如Oracle 遷移到PG 和MySQL 等開源資料庫,與資料庫緊密相連的底層SAN 存儲也逐漸被分布式存儲所替代。在這一階段,各類基礎雲産品被業務系統抽離出來進行統一的編排和排程,DevOps 應運而生并得到了快速發展。在上雲選擇上,由于公有雲具有産品豐富、按量付費、彈性伸縮和超大帶寬等優勢,特别适合中小企業及網際網路企業使用,使用者不需要花費高昂的成本和較長的時間周期來建造IDC,也不需要完備的IT 支撐體系,就可以在雲上搭建自己的業務系統,大量使用者開始選擇使用公有雲。公有雲在這期間有了爆發式的增長。

在公有雲快速增長的同時,私有雲并沒有停滞不前。由于法律合規、安全可控等需求,一些企業基于開源技術打造了适合自己的私有雲平台,但維護一朵雲需要大量的人力和财力投入,而且這朵雲不一定能滿足不同使用者的各種個性化需求。為實作快速上雲的目标,很多企業會采購廠商的雲産品來進行私有雲部署。不管是自研還是采購廠商的雲平台,私有雲部署都需要投入硬體和基礎架構的營運成本,是以,這些企業在完成私有雲建設的基礎上,開始借助公有雲的能力對外提供服務。在這一階段混合的雲計算能力被大量運用。

從2017 年開始,鑒于公有雲具有競争性的價格、性能等市場因素,越來越多的企業開始采用混合雲作為IT 架構,市場研究機構Gartner、IDC 也力推混合雲,是以2017 年被認為是混合雲發展元年,在這之前公有雲和私有雲并行在各自領域平行發展。由于公有雲的面向開放的市場特點,其近十年得到了長足的發展,至今仍在快速發展中。雖然私有雲規模依然很龐大,但相對來說,其發展要慢得多,無論是在産品豐富程度上還是在成本效益上,公有雲都遠勝于私有雲,這也是之前公有雲上司者AWS 無視私有雲的存在、不看好私有雲的原因。此外,在公有雲發展早期,也有一種觀點:看好私有雲,不看好公有雲,覺得私有雲是未來。這種觀點一度很盛行。但近幾年這兩派觀點都從對方身上發現了優點:從私有雲角度,公有雲代表了産品豐富、快速疊代、自由開放的市場;從公有雲角度,私有雲在滿足資料安全、法律合規方面短時間無法被取代。這就是混合雲目前面臨的機會。

2. 雲計算出現的原因

雲計算的出現有市場和技術兩方面的原因,先看看市場原因。

雲計算正是産生于“後摩爾定律”時代,在這一時代,由于工藝制程的限制,CPU 內建度越來越難提高,同時單純通過提高CPU 內建度并不能大幅提升性能,而社會每年産生的資料量以遠超摩爾定律的速度擴張,對計算性能的需求越來越大。根據1.2.2 節提到的有關性能的定律,隻有計算集中才能提升性能,同時距離是計算的敵人。此外,Grid 模式的超算中心進行的也是集中計算,但由于技術架構的原因,其要求有統一的可靠硬體,成本比較高、難擴充,是以建立以普通PC 為主的超大資料中心來滿足全社會的計算需求就順理成章了。

雲計算在很大程度上是一種生意模式。很多網際網路公司需要一種所謂的輕資産模式,即:這些公司有很多計算業務,但不願自建資料中心,因為資料中心是重資産,需要比較大的投入,以及進行後期維護,而且随着時間的流逝,資料中心這樣的資産減值很快,這個痛點剛好就是雲計算的生意本身,它讓這些企業無須對實體資産進行投入,也無須在硬體上投入人員運維,并且還可以避免硬體資産随着時間而快速減值。

除了市場原因,雲計算的出現和存在還有很多技術原因。一種産品的出現和流行一定會等到相關技術相對成熟後,雲計算也不例外。雲計算的出現和存在主要得益于如下關鍵技術的成熟:

    • 虛拟化技術。
    • 分布式存儲技術,如GFS、Ceph。
    • 基于 x86平台的 SDN交換機。
    • Linux Server。
    • KV資料庫。

可以這麼說,沒有這些關鍵技術雲計算就不可能存在。值得注意的是,很多核心技術并不是産生于雲技術,而是在雲技術出現之前就已經相當成熟了。正是在這些條件的催化下,2006 年AWS 首先開啟了基于虛拟化技術的雲計算商業服務。

總結:雲計算是為了解決巨大的計算需求,而建立在衆多關鍵成熟技術上的一門網際網路生意。

3. 雲計算短期發展趨勢

在讨論雲計算的短期發展趨勢之前,我們看看一個産品是如何被市場接受并流行起來的。

在正常市場機制作用下,功能、性能、價格這三個因素會對一個産品的銷售起到決定性作用。其中功能和性能因素代表該産品的實用性,價格則決定了該産品的流行性。當然,市場機制比較複雜,還有各種因素參雜其中,比如行銷政策、商業同盟、生态建設、公司政策、新技術的出現等,都有可能影響這個産品的發展趨勢。

這裡隻讨論對消費者有直接影響的主要因素,即功能,性能和價格,隻有這三個因素一起達到臨界點時,這個産品才會得到大規模普及。同時,如果這個産品能以符合市場預期的速度疊代來提升功能和性能,那麼它就會有非常好的流行趨勢。

回到雲計算上來,現在雲計算正處在一個市場接受程度比較高的時期,大到國家,小到個人,都意識到雲計算的重要性,目前其功能、性能已經能滿足市場需求,價格也在逐年降低。總體來看,雲計算短期發展趨勢包括如下幾個方面。

    • 垂直化:在各垂直領域,由于其個性性要求,公有雲會對其進行部分定制,比如金融雲、政務雲等對安全要求更高,雲廠商會在實體層面進行更進階的安全定制。
    • 混合雲:随着公有雲和私有雲在兩個平行領域發展十多年後,公有雲無論在産品豐富程度上還是價格上都碾壓私有雲,但在資料安全和法律合規方面,私有雲短時間内還無法被取代,是以目前階段公有雲和私有雲混合就成了必然的流行趨勢。
    • 微服務 :雖然 IaaS 長期占有較大的雲計算服務比例,但近年來,随着基于Kubernetes 的微服務模式的流行與成熟,很多使用者的應用服務會慢慢遷移到Kubernetes 平台。
    • IoT:随着 5G 慢慢成熟,将會有越來越多的智能裝置連接配接到雲端,針對物聯網的雲平台将得到蓬勃發展。
    • AI :基于 AI 的智能雲會以服務方式滲透到各種應用中。
    • 生态化:IaaS、PaaS 基本已經發展成熟,特别是雲原生的流行,将會有越來越多的開發者選擇雲平台進行開發、部署,同時圍繞雲原生軟體廠商,使用者會逐漸形成良好生态。

4. 雲計算長期發展趨勢

未來5~10年,我們認為雲計算有如下發展趨勢。

    • 雲計算依然存在,并且會得到進一步增強。原因依然是馮·諾依曼體系結構難以突破,這意味着當資料越來越多時,所要求的算力會越來越大,這樣計算就會越來越中心化,同時資料也會向計算中心靠攏,這種力量就如同引力作用。這種趨勢會在兩個時間點發生變化:

- 網際網路速度大幅提高到資料遷移成本(時間和金錢)可以忽略。

- 計算和存儲成本大幅下降。

    • 能提高算力的新技術會先在雲端爆發。計算叢集的擴張會給技術、成本、管理甚至能耗帶來巨大挑戰,同時也加快了雲軟硬體的快速疊代,凡是能提高算力的技術都會先應用到雲端,因為隻有雲端的使用者群是最廣泛、最全面的。未來如量子計算、5G應用等也會先在雲端出現。
    • 低價格讓雲計算普及到生活各個方面,真正成為社會基礎設施。雲發展仍處在上升期,有遵從摩爾定律的态勢,這意味着機關算力的價格會逐年下降,進而吸引原來不在雲上的服務,讓雲逐漸滲透到各個鄰域,包括個人。
    • 雲部署架構從集中化趨向于分布式發展。目前雲部署架構集中在一些被稱為“地域”的實體地點,各個地域都是獨立的計算單元,彼此在技術上沒有關聯。由于網絡的加速,未來各個地域在技術上的聯系會加強。另外,各種用途的邊緣計算的節點能力也會大大增強,這些節點會組成一個分布式雲架構。