456成人影院在线观看_亚洲a毛片_日韩9999_伊人网老司机_一本免费视频_最近高清日本免费

IT之道-艾銻知道

您當前位置: 主頁 > 資訊動態 > 行業資訊 >

客戶數據中心segment如何利用自動化的基礎設施來武裝工程師


2015-12-11 09:09 作者:admin 瀏覽量:

  發展企業是艱難的,發展一個支撐企業前行的工程團隊可以說是更加困難的。但是沒有一套穩定的基礎設施,做這兩件事基本是不可能的。特別是對于高速發展的企業,必須授權每一個工程師在編碼、測試和交付代碼方面具有高度的自主權。

  segment是一家客戶數據中心,致力于幫助數千家公司收集、處理數據,本文主要講了segment在自動化基礎設施方面的實踐,主要包括同步開發環境、映射開發環境和生產環境、本地開發和部署到生產環境。

  過去的一年中,我們增加了達60個新的系統集成環境(總數超過160個),為合作伙伴建立了一個平臺,用以編寫他們自己的集成,發布了Redshift(紅移)集成,同時發表了幾個重大的產品公告。那段時間,圍繞多環境管理、部署代碼和通常的開發工作流程,我們經歷了許多成長的煩惱。之后,我們的工程師是最幸福、最具生產力的,因為他們的時間都花在發布商品,打造工具和擴展服務上。開發流程和它所支持的基礎設施簡單易用、擴展靈活是至關重要的。

  這就是為什么我們自動化了自己的基礎設施的眾多方面。下面我將分享關于我們當下的一些更加詳細的設置,主要包括這幾個領域:

  同步開發環境

  映射開發環境和生產環境

  本地開發

  部署到生產環境

  一起來深入的探討一下吧!

  同步開發環境

  由于代碼的復雜性的增長和工程團隊的擴大,在所有的工程師中保持開發環境的一致會變得更加困難。

  在我們現有解決方案出現之前,我們的工程師所面臨的一個大問題是同步開發環境。我們有一個Github庫,里面有一組shell腳本,所有新來的工程師執行這些腳本,將必要的工具和身份驗證令牌裝到他們本地的機器上,這些腳本也會建立Vagrant和一個虛擬機。

  但是這個虛擬機是在每臺電腦上進行本地構建,如果你修改了虛擬機的狀態,那么為了使得讓它恢復到與其他工程師的虛擬機同樣的狀態,你必須從頭構建一切。而當有工程師更新了虛擬機,你必須在Slack上告訴每個人,讓他們從Github VM庫中拉取代碼并重新構建。這是一個痛苦的過程,因為 Vagrant很慢。

  對于一個竭盡全力快速前行的發展中團隊來說,上面的方法并不是一個好的解決方案。

  每次運行時,我們會通過查詢Docker Hub API來確保虛擬機是最新的。這個過程會更新工程師每天所需的包、工具等。這將耗費5秒鐘,為了確保一切運行正常,這也是必要的。

  此外,由于我們的工程師使用Mac電腦,我們從boot2dockerVirtualBox虛擬機切換到了托管于boot2docker實例的Vagrant,以便我們可以充分利用NFS的優勢來共享主機和客戶機的volumn。在本地部署的時候,使用NFS,性能得到大大提升。最后一點,NFS允許工程師在虛擬機外部所做的改變可以即時地在虛擬機內部反映出來。

  通過這個解決方案,我們大大減少了需要在宿主機上安裝依賴的數目。現在唯一需要的是Docker、Docker Compose、Go和GOPATH配置。

  映射開發環境和生產環境

  理想的情況是在開發環境和生產環境中運行相同的代碼,然而這樣分離,開發環境中的代碼可能永遠不會對生產環境中的代碼產生影響。

  之前我們將AWS狀態(由Terraform生成)存儲在Terraform的文件中,但它并不是一個完美的系統。例如,如果兩個人異步操作并應用了不同的改變,狀態將會改變,最后推送代碼的人將很難搞定合并沖突。

  我們盡可能以最簡單的方式實現了staging和production環境的映射:

  從一個文件夾復制文件到另一個文件夾。Terraform使我們在修訂基礎設施、部署新服務和做出改進方面節省了大把時間。

  在應用之前,我們通過編寫定制的構建過程以及確保恰當的安全因素已考慮在內來集成Terraform和CircleC。

  目前,我們在Github上有一個名為基礎設施的單一庫,其中包含了Terraform的腳本集合,用以為每一個容器配置環境變量和設置容器。

  當我們想要改變基礎設施中的某些東西時,將必要的修改寫進Terraform腳本,并在新的pull請求之前運行它們以便基礎設施團隊中的其他成員來review它。一旦pull請求合并到主分支,CircleCI就會啟動部署進程:狀態變為pulled,本地被修改,并再次存入到S3。

  本地部署

  種子庫

  本地開發的時候,使用虛擬數據填充本地數據庫是很重要的,這樣會讓我們的應用看起來更真實。所以,種子庫是配置開發環境的共同組成部分。

  我們依賴CircleCI、Docker和volumn容器來提供獲取虛擬數據的便捷途徑。volume容器是靜態數據的便攜鏡像。我們決定使用volume容器,因為數據模型和邏輯越來越松耦合而且容易維護。這樣做也是以防萬一,在我們的基礎設施的其他地方可以用到這些數據(比如測試等,誰知道呢)。

  當我們在開發過程中啟動app服務器時,就會自動加載種子數據到我們的本地開發環境中。例如,當app(我們的主應用)容器在開發環境中啟動,app的docker-compose.yml腳本就會從Docker Hub中拉取最新的種子鏡像,并在虛擬機中掛載原生數據。

  Docker Hub中的種子鏡像產生自Github倉庫中的種子,作為我們導入到數據庫中的原生對象,它就是一組JSON文件。為了更新種子數據,我們將 CircleCI配置到倉庫上,以便任何到主分支的推送都會構建(從Docker Hun中賺錢我們的mongodb容器和redis容器)并向Docker Hub中推送新的種子鏡像,這樣我們就能在app中使用這個容器了。

  生成微服務

  由于Segment數據密集型的特性,我們的app已經依賴幾個微服務(db,redis,nsq等)。為了使我們的工程師可以開發app,我們需要一個簡單的方法在本地構建這些服務。

  Docker再一次使得這種工作流變的非常容易。

  類似于我們使用種子volume容器掛載數據到本地虛擬機那樣,我們以同樣方式來使用微服務。我們使用doker compose文件從Docker Hub抓取鏡像來進行本地構建、設置地址并最終將復雜性降低到一條終端命令就可以讓一切啟動并運行。

  部署到生產環境

  你編寫代碼,但從不將代碼部署都生產環境,這種情況真的發生過嗎?

  部署代碼到生產環境是開發工作流程中的一個組成部分。在Segment,圍繞部署代碼到生產環境,我們優先考慮難易程度和靈活性,因為這使得工程師可以快速的行動而富有成效。我們還創造了足夠多的工具來為處理錯誤,回滾和監視構建的狀態保駕護航。

  我們使用Docker、ECS、CircleCI和Terraform來盡可能地自動化持續部署。

  當我們初次嘗試使用Docker時,我們很喜歡其在一個可復用和隔離的環境中運行代碼的能力。我們想要復用Docker的這些原則和經驗,從而在不斷擴大的工程團隊中保持開發環境的一致。

  我們寫了一堆工具為新來的工程師配置虛擬機,從基礎鏡像狀態升級或是重置。當我們的工程師初次配置虛擬機的時候,需要Github憑證和AWS令牌,然后從Docker Hub中拉取最新的鏡像并構建。


相關文章

IT外包服務
二維碼 關閉
主站蜘蛛池模板: 国产精品自在_精品一二三四视频_日韩影院一区二区_精品手机在线视频_日日做夜狠狠爱欧美黑人_在线视频1区_国产瑟瑟视频_亚洲91久久 | 成人网在线播放_亚洲熟妇国产熟妇肥婆_成人无码区免费视频_久久国产大片_好爽好大久久久级淫片毛片小说_忘忧草日本在线WWW日本_中国白嫩精品bbwbbw_亚洲熟妇av午夜无码不卡 | 欧美性稚交6-12_激情欧美一区_中文字幕你懂的_亚洲成年女人av毛片性性教育_亚洲AV无码专区在线播放中文_欧美日韩在线观看视频小说_在线观看黄网_亚洲熟女色情网中文字幕 | 经典三级欧美在线播放_国产中文字幕在线免费观看_91香蕉国产_国产免费av片在线观看麻豆_四虎在线免费_天堂久久天堂AV色综合_综合图区亚洲另类偷窥_中国成人网 | 奇米第四影视_精品女厕一区二区三区_国产一区二区三区在线观看免费_国产精品性爱_裸体精品bbbbbbbbb美国_农村妇女野战bbxxx_久久一级精品_国精品久久久久久久久久久58 | 中文字幕一区二区三区视频_国产鲁鲁视频在线观看_亚洲精品亚洲人成在线观看麻豆_69久久久久_7m精品福利视频导航_色婷婷精品久久二区二区我来_大香伊人久久精品一区二区_大学生一级片 | 涩五月婷婷_国产精品多久久久久久情趣酒店_国产精品sm在线观看_free男子游泳部第三季_热久久性_天天弄夜夜操_人人干日日操_龙珠z免费观看国语版 | 婷婷综合缴情亚洲狠狠小说_日韩三级一区二区三区_办公室强伦片免费看_国产亚洲精品自在久久蜜TV_男人又大又硬又粗视频_国产suv精品一区二人妻_亚洲aa视频_国产美女一区 | 欧美日韩中文字幕一区二区高清_人与性动交aaaabbbb_国产一区二区三区四区五区加勒比_国产成人综合欧美精品久久_99久久国产宗和精品1上映_日本丰满人要无码视频_日韩成人区_国产美女视频黄 | 日本轮理片_国产黄色小视频在线观看_久久久久97国产精_亚洲一二区制服无码中字_免费人成网站在线观看不_亚洲天堂网络_继承者们在线观看免费高清韩剧_国产一区二区成人久久免费影院 | 78午夜福利视频_国内不卡的一区二区三区中文字幕_韩国一级片视频_午夜在线看_avtom影院址永久入口跳转_亚洲色无码中文字幕手机在线_国产亚洲99影院_亚洲成人一级片 | 国产东北一级毛片_欧洲熟妇牲交_亚洲AV无码专区首页_成年人免费观看_国产精品久久免费_伊人色亚洲_免费在线观看亚洲_日本一本一区 | 国产激情视频网站_国产A级毛片色咪味_成人在线观看一区二区三区_极品粉嫩嫩模大尺度无码_亚洲国产精品一区二区久久亚洲午夜_亚洲男人的天堂在线_国产精品推荐天天看天天爽_麻豆视传媒 | 91av网站在线观看_奇米影音第四色_丰满少妇被猛烈进入高清播放软件_日日干夜_热99精品里视频精品_在线深夜视频_亚洲精品国产高清一线久久_在线啪啪 一区二区观看_欧美性受xxxx黑人猛交88_精品国产91亚洲一区二区三区婷婷_成人在线观看免费网站_中文字幕久久熟女蜜桃_九色精品国产_久久人人爽人人爽人人片av高请_公天天吃我奶躁我的在线观看 | 欧美xxxx做受欧美_久久青青草原国产毛片_亚洲综合伊人_久久精品国产99国产精品亚洲_不卡一不卡二不卡三_男人女人真曰批视频播放在线_91高清视频在线免费观看_太大太粗太爽免费视频 | 艳Z门照片无码AV_窝窝午夜精品一区二区_国产二区在线观看视频_97se亚洲综合在线_亚洲成av人无码不卡影片_国产午夜免费高清久久影院_在线播放免费av_亚洲精品中国国产嫩草影院美女 | 精品99久久_国产精品在线看_大香伊蕉最新视频_亚洲色大18成人网站WWW在线播放_一区二区免费视频_国产午夜福利片1000无码_久久精品亚洲人成影院_久草在线手机视频 | 久久国内_亚洲免费人成视频观看_免费一区区三区四区_国产日本在线_精品国产一区二区三区2021_国产一级特黄毛片在线毛片_亚洲国产精品成人av_波多野结衣系列18部无码观看a | 日产中文字幕在线观看_男人肌肌捅女人肌肌视频_99精品在线_四虎国产精品成人_在线一级成人_国产一区二区怡红院_欧美另类久久久精品_欧美顶级METART裸体全部自慰 | 91福利一区二区_78色淫网站女女免费_一级黄色视频久久网_青草精品视频_伊人75在线_麻豆私人影院_亚洲欧洲日产国码综合在线_三级免费网址 | 国产精品原创巨作av_馬与人黃色毛片一部_91成人品_国产一极内射視颍一_一级国产_日日日日干干干干_啪视频网站_裸体久久女人亚洲精品 | 青青草视频一区_亚洲高清中文字幕在线看不卡_国产自偷自拍_91丨国产丨蚪窝海角社区_99草在线_欧美人与动性xxxxBBBB_伦xxxx在线_亚洲国产精品一区久久av篠田 | 亚洲成本人无码薄码区_中日字幕大片在线播放_一级毛片免费播放_无码人妻H动漫中文字幕_亚洲黄色a_国产自在自线午夜精品视频_成人国产免费软件_日韩av一区二区三区四区 | 精品素人_中文AV无码人妻一区二区三区_精品露脸国产偷人在视频_国色天香WWW视频_亚洲国产精品综合小说图片区_av无码一区二区三_国产亚洲欧美另类久久_久久久久亚洲AV无码A片男男 | 色欲aⅴ亚洲情无码AV_欧美喷潮久久久XXXXX_国产精品高潮呻吟久久av黑人_亚洲AV无码专区亚洲AV网站_姑娘第7集在线观看_国产成人精选视频在线观看_91视频在线视频_亚洲伦理一区 | 免费在线黄_91国自产精品中文字幕亚洲_一呦二呦三呦精品网站_亚洲爆乳少妇无码激情_青青国产在线视频_超碰1998_日本高清www_看a级片 | 国产精品成人av_777亚洲熟妇自拍无码区_精品成人一区二区_成年片黄色日本大片网站视频_国产精品一区二区在线_亚洲青涩网_国产无遮挡裸露视频免费_中国毛片一级片 | 久久嫩草视频_日韩免费观看av_日韩国产欧美精品在线_久久精品视频18_久久久情_免费精产国品一二三产区区大学生_日本高清不卡中文字幕免费_熟妇女的欲乱在线观看 | 5566成人网_欧美性猛交xxxx乱大交免费看_亚洲成人系列_麻豆国产人妻精品无码AV_欧美AA大片免费观看视频_377人体裸体露私图片_欧美色综合一区二区三区_真实国产精品视频400部 欧美成人久久_精品国产AⅤ一区二区三区桃_无码欧亚熟妇人妻AV在线外遇_俺去啦久久草在线视频_延禧攻略在线_久久久久久久99精品免费观看_天堂久久久久VA久久久久_亚洲精品欧美视频 | 免费视频久久久久_999色综合_天天色成人网_亚洲综合自拍网_绯色av一区二区三区免费看_成人xxxx_久久久久久久久久美女_青青草成人色情视频网 | 亚洲国产精品乱码一区二区三区_日韩精品91_久久中文字幕一区_国产精品久久久久9999_午夜免费精品_伊人网成人网_草久在线播放_伊人亚洲综合影院首页 国产偷伦视频片免费视频_久久影院一区二区三区_成人网免费在线观看_成人无码www免费视频网站软件_黄色网站免费观看视频_色综合天天_5g国产精品影院天天5g天天爽_wwxx在线观看免费 | 国产成人无遮挡在线视频_在线观看亚洲欧美视频免费_3d动漫精品久久一区二区_亚洲国产成人精_日韩一级黄色录像_久久男人av资源网站无码_孕妇奶水仑乱A级毛片在线播放_欧美视频在线观看免费 | 免费动漫黄爽A片在线观看_一区精品视频_91在线无精精品秘?入口九色_av网站免费播放_亚洲综合无码精品一区二区三区_国产精品嫩草99a_av免费看国产_日韩αv在线 | 麻豆影院_免费毛片手机在线播放_日韩成人自拍_狠狠干亚洲色图_老头把我添高潮了A片故视频_韩国一级片免费看_久久久久黄_91精品国产91久久久久 | 国产精品入口_一级片影院_91精品国产一区二区三区在线_欧美www在线观看_久久国产精品影片_96精品_55夜色66夜色国产精品视频_亚洲国产青草 | 黄瓜视频入口永久免费观看_我朋友的妈妈在线_国产色片_国产精品300部_美女黄色在线_成人在线观看亚洲_999国产视频_亚洲av久播在线播放 | 国产亚洲欧美日韩国产片_色在线视频_日韩精品2区_日本护士毛茸茸高潮_国产精品影视在线_色片免费在线观看_操一操干一干_调教女m屁股撅虐调教 | 奇米狠狠干_哈哈哈哈哈第4季免费视频高清_日本网站在线观看一区二区三区_久久久少妇高潮久久久久_四色导航_欧美精品久久久久久久久老牛影院_亚洲狠狠婷婷综合久久久久图片_欧美疯狂xxxxbbbb牲交 | 国产精品成人免费视频网站_色综合视频二区偷拍在线_日本熟妇色一本在线看_日本最新在线观看一区二区三区_国产亚洲专区_综合精品视频_囯产黄色视频一级黄片_久久亚洲aⅴ永久无码精品 | 18禁止导深夜福利备好纸巾_国产福利视频奶水在线_国产V精品V欧美V日韩V_国产亚洲中字幕欧_四虎欧美_青青伊人久久_国产精品久久久久久白浆_黄色一类片 | 欧美人与动牲交免费观看网_99精品国产综合久久精品自在_伊人精品久久_日本熟妇乱人伦XXXX_日本视频在线看_xxxxx18国产_亚洲AV综合色区无码一二三区_久久久久成人片免费观看 |