一、應(yīng)用上云的痛點(diǎn)
2006年8月9日,Google前CEO埃里克·施密特在搜索引擎大會(huì)上首次提出Cloud Computing的概念。
云計(jì)算重構(gòu)了ICT系統(tǒng),給社會(huì)各行業(yè)帶來(lái)了極大的變革、便利。
但云計(jì)算同樣帶來(lái)了新的問(wèn)題:業(yè)務(wù)怎么上云?
(1)應(yīng)用在云端重新部署:以腳本或手工方式在云端重新部署。
(2)打包本地已部署應(yīng)用的系統(tǒng) 鏡像 ,通過(guò)P2V/V2V等方式上傳到云端運(yùn)行。
應(yīng)用上云的痛點(diǎn)
(1)重新部署:
本地與云端環(huán)境不一致
歷史數(shù)據(jù)
(2)鏡像:為了運(yùn)行一個(gè)應(yīng)用,拖了一個(gè)很大的鏡像,且整個(gè)系統(tǒng)鏡像非常重。
(3)同時(shí),使用虛擬化技術(shù),就會(huì)不可避免的帶來(lái)額外的資源消耗和占用。
二、Cloud Foundry項(xiàng)目介紹
Cloud Foundry是業(yè)界第一個(gè)開(kāi)源PaaS平臺(tái),最初由VMware開(kāi)發(fā),后轉(zhuǎn)為開(kāi)源。2015年,Cloud Foundry基金會(huì)成立。
1、Cloud Foundry等傳統(tǒng)開(kāi)源PaaS項(xiàng)目的作用
用于解決大規(guī)模的應(yīng)用“上云“的問(wèn)題。Cloud Foundry項(xiàng)目提供了“應(yīng)用托管”能力,其核心組件是一套應(yīng)用的打包和分發(fā)機(jī)制。
2、Cloud Foundry項(xiàng)目的實(shí)現(xiàn)過(guò)程:
(1)自動(dòng)上傳、運(yùn)行應(yīng)用包:運(yùn)維人員需在本地物理機(jī)或虛擬機(jī)上部署一個(gè)Cloud Foundry項(xiàng)目。開(kāi)發(fā)人員執(zhí)行簡(jiǎn)單命令后,即可將本地到應(yīng)用(應(yīng)用的可執(zhí)行文件和啟動(dòng)腳本)打包進(jìn)一個(gè)壓縮包內(nèi),上傳到Cloud Foundry云端存儲(chǔ)。Cloud Foundry會(huì)通過(guò)調(diào)度器選擇一個(gè)可運(yùn)行該應(yīng)用的虛擬機(jī)并通知其agent下載該應(yīng)用的壓縮包,然后啟動(dòng)運(yùn)行應(yīng)用。
(2)為應(yīng)用提供隔離的運(yùn)行環(huán)境:由于一個(gè)虛擬機(jī)中可能需運(yùn)行來(lái)自多個(gè)用戶的不同應(yīng)用,Cloud Foundry會(huì)調(diào)用Namespace和Cgroup為每個(gè)應(yīng)用創(chuàng)建隔離的運(yùn)行環(huán)境(沙盒),以實(shí)現(xiàn)應(yīng)用間互不干涉。在這點(diǎn)上,與Docker Container的實(shí)現(xiàn)類似。