對于互聯(lián)網(wǎng)公司而言,遷移到云是一個明智的決定。它減少了總的成本支出,同時最大限度地提高了工作效率和生產(chǎn)率,本文將指出遷移到云或者建設私有云優(yōu)缺點以及邊界在哪里?
1、什么是云計算
云計算(cloud computing)是分布式計算的一種,指的是通過網(wǎng)絡“云”將巨大的數(shù)據(jù)計算處理程序分解成無數(shù)個小程序,然后,通過多部服務器組成的系統(tǒng)進行處理和分析這些小程序得到結(jié)果并返回給用戶。
本地通常是提前把軟件基礎架構(gòu)部署在用戶計算機上,所有資源使用者自己訪問和管理; 相對于本地服務,云有以下特征:
按需服務-需要時使用;
網(wǎng)絡訪問-通過網(wǎng)絡作為傳輸媒介,云提供商負責維護其基礎架構(gòu);
資源共享-多個資源集中在一起,供多個客戶端使用;
可伸縮性-資源具有彈性能力,最大程度節(jié)省和提高資源利用率,具有平臺無關(guān)性、存儲無限擴展等優(yōu)勢。
2、公有云的缺點在哪里?
云是公共資源,每秒都有數(shù)以百萬的用戶訪問,云服務提供商可能遭受攻擊,從而竊取用戶信息,從而云在一定程度上存在安全問題。
數(shù)據(jù)存儲在第三方機器,可能會出現(xiàn)第三方查看和修改用戶隱私數(shù)據(jù)問題。
更多的控制權(quán)不在于自己,而在于云提供商,云出現(xiàn)問題,只能等待第三方回應。
云本身又分為公有云、私有云、混合云等,以上說的幾點都是公有云的特點,很多企業(yè)不信任公有云平臺,特別是國內(nèi)很多企業(yè)要求對技術(shù)做到自主可控,結(jié)合本身的業(yè)務增長速度,需要搭建自己的私有云平臺。那么要完成私有云平臺搭建,需要完成什么工作呢?如圖(a)
(a)
3、搭建企業(yè)級云平臺需要完成哪些工作?
3.1、IaaS 基礎架構(gòu)即服務
IaaS 基礎架構(gòu)即服務,該服務提供了計算機體系架構(gòu)和基礎服務,提供了所有云計算資源供我們直接訪問使用,比如數(shù)據(jù)存儲、虛擬化服務、服務器和網(wǎng)絡等。
使用對象:企業(yè)管理員。
優(yōu)點:云提供了基礎架構(gòu)和服務、增強了可擴展性、動態(tài)按需擴展。
缺點:集群規(guī)模增大后會出現(xiàn)安全問題和網(wǎng)絡服務延遲。
3.2、PaaS 平臺即服務
PaaS 主要是提供開發(fā)環(huán)境/平臺,編程語言、操作系統(tǒng)、web 服務器和數(shù)據(jù)庫構(gòu)成,用戶可在其中構(gòu)建、編譯、運行程序無需擔心其基礎架構(gòu)。當今面對互聯(lián)網(wǎng)業(yè)務量和用戶量劇增,PaaS 是企業(yè)需要著重建設的部分。很多企業(yè)都以 Kubernetes 為基礎建設容器云平臺。常見的公有云有有阿里云,騰訊云、亞馬遜云等。
使用對象:開發(fā)人員。
優(yōu)點:快速開發(fā)部署、彈性擴容、持續(xù)交付。
缺點:開發(fā)人員僅限于使用PaaS提供的語言和工具,如果前期使用裸金屬服務器部署,后期遷移到云,可能會有一定難度和適應期。
3.3、SaaS 軟件即服務
按需使用軟件、按需付費。跟購買程序無關(guān),該服務運行在云端,是平臺無關(guān)的,無需在 PC 上安裝軟件。云端運行該服務一個或多個實例供多個最終用戶使用,云計算大大降低企業(yè)軟件運行成本。比如網(wǎng)盤、網(wǎng)上沖浪服務等。
使用對象:用戶。
優(yōu)點:可以通過任何平臺訪問、無需關(guān)心在什么網(wǎng)絡環(huán)境。非常適合協(xié)同辦公。
缺點:云服務是面對所有用戶,比如:瀏覽器兼容性可能導致不能使用某些服務。
3.4、PaaS VS IaaS
在云平臺建設過程中 PaaS 和 IaaS 邊界在哪里呢?很多企業(yè)在建設過程中,可能會把這兩個混為一談,其實有一定的界限。
IaaS 主要是對裸金屬機器進行資源分配、操作系統(tǒng)安裝、服務器啟動、網(wǎng)絡配置等。
PaaS 主要是對計算資源進行邏輯管理,與應用有關(guān)資源分配和調(diào)度,主要是最大程度上服務于上層應用,如圖(b)。
(b)
4、云平臺真的適合你嗎?
建設之前,需要大量的時間去整理、評估組件的各種可行性分析。說到這里,很多人可能會知難而退;是的,坦率的說,云平臺其實不適合大多數(shù)的團隊,如果你在一個 15 - 20 人的小團隊里,它會帶給你大量痛苦,而好處卻微乎其微。
4.1、以建設容器云平臺舉個例子
目前 A 公司的系統(tǒng)全部運行在裸金屬 3 臺服務器或者 5 個虛擬機上,考慮到硬件資源無法靈活調(diào)度,目前考慮遷移到Kubernetes上。
首先需要申請更多的機器,遷移總要有一個過渡階段,前期裸金屬服務器上要運行一份服務,Kubernetes容器化平臺還要有一份服務,此外還需要考慮依賴的底層服務;
其次需要開發(fā)人員的學習適應和一定的人力投入,開發(fā)人員需要在了解大量概念之后才能使用,Node、Pod、Container、Service、Deployment......各種資源對象,如圖(c)可以看出 Kubernetes 是一個龐大的系統(tǒng),操作和使用都是非常的復雜,它包含 58w 行 go 代碼,如果我們想要服務更好的工作,研究其運行機制,一定是必不可少的。 ( c )
最后落地,需要考慮數(shù)據(jù)的遷移、遺留系統(tǒng)的遷移,因為 Kubernetes 本身是一個集群,不得不考慮分布式存儲管理、配置管理...... 如果自己系統(tǒng)本身不適應集群部署,那么不能發(fā)揮云的作用,不得不考慮把服務拆分成分布式微服務程序,這種程序很難編寫,編寫過程需要考慮分布式事務等很多問題,其次調(diào)試和日志排查問題也會增加復雜度,于是你在云平臺的漩渦里不能自拔..........
上面說了這么多 Kubernetes 使用問題,是不是說它就一無是處了,當然不是。比如說當前服務客戶是金融業(yè)務,7*24 小時不能宕機,且有上萬用戶使用,這就需要考慮到服務的擴展性和升級可靠性了,這正是Kubernetes 最擅長的事情了。
4.2、容器云平臺真的有必要嗎?
對于任何技術(shù),在使用之前都要持保留態(tài)度,別人說好,那是適合,換做是你,可能就是另外一種場景了,要學會洞察技術(shù)的本質(zhì),就像搭建企業(yè)級云平臺一樣,在搭建之前要考慮為什么要建設企業(yè)級云平臺?可以從三個方面去考量建設的意義是什么?
業(yè)務系統(tǒng)越來越多,各個系統(tǒng)之間存在大量的數(shù)據(jù)交互和接口調(diào)用,規(guī)劃的還有大量的系統(tǒng)需要建設,出現(xiàn)問題時總是修修補補,無法從全局、系統(tǒng)的角度去規(guī)劃分析問題。 資源管理層面上,有多個機房和數(shù)據(jù)中心,里面可能存在部分僵尸服務,無法做到有效監(jiān)控、動態(tài)調(diào)度底層計算資源共享,更無法做到峰谷互補伸縮自如。 需求上要求快速交付、持續(xù)運行并且已經(jīng)存在或者未來可預知的大量用戶和海量數(shù)據(jù)。
5、總結(jié)
隨著互聯(lián)網(wǎng)的發(fā)展和網(wǎng)絡帶寬的增加,企業(yè)應利用云計算的優(yōu)勢,減少了總的成本支出,同時最大限度地提高了效率和生產(chǎn)率,從長遠來看,對于大型互聯(lián)網(wǎng)公司而言,遷移到云是一個明智的決定。
-
云計算
+關(guān)注
關(guān)注
39文章
7823瀏覽量
137419 -
私有云
+關(guān)注
關(guān)注
0文章
99瀏覽量
15029
發(fā)布評論請先 登錄
相關(guān)推薦
評論