国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

站長之家,中國草根站長新聞、建站經驗、素材資源交流平臺!
分類導航

站長新聞|網站運營|建站經驗|網站優化|站長資源|站長源碼|

服務器之家 - 站長之家 - 建站經驗 - 探究AWS所提供的針對Docker的EC2容器服務

探究AWS所提供的針對Docker的EC2容器服務

2020-06-11 20:37InfoQBenjamin Wootton 建站經驗

這篇文章主要介紹了探究AWS所提供的針對Docker的EC2容器服務,Docker容器是當下最為火爆的虛擬化和集群技術,亞馬遜的AWS自然也在Docker上有很大動作,需要的朋友可以參考下

EC2容器服務(ECS)是亞馬遜web服務(AWS)新發布的一款產品。

ECS的目的是讓Docker容器變的更加簡單,它提供了一個集群和編排的層,用來控制主機上的容器部署,以及部署之后的集群內的容器的生命周期管理。

ECS是諸如Docker Swarm,Kubernetes,Mesos等工具的替代,它們工作在同一個層,除了作為一個服務來提供。這些工具和ECS不同的地方在于,前者需要你自己來部署和管理,而ECS是“作為服務”來提供的。

ECS是基于一種專有的集群技術,而不是通過諸如Docker Swarm,Kubernetes,Mesos等引擎實現的。這可以和Google容器引擎(GCE)作一對比,GCE后臺使用的就是基于Kubernetes的。

我們為什么需要容器編排?

由ECS,Swarm,或者Kurbernetes所提供的容器編排這一層,在整個部署和運行基于容器的應用程序的整個藍圖中占有非常重要的位置。

首先,我們為了可擴展性需要容器組成集群。隨著我們負載的增長,我們需要增加更多的容器,橫向的擴展它們,跨服務器來并行的處理更高的負載。

第二,我們需要組建容器集群來保證健壯性和高可用性。當一臺主機或一個容器失效時,我們希望容器可以重新構建,或許是在另外一臺健康的主機上重新啟動,從而讓整個系統不會受到任何的影響。

最后,編排層的工具所提供的一個重要功能就是抽象,讓開發者遠離具體的底層實現細節。在容器化的世界中,我們毋需關心每個獨立的主機,只需要關注我們期望的容器有多少在運行,在‘適當的地方’運行。編排和集群工具為我們做這些,讓我們能夠輕松的將容器部署到集群中,而且還能夠計算出最佳的調度方式,從而決定容器應該運行在哪些主機上。

設計健壯性和高性能分布式集群系統的難度是非常大的。所以諸如Kubernetes和Swarm這樣的工具讓我們自己毋需去構建集群。ECS借此更進一步,通過簡化編排層的設置、運行和管理來實現毋需人工參與。基于此緣故,ECS無疑是哪些使用容器來運行應用的開發者們應該密切關注的項目。

ECS架構

ECS并非是一個黑匣子的服務,它運行在你的EC2服務實例中,你可以使用SSH登錄,像管理其它的EC2服務一樣進行管理。

在集群中的EC2服務均會運行著一個ECS代理,ECS代理是一個連接主機到中心的ECS服務的輕量級進程。ECS代理響應主機注冊到ECS服務,且掌控所有的請求,用于容器的部署或者是諸如啟動/停止容器之類的生命周期事件。順便說一下,使用go實現的ECS代理已經開源。

當創建一個新的服務器時,我們既可以選擇手動的配置ECS代理,也可以選擇使用預構建的已經配置完畢的AMI鏡像。

通過亞馬遜CTO Werner Vogels的博客,我們得知集中的服務已經邏輯上分為集群管理和在主機上控制容器部署的調度。這背后的緣由就是讓容器的調度成為可插拔式的,所以我們甚至可以使用其它的調度器,例如Mesos或者是其它開發者自定義的調度器。自定義調度器的文檔在本文撰寫時還在開發當中,但是我們可以閱讀此博客以及參考其源代碼,這是目前為止最佳的參考實踐。

下面的示意圖很好的演示了ECS集群的邏輯層次:容器實例包含多個任務,任務包含多個容器,EC2容器實例集群可以分散到多個可用區域中,Elastic Load Balancers可以用于跨任務的動態分布負載。此圖可以幫助讀者在閱讀接下來的內容整理思路。
探究AWS所提供的針對Docker的EC2容器服務

服務和任務

在ECS中,Docker負載被描述為任務。

一個任務本質上是定義了一個或多個容器,其中包括你打算運行的容器的名稱(和Docker Hub的名稱保持一致),以及在容器實例啟動時相應的端口和磁盤卷的映射信息。

當任務運行時,則啟動了底層的容器。當所有的容器進程完成使命時,任務也就結束了。任務既可以是很短的也可以是長時間運行的,舉例來說,提供一個數據處理任務的短的事件驅動,或者是一個web服務進程。

這里需要提醒一件事情,那就是架構上給定的一個任務,其所有的容器均運行在同一臺主機中。如果我們打算定位容器的話,那么就使用在同一個任務下來組織它們的方法來實現。如果我們打算將服務運行在不同的主機,我們則僅需定義多個任務來實現控制即可。初看這似乎是一種約束,但最終它給我們的和Kubernetes pods一樣的對容器定位在一定程度的控制能力。

為了說明上述問題,如下面截圖所示,我們可以看到定義了一個特定的任務,此任務擁有一個容器,容器托管nginx web服務。
探究AWS所提供的針對Docker的EC2容器服務

除了任務之外,服務是ECS概念中排名第二重要的。一個服務是給定一個任務所請求運行的特定的實例數量。舉例來說,如果我們有一個如上述所定義的運行nginx web服務容器的任務的話,我們則要定義一個服務,來請求3個或更多的實例組成集群,從而完成web服務的任務。

服務是ECS如何提供彈性的保證。當一個服務啟動后,服務就會監控其中的任務是否是活動的,實例的數量是否正確,以及其中容器的數量是否正常。如果任務停止運行了,或者是無響應了,又或者是出現問題了。服務就會請求啟動更多的任務,以及必要的話清理任務。

下面截圖所示,在集群中一個nginx服務被定義為3個運行的任務。這些任務個個都處于運行狀態。
探究AWS所提供的針對Docker的EC2容器服務

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产视频久久 | 91中文字幕在线观看 | 国产午夜精品一区二区三区 | 三区在线 | 欧美一级精品片在线看 | 精品香蕉视频 | 91久久久久久久久久久久久 | 91久久国产精品 | 国产日韩欧美一区 | a级三四级黄大片 | 亚洲精品电影在线观看 | 亚洲视频在线观看 | 老妇女av | 亚洲男人的天堂网站 | 精品女同一区二区三区在线绯色 | 国产黄色免费网站 | 国产毛片18片毛一级特黄日韩a | 精品国产乱码久久久久久牛牛 | 98久9在线 | 免费 | 精品一区二区三区蜜桃 | 日本中文字幕在线免费观看 | 久久h | 欧美全黄 | 男人的天堂中文字幕 | 97久久精品人人做人人爽50路 | 91av爱爱 | 蜜桃一区二区 | 99热热热| 国产精品乱码一区二区三区 | 国产成人毛片 | 天天操人人干 | 色综合久久88色综合天天6 | 啵啵羞羞影院 | 99免费在线播放99久久免费 | 亚洲综合中文网 | 午夜国产 | 久久精品一| 精品日韩视频 | 亚洲国产精品一区二区第一页 | www.av在线| 日韩中文字幕一区二区三区 |