婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 簡介Docker在美團網站服務器上的應用方案

簡介Docker在美團網站服務器上的應用方案

熱門標簽:金蘭灣地圖標注app 百應電話機器人價值 河北crm外呼系統平臺 地圖標注不顯示 河南語音外呼系統平臺 外呼系統2273649Z空間 南京400電話辦理到易號網 福州公司外呼系統加盟 周口權威的不封卡電話外呼系統

自動構建系統是從美團的自動部署系統發展出來的一個新功能。每當開發人員提交代碼到倉庫后,系統會自動根據開發人員定制的構建配置,啟動新的Docker容器,在其中對源代碼進行構建(build),包括編譯(如Java、C++和Go)、預處理(如JavaScript和CSS)、壓縮(如圖片)等操作,生成最終需要上線的程序包。

背景和問題

美團的代碼自動部署系統承載著美團所有業務的代碼上線工作。代碼部署系統一開始基于簡單的Bash腳本,從一個中央主機上通過Rsync和SSH進行文件傳輸和命令執行。

圖1  代碼部署系統架構圖

代碼發布系統經過多番演進,增加了很多功能,但原來的中心式架構仍然保留了下來,見圖1。發布者通過Web界面或者REST API控制中控機,中控機負責從Git服務拉取代碼,構建應用程序包,然后通過Rsync上傳程序包到應用集群,并用SSH執行遠程命令。

自動部署系統為美團業務的快速發展提供了有力的支撐。由于我們采用了開發人員自助上線的方式,發布操作頻繁,工作日每日上線達上千次。圖2是過去15個月每個月的發布次數。為了持續優化發布速度,給發布人員提供良好的體驗,我們把單次發布平均時間作為發布系統的一項重要的KPI。

然而,隨著美團業務的迅速擴張,服務增多,發布應用數目也增多,中心化的架構的問題也凸顯了出來。

問題1:資源競爭
多個構建任務同時進行,競爭中控機的資源,影響發布速度。有一次一個應用受到同時進行的某Java類應用發布的影響,通常兩分鐘的發布變成了十多分鐘,嚴重影響發布體驗。如果出現事故需要回滾,就是更嚴重的問題了。

問題2:環境沖突
不同應用的構建依賴環境在一臺發布機上,需要考慮環境沖突和隔離的問題。例如,Java 1.6/1.7共存,應用需要通過JAVA_HOME變量指定使用的Java版本,Maven 2/3也存在同樣的問題。npm的global包也需要兼容多個應用的構建。

問題3:安全隱患
應用的構建腳本運行在公共發布機上,腳本的Bug可能會影響到發布機的正常運行。例如某次一個構建腳本里面的sudo service nginx reload命令,本應是在應用服務器上執行的,但開發人員錯誤配置到了在發布機上執行的構建腳本里面。

解決方案

解決上述三個問題,我們首先想到的方案自然是重構為多臺中控機的可橫向擴展的方式。但由于某些應用的特殊性,改動比較麻煩,所以開始并沒有走這個方向(現在已實現多中控機)。

那么另外一個思路:能不能把構建過程從中控機分離出來?這個思路受到了Travis CI(https://travis-ci.org)的啟發。我們借鑒Travis CI,在代碼提交時自動在一個新的環境中觸發應用的構建。

因此,我們的解決方案可以概括為如下三點:

把構建過程放到Docker容器;
提交代碼時自動觸發構建;
發布時直接使用構建好的應用包。
使用前配置如下:

在發布系統配置發布項(build.yml);
在Stash配置自動構建服務的URL;
在私有Docker registry上傳定制鏡像(可選)。
使用過程比較簡單,主要有如下幾個步驟:

開發人員提交代碼到Stash;
觸發自動構建;
自動構建根據配置生成任務;
在Docker服務器上啟動容器完成構建;
將構建好的包上傳到美團云對象存儲服務(MSS);
發布時從MSS拉取軟件包并發布。
每次提交代碼時會觸發自動構建API。構建任務放進隊列里,任務在Docker服務器執行。當發布時就不用再去編譯,直接拉取軟件包進行發布。從圖6、圖7兩幅圖中可以看到在發布過程中直接使用了已自動構建好的文件進行部署。

圖3  自動構建的配置

圖4  發布系統的配置界面

圖5  自動構建架構圖

圖6  自動構建的日志

圖7  嵌入了自動構建日志的發布日志
為什么沒有用虛擬機?

美團的虛擬化比較徹底,自動構建也可以用虛擬機而非容器實現。但虛擬機都和業務相關,會長時間保留。其次,虛擬機和CMDB深度結合,創建后會上報基本信息,部署Agent,配置監控項等。此外,虛擬機的創建是比較慢的。綜合考慮以上幾點,我們使用了Docker而不是虛擬機作為自動構建的基本單元。

效果和收益

基于Docker容器的自動構建很好地解決了之前提到的三個問題:資源競爭、環境沖突和安全隱患。構建任務移出發布機,構建用Docker服務器可橫向擴展,解決了資源競爭問題。每個構建都是獨立的鏡像,環境沖突問題不復存在。構建腳本運行在獨立于發布機的Docker服務器上,對發布機造成的安全隱患自然就消除了。

除解決了以上三個問題外,自動構建還顯著改善了發布速度。經統計,自動構建任務的平均執行時間是197s,而使用自動構建應用的平均發布時間是99s。如果不使用自動構建,那么這些應用的發布時間就是197s + 99s,大約是三百秒。可以看到,自動構建把應用的發布時間縮短了三分之二。

總結

自動構建是美團對Docker的首次應用。這個應用不是為了用Docker而用Docker的,而是在解決代碼部署系統中的問題時,利用Docker很好地解決了我們遇到的問題。該應用只利用了Docker最核心的容器功能,并沒有使用Docker集群管理、調度、自動擴容等高級的功能。自動構建的場景非常適合使用Docker。希望本文能夠對計劃開始使用Docker的公司有所啟發。

標簽:撫州 臺州 贛州 長治 自貢 南京 瀘州 呼和浩特

巨人網絡通訊聲明:本文標題《簡介Docker在美團網站服務器上的應用方案》,本文關鍵詞  簡介,Docker,在,美團,網站,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《簡介Docker在美團網站服務器上的應用方案》相關的同類信息!
  • 本頁收集關于簡介Docker在美團網站服務器上的應用方案的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    日韩视频一区二区三区在线播放 | 国产一区二区在线视频| 色视频一区二区| 久久久激情视频| 国产一区二区按摩在线观看| 日韩一区二区三区在线观看| 视频一区国产视频| 欧美一区永久视频免费观看| 理论片日本一区| 久久久午夜电影| av在线播放不卡| 国产精品短视频| 色综合久久88色综合天天免费| 一区二区三区在线视频观看58| 91久久精品一区二区三| 亚洲高清免费视频| 日韩欧美一区二区不卡| 国产精品一区二区在线看| 亚洲图片另类小说| 欧美一区二区三区电影| 国产成人精品亚洲777人妖 | 日韩视频免费观看高清完整版 | 麻豆精品一二三| 国产美女在线观看一区| 欧美精品第一页| 91久久精品一区二区二区| 在线看国产一区二区| 欧美日韩免费高清一区色橹橹| 久久精品72免费观看| 亚洲欧美另类久久久精品2019| 美国三级日本三级久久99 | 欧美国产日韩亚洲一区| 91久久精品一区二区三| 狠狠色丁香久久婷婷综合丁香| 成人欧美一区二区三区白人| 337p亚洲精品色噜噜噜| 国产精品自在在线| 亚洲bdsm女犯bdsm网站| 国产精品美女久久久久av爽李琼| 欧美日韩黄色影视| 91丨porny丨中文| 国产一区二区看久久| 天使萌一区二区三区免费观看| 国产精品网友自拍| 久久久91精品国产一区二区精品| 欧美在线三级电影| thepron国产精品| 国产精品伊人色| 精品亚洲国内自在自线福利| 五月天欧美精品| 尤物视频一区二区| 成人欧美一区二区三区视频网页 | 日韩欧美高清dvd碟片| 欧美日韩国产另类一区| 色婷婷综合在线| 免费观看一级欧美片| 亚洲电影一级黄| 精品一区二区免费| 国产精品系列在线| 日韩欧美国产精品| 精品区一区二区| 欧美一区二区在线免费观看| 欧美日韩国产123区| 欧美日韩另类一区| 欧美男男青年gay1069videost | 亚洲欧美一区二区视频| 国产欧美一区二区精品久导航| 日韩欧美专区在线| 日韩免费一区二区| 欧美电影免费观看高清完整版在线观看| 欧美日本在线播放| 日韩美女主播在线视频一区二区三区| 在线成人小视频| 日韩三级在线观看| 久久影院电视剧免费观看| 久久婷婷一区二区三区| 国产欧美视频一区二区三区| 亚洲国产高清不卡| 亚洲精品高清在线| 日韩精品亚洲一区二区三区免费| 日本欧美在线观看| 国产激情精品久久久第一区二区 | 色婷婷精品大视频在线蜜桃视频| 在线日韩国产精品| 日韩视频免费观看高清完整版 | 欧美一级免费大片| 欧美一区二区三区四区五区| 日韩欧美在线影院| 国产精品丝袜91| 亚洲成人av电影在线| 久久国产精品免费| www.爱久久.com| 欧美日韩大陆在线| 久久久无码精品亚洲日韩按摩| 日韩一区欧美一区| 日韩精品一二三区| av毛片久久久久**hd| 欧美一级xxx| 亚洲欧美欧美一区二区三区| 免费xxxx性欧美18vr| 欧美性高清videossexo| 精品日韩一区二区| 亚洲综合一二三区| 国产白丝精品91爽爽久久| 欧美日韩一区小说| 亚洲国产精品99久久久久久久久| 亚洲激情图片qvod| 国产精品一区二区91| 欧美高清视频在线高清观看mv色露露十八| 精品国产乱码久久久久久闺蜜 | 日韩精品中文字幕在线不卡尤物| 国产日韩视频一区二区三区| 亚洲韩国精品一区| 99re8在线精品视频免费播放| 91精品国产91久久久久久最新毛片 | 亚洲一区二区三区四区不卡| 国产精品影音先锋| 日韩女优电影在线观看| 亚洲你懂的在线视频| 国产盗摄视频一区二区三区| 日韩亚洲欧美一区二区三区| 亚洲国产日产av| 91美女福利视频| 欧美国产精品一区二区| 久久66热re国产| 日韩免费看的电影| 日本美女一区二区三区| 日本久久电影网| 亚洲精品日产精品乱码不卡| 成人午夜精品一区二区三区| 亚洲精品一区二区三区福利| 日韩成人一级片| 69堂国产成人免费视频| 日韩国产成人精品| 91精品国产综合久久久久久久| 亚洲国产视频在线| 色噜噜狠狠色综合欧洲selulu| 欧美极品aⅴ影院| 国产精品亚洲视频| 欧美一区二区三区色| 日韩高清一区在线| 欧美成人伊人久久综合网| 美女视频网站黄色亚洲| 欧美xxxxxxxxx| 国产不卡在线一区| 亚洲欧美日韩国产综合在线| 色综合久久综合网欧美综合网| 亚洲免费观看高清在线观看| 91成人在线精品| 一本色道久久综合亚洲91| 日本一区二区高清| 91麻豆国产精品久久| 亚洲第一电影网| ww久久中文字幕| 9l国产精品久久久久麻豆| 一区二区三区欧美久久| 欧美一区二区三区视频在线观看| 精品在线播放免费| 中文字幕在线免费不卡| 欧美日免费三级在线| 韩国成人福利片在线播放| 国产精品久久久久影院亚瑟| 99久久免费精品| 日本aⅴ精品一区二区三区| 久久久久久毛片| 91麻豆自制传媒国产之光| 蜜臀a∨国产成人精品| 1024亚洲合集| 日韩一级精品视频在线观看| va亚洲va日韩不卡在线观看| 日本午夜精品视频在线观看 | 亚洲图片另类小说| 91精品国产综合久久福利| 国产精品一区二区在线播放| 一区二区免费在线| 久久久久久久综合色一本| 欧美性三三影院| 喷白浆一区二区| 日韩伦理电影网| 久久午夜色播影院免费高清| 在线视频你懂得一区| 成人听书哪个软件好| 亚洲成人精品影院| 中文字幕在线不卡国产视频| ww亚洲ww在线观看国产| 欧美一区二区在线免费观看| 色噜噜狠狠色综合欧洲selulu| 国产成人自拍高清视频在线免费播放 | 欧美一区二区三区免费在线看| 成人av在线电影| 国产精品资源在线看| 麻豆成人av在线| 婷婷中文字幕一区三区| 亚洲天堂网中文字| 国产欧美一区二区精品性色超碰| 日韩一区二区三区观看| 欧美日韩成人一区| 欧美性猛交一区二区三区精品| 99久久99久久综合| 9色porny自拍视频一区二区|