【转】Azure应用部署方式对比
如圖
azure環(huán)境應(yīng)用托管方式對(duì)比
1. app service + serverless
azure的app service支持幾乎所有語(yǔ)言開發(fā)的web app,既可以手動(dòng)使用publish profile部署,也可以使用vsts創(chuàng)建一個(gè)(CDCI)持續(xù)集成。都非常方便。
而azure的function app可以用于創(chuàng)建定時(shí)執(zhí)行的腳本,比如web hook,也可以把windows service邏輯搬到云環(huán)境,無(wú)需IDE。
優(yōu)勢(shì):
pay as you go。使用才付錢,做POC(演示)的首選。比如是開發(fā)環(huán)境或測(cè)試環(huán)境,或者只是演示給客戶看。這種方式比較高效。
不要求容器化部署,數(shù)據(jù)可以放在云端的應(yīng)用(如果數(shù)據(jù)落地,可考慮混合云),都可以考慮使用。
缺陷:
容器化部署的話需要使用azure container service。
2. vm scale sets
azure 的IAAS(infrastructure as a service)基礎(chǔ)架構(gòu)即服務(wù)。就是創(chuàng)建一組虛擬機(jī),自己管理維護(hù)。
優(yōu)點(diǎn):可以通過(guò)配置達(dá)到自動(dòng)伸縮,可以自己管理虛擬機(jī)上的一切,比如子網(wǎng)。
缺點(diǎn):
網(wǎng)絡(luò)安全隱患,比如沒(méi)有及時(shí)裝安全漏洞的補(bǔ)丁。
成本很高。
3. azure 容器服務(wù) (Azure container service)
適用場(chǎng)景:
azure container service更像是IAAS(infrastructure as a service)基礎(chǔ)架構(gòu)即服務(wù)的層面。如果希望在云環(huán)境自己管理維護(hù)docker容器可以考慮這種方案。
優(yōu)點(diǎn):
可以在云環(huán)境托管自己的docker鏡像。
兼得docker鏡像和云托管的好處。
缺點(diǎn):
需要自己管理一切配置。如端口號(hào)需要映射從host到container,并要在最外部防火墻那里管理inbound outbound的規(guī)則。
docker中的容器通信,資源共享,可能需要借助storage account來(lái)解決,但有額外開銷
4. 將docker部署在本地
優(yōu)勢(shì):
可使用swarm或kubernate動(dòng)態(tài)伸縮
節(jié)約托管成本,最大化利用硬件資源,單機(jī)就能托管多容器從而達(dá)到高可用
一次創(chuàng)建image可重復(fù)使用
弊端:
容器的創(chuàng)建完全動(dòng)態(tài)并由swarm管理,應(yīng)用的狀態(tài)數(shù)據(jù)需要在存在容器外部
容器最好完全隔離。如果真需要通信,container之間通信需要?jiǎng)?chuàng)建bridge,跨節(jié)點(diǎn)通信需要?jiǎng)?chuàng)建overlay
容器的引入需要為持續(xù)集成環(huán)境配置額外的步驟,增加了devops的成本
container之間的共享資源需要額外處理
適用場(chǎng)景:
一定要本地部署并且要求docker。客戶堅(jiān)持需要把應(yīng)用部署在本地,完全不用云。除了使用傳統(tǒng)的多VM+負(fù)載均衡以外,可以使用docker。
結(jié)論。首選PAAS,就是azure app service + function app;如果需要容器化考慮azure container service(ACS);如果在本地部署,建議容器化;如果要傳統(tǒng)的多vm+負(fù)載均衡也沒(méi)問(wèn)題,與docker比,只是硬件不能充分利用而已;不建議在azure上跑虛擬機(jī) sets,開銷太大還要自己維護(hù)。
總結(jié)
以上是生活随笔為你收集整理的【转】Azure应用部署方式对比的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 福特电动野马“翻车”:电池过热 近4.9
- 下一篇: 《王者荣耀》阿珂暗夜猫娘皮肤升级:紧身皮