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外包服務
二維碼 關閉
主站蜘蛛池模板: 欧美日韩国产影院_日日爱影院_国产成人精品av_97澡人人澡人澡人人澡天天_国内成人综合_日本不卡一区二区三区_国产精品亚洲综合一区在线_久草伦理 | 午夜精品福利视频_国产日韩欧美东南在线_日韩美国1级大片_99视频国产热精品_久草热精品_18无码粉嫩小泬无套在线观看_强壮的公次次弄得我高潮a片日本_亚洲伦理片在线观看 | 青青草免费观看视频_久久精品国产99国产精2020新增功能_亚洲精品无码久久久久秋霞_免费看黄网站在线观看_国产亚洲综合精品_亚洲永久在线观看_日韩av片永久免费网站_www亚洲精品少妇裸乳一区二区 | 无码专区永久免费AV网站_日本少妇被黑人xxxxx软件_狂野欧美激情性XXXX按摩_av喷水高潮喷水在线观看com_豆奶导航_中国av一级片_欧美一区二区三区国产精品_国产精品丝袜肉丝出水 | 国产欧洲精品色在线_2018天天干夜夜操_亚洲色无色A片一区二区_女性裸体无遮挡无遮掩视频蜜芽_最近免费中文字幕在线mv视频8_欧美国产日本高清不卡_日本一卡二卡3卡四卡网站精品_99久e精品热线免费 | 2018av天堂在线视频精品观看_特级毛片aaaa级毛片免费_免费观看久久久_免费视频一区二区_大地资源在线视频在线观看_欧洲少妇性喷潮_精品亚洲va在线va天堂资源站_国产免费一区二区三区播放 久久综合久久精品_人人妻人人澡人人爽人人精品AV_97久久夜色精品国产九色_老司机深夜福利视频_无码人妻精品1国产婷婷_china直男gay国产_色妹子综合网_最近最新中文第一页 | 日本三级日本三级日本三级极_纯欧美一级毛片免费_免费大片av手机看片_国产交换配乱婬视频偷_韩国hd高清xxxx视频_国产成人AV激情在线播放_久久久久久久久久久97_高清性做爰大片免费视频 | av在线h_久免费视频_在线亚洲欧美日韩精品专区_欧美最猛黑人xxxx黑人猛叫黄_91传媒麻豆激情在线观看_久久中国精品_伊人久久无码大香线蕉综合_草草影院第一页yyccc | 野花社区免费观看视频高清_国产毛片18片毛一级特黄日韩a_aa视频免费看_国产午夜一级_91大神一区二区三区在线观看_亚洲av成人永久无在线观看_中文字幕av免费在线_新超碰97 | gogogo在线播放中国_国产视频久久网_欧美日韩在线观看视频_久久91超碰人人澡人人爽_青草草免费视频_青青青国产精品一区二区_免费亚洲一区二区_无码潮喷A片无码高潮免费 | 啄木乌欧美一区二区三区在线_免费一级a毛片夜夜看_亚洲第一狼人天堂久久_性猛交╳XXX乱大交_韩国激情高潮无遮挡hd_巨胸喷奶水WWW视频网站_蜜桃av入口观看_女性自慰网站免费观看w | 国产精品久久久天天影视香蕉_黄色毛片前黄_一本色道久久88亚洲精品综合_青青草欧美_国产一区二区三区天码_久久久精品区_怡春院性无码免费视频_成人短篇合集t×t | 西西人体午夜大胆无码视频_亚洲不卡系列_亚洲第一免费看片_成人国产精品秘片多多_日韩欧美一二三区_午夜久久久久久_99精品不卡一区二区三区_国产做A爰片毛片A片美国 | 国产在线色_91麻精品国产91久久久久_麻豆特级毛片_无码骚夜夜精品_少妇精品久久_a级毛片免费_九九黄色_91精品视频网 | 7777日本精品一区二区三区_在线精品国产欧美_人妻无码αv中文字幕久久_精品999www_午夜精品区_视频免费一区_蜜桃成人免费视频在线播放_黑人巨大两根一起挤进交换 | 二区三区在线_国产好吊视频在线观看_91丨九色丨黑人外教_欧美黄色网络_久久性网站_精品国产京东免费人成网站_美脚丝袜一区二区三区在线观看_91麻豆国产福利在线观看宅福利 | 亚洲天堂一区二区三区四区_好爽好黄好刺激的视频_中文字幕一区二区三区av_在线黄色观看_提莫影院AV毛片入口_丰满的人妻HD高清日本_国产精妇在线观看第一区_福利国产 | 日韩一级大片_久久久久区_黄色大片一级片_国产成年无码V片在线_一级黄色伦理片_毛片女女女女女女女女女_成人免费在线_无码精品人妻一区二区三区九里奈 | 久久久久久综合岛国免费观看_精品国产乱码久久久软件使用方法_wwwwww日本_一边摸一边桶一边脱免费视频_黄色三级视屏_在线网址91_欧美成人乱码一二三四区_欧美一级无毛 | 精品二区在线_欧美日韩亚洲中文字幕一区二区三区_欧美精品_伊人逼逼_欧美熟乱妇_最近的2019中文字幕免费_亚洲中文字幕av无码区_www.av日韩 | 国产a∨国片精品青草视频_在线观看成人无码AV_欧美三级日本三级_日本激情视频一区_老司机精品线观看视频_久久精选_国产在线日韩欧美_又色又爽视频 | 在线视频青青草_久久精品天天中文字幕人妻_7777色鬼XXXX欧美色妇_国产98色在线_国产乱人伦偷精品视频免_中文字幕乱码亚洲精品一区_精品久久久久久中文字幕一区二区_国产一卡三卡四卡无卡精品 | 五月天久久777_大帝av在线一区二区三区_99c视频色欲在线_中文字幕午夜精品一区二区三区_成人在线免费看_免费看黄色大全_亚洲午夜高清国产拍_天天狠天天情天天躁 | 亚洲伦理在线_国产亚洲一级高清_国产精品男人的天堂_爱操视频在线观看_九色精品免费永久在线_99热这里只精品_国产欧美熟妇另类久久久_欧美182国产在线视频 | 精品国产一区在线观看_国产精品久久久久精_亚州黄色_午夜精品99久久免费_伦人伦XXXX国语对白_中文字幕久久久人妻无码_在线播放网址亚洲_4455国产精品视频 | 精品99久久_国产精品在线看_大香伊蕉最新视频_亚洲色大18成人网站WWW在线播放_一区二区免费视频_国产午夜福利片1000无码_久久精品亚洲人成影院_久草在线手机视频 | 日本爆乳片手机在线播放_凹凸世界第三季免费_久久人人槡人妻人人玩夜色AV_国产白嫩受无套呻吟_国产最新精品_精品久久久久久一区二区里番_国产又黄又大又粗视频_在线观看视频网站www色 | 天天看国91产在线精品福利桃色_午夜国产精品成人_麻豆手机在线观看_又粗又硬又黄又爽的免费视频_久久国产乱子精品免费女_a性视频_蜜桃AV噜噜一区二区三区_国产色视频免费 | 女人久久久_亚洲视频在线网_和大佬在一起的三百六十五天免费观看_久久99精品久久久久久秒播九色_免费无码又爽又刺激动态图_曰韩一二三区_亚洲日本成人在线观看_日韩美女在线观看 | 伦理片一级二级片_永久黄网站色视频免费_麻豆国产手机福利看片_国内av免费_久久AV喷潮久久AV高清_亚洲AV无码成H在线观看_一级片免费观看_日本亚洲视频 | 久久久久色_免费精品一区二区三区A片在线_人妻系列无码专区无码专区_欧美26uuu免费视频_国产娇小性色xxxxx视频_人人人人爱_含着她的花蒂啃到高潮在线观看_国产超a级动作大片中文字幕 | 不卡一区二区三区视频_亚洲综合热_美女自卫慰黄网站_国产一区二区精品久久岳_精品无码欧美一区二区三区不卡_亚洲精品综合精品自拍_手机看片日本_熟妇人妻无乱码中文字幕真矢织江 | 日本熟妇人妻xxxxx_日本人伦一区二区三区_久久另类_欧美激情影音先锋_草久久精品_亚洲va天堂va在线va欧美_欧美GAY猛男GAYA片18禁_欧美性久久久 | 麻豆911传媒_视色视频_91成品人网页进入入口_国产精品亚洲一区二区三区天天看_无码人妻aⅴ一区二区三区鲁大师_男人放进女人阳道动态图_久久久网站_99热99热99 | 天堂网在线观看视频_欧美乱妇日本无乱码特黄大片_免费无码专区在线视频_国产一片姪乱洗澡_久久久久久久av麻豆果冻_不卡在线一区2区三区_91超在线_国产精品女人久久 | 欧美综合影院_国产伦精品一区二区三区妓女_午夜少妇影院_免费一级毛片_毛片全网站_欧美丰满熟妇性xxxx_亚洲人成小说网站色_国产一国产aa毛片 | 国产一级午夜_欧美成人免费观看视频_日韩欧美在线观看_人人人人人你人人人人人_亚洲成人精品网_欧美城天堂网地址_日韩精品99_91精品国产日韩一区二区三区 精品国产日韩专区欧美第一页_亚洲丰满少妇xxxxx高潮对白_国产xxxx搡xxxxx搡麻豆_另类视频一区二区三区_伦理片一区二区三区_国产中文区4幕区2023_精品福利视频一区二区三区_美国十次狠狠色综合AV | 69av视频在线_色悠久久久久综合网伊_亚洲伦产精品一区二区三区_欧美日韩国产va另类_精品一区二卡三卡四卡分类_欧美日韩免费大片_被两个两个黑人吃奶4P_久久久四虎 | 国产激情视频网站_国产A级毛片色咪味_成人在线观看一区二区三区_极品粉嫩嫩模大尺度无码_亚洲国产精品一区二区久久亚洲午夜_亚洲男人的天堂在线_国产精品推荐天天看天天爽_麻豆视传媒 | 久久99精品久久久久久秒播放器_18禁勿入免费网站入口不卡_WWW亚洲色大成网络.COM_上流社会在线_亚洲看片lutube在线观看_麻豆亚洲高清无矿砖码区_在线国产1区_国产欧美精品一区二区三区介绍 | 男人的天堂Aⅴ在线_国产成人无码av一区二区在线观看_欧美韩国日本一区二区三区_7194中文乱码一二三四芒果_一级片xxxx_99re在线免费视频_av在线干_国产精品美女久久久久久久久久久 |