這兩三年來受到 Covid-19 的影響,我所處的行業《資訊業》的業務蓬勃的發展,創造了許多數位轉型與零接觸經濟的商機。也因為這些商機的興起,讓很多業主越來越重視雲端運算這個領域,越來越多的應用程式被部署到雲上面 (目前大家的共識應該是把應用搬到 Kubernetes 上,就是所謂的移轉到雲平台)。
我自己比較長面對金融領域,在嚴格的監管下,金融業也逐漸地往雲端運算領域發展,近期新的應用需要部署在雲上,既有的應用也需要移轉到雲上,逐漸地成為一種風潮或是必然的走向。然而,雲端服務跟目前大家認知的《共識》,應該又有點不同。Kubernetes 是基於發展到現狀的一種最佳實務,但在過去這個概念發展時,其實有不同實作的技術與發展面向。
雲端運算最早提出的概念,依據維基百科裡面記載應該是昇陽電腦的網路是電腦 (The Network is computer)。然後隨者技術發展,一些虛擬化技術逐漸成熟,例如:VMWare ESXi及Microsoft Hyper-V 等,協助大家建立自己的虛擬化私有雲平台。虛擬化共用了硬體的運算資源使得這些硬體的使用效率得以最大化,或許我們可以把這個稱為第一代的雲端運算。
而這些虛擬化技術發展出來的目的主要就是要可以讓運算資源被妥善的運用,以應付日漸複雜的運算需求。在2006 年時, Amazon EC2 (Amazon Elastic Compute Cloud) 的服務出現了。該服務是由亞馬遜公司提供的Web服務,是一個讓使用者可以租用雲端電腦運行所需應用的系統。EC2藉由提供Web服務的方式讓使用者可以彈性地運行自己的Amazon機器映像檔,使用者將可以在這個虛擬機器上運行任何自己想要的軟體或應用程式。這時候,AWS 使用的是 KVM 與 Xen 的虛擬化技術,在這時候開啟了雲端運算發展的時代,包含Google、IBM 等相繼投入資源協助雲端運算領域的發展。私有雲與公有雲行成兩個不同發展面向的概念。
然後,隨著技術的發展,在 2013 年附近,容器化 (Container)的技術概念開始興起,它是一種比起 VM (虛擬化機器)更輕量化的虛擬化軟體套件。隨著容器化技術開始被廣泛地採用後,如何管理這些容器就成為新的議題。因此,Google 釋出內部叢集管理系統 Borg 來協助大家管理這些容器,也就成為目前大家所熟悉的Kubernetes。
那麼基於這些技術的發展,我們再來討論一下《私有雲》跟《公有雲》這兩個議題。在過去很多企業,因為對於雲端運算的需求,又有資訊安全上的考量,所以比較傾向建立自己的私有雲平台。依據先前的歷史來看,在建立雲端運算的技術隨者時間不斷地在改善與演進。建立屬於自己的雲平台,需要相當的技術能量 (這裡是指,你可能從 VM 的時期自建機房,然後再移轉到容器化,再使用 Kubernetes 來管理這些容器等,然後你還要有足夠的維運人員追上這些新的技術,不斷地優化自己的雲平台)。
【私有雲】
基本上,這件事情並不容易,所以有許多的廠商開始釋出一些協助企業建置雲平台的軟體,來降低這個進入門檻。例如:RedHat OpenShift、VMWare Tanzu、HP HPE、Azure Stack 及 Google Anthos 等 (這些事目前工作上有遭遇過的幾個平台)。這些廠商,有的是從私有雲發展,看著目前技術的趨勢,提供一些套裝工具,協助企業建立屬於自己的私有雲 (Red Hat, VMWare),有些則是原本就在公有雲發展的網際網路公司(Google、Azure 及 AWS 等),將其相關技術提出落地化版本,讓企業可以在自己的環境裡架設屬於自己的私有雲。
這裡面比較特別的,我自己認為就屬AWS 跟阿里雲,他們是為了解決自己銷售的問題,建立了自己的資料中心,形成雲服務後,再對外開放給其他人來使用這些服務。這是屬於自己建立私有雲較為成功的案例。
其實,私有雲的公司也不只上述的這些,過去在 Linux 界相當有名的 SUSE 也有自己的雲平台來協助客戶,只是我們自己有沒有去接觸到。因此,當我們要建置私有雲的時候,這些軟體就是協助我們完成任務的平台及工具。應該很少企業可以像 AWS 及阿里巴巴一樣投資大量的技術人力與設備資產,建立屬於自己的雲平台。
【公有雲】
在公有雲來說,可能大家比較常聽到的就是 AWS、Google及 Azure 吧,除此之外可能還是有其他公有雲平台,例如:阿里雲。至少,在幾個雲端大會的場合應該是有碰過的。相對於私有雲來說,公有雲的發展是比較快速的,因此在許多時候針對公有雲的技術評估總是遠遠優於私有雲,因為一些較先進的設備或是技術都會在公有雲上先實現。
除了先前講述的 AWS 跟阿里巴巴這種從私有雲建置成功進一步轉變成網路服務提供商之外,大部分是由像Google 及 Microsoft 這種原本的技術公司提供的服務。公有雲的服務主要強調就是低門檻,並且有 IaaS (Infrastructure as a Service)、PaaS (Platform as a Service)及 SaaS(Software as a Service)等應用場景,這些在中友雲上都像自來水一樣你只要打開就可以使用 (過去你可能需要數小時、數天到數個月甚至數年來建置這些服務)。因此,這個模式相當適合新創或是要嘗試一些新的商業模式而不打算投入那麼龐大的系統建置費用時可以考慮的解決方案。
這可能也是未來發展的趨勢,畢竟目前 IT 人才尋找不易,而這些基礎建設建置成本又高,所以好好當個服務的使用者,是一個不錯的選項。公有雲就是未來的基礎建設,每個人都可以隨開即用,但不需要自己建置這些系統,就像目前水電就屬於基礎的系統,但很少人需要建立自己的配水與配電系統。
【混合雲】
另外,我們也思考一下,在建置私有雲的時候大家評估的重點是什麼?建置雲平台可以使運算效能的利用率提高,更有效的利用運算資源完成更多的事物。在這個場景下,我們通常是針對應用系統平常的表現來做系統規劃,因此建置出來的容量通常是面對既有業務的平均使用狀況來預估,在面對突然的大量服務時很難運用到雲端運算可以自動擴容的特性。因此,為了成本跟經濟效應的考量,進一步可能需要思考《混合雲》的問題。私有雲的技術對於企業是屬於如何提高利用率的部分,而公有雲則成為當業務機會來臨時,可以快速拓展服務節點的技術。
因此,大部分的私有雲建置,最終都需要考慮一下形成混合雲(甚至可能有些法規會規定使用的情境)的狀態,以便面對各種不同的商業環境,基於這些因素,應該可以讓我們更好的去評估自己雲平台的發展模式,這些雲平台應該具備哪些特性,可以讓我們未來在技術上較容易增長。
【參考資料】
1. Amazon EC2
2. KVM
3. Xen
5. VMWare Tanzu
8. AWS Outposts
9. HP HPE
沒有留言:
張貼留言