李海創,丁岳偉,高 華
(上海理工大學 光電信息工程學院, 上海200093)
基于網絡動態調整的應用滾動更新的優化
李海創,丁岳偉,高 華
(上海理工大學 光電信息工程學院, 上海200093)
為保證云計算服務的持續運行,云計算平臺需要支持動態更新技術。針對過去主流的動態更新技術如滾動更新存在多版本混合的問題,文中提出了基于網絡動態調整的優化方案。通過將更新后的服務實例與待更新的服務實例在網絡上隔離,使舊版本服務無法訪問有兼容性問題的新版本服務,從而解決了多版本混合問題,并且在Docker Swarm的基礎上設計并實現了原型系統,通過實驗驗證了該方案的有效性。
動態更新;Docker Swarm;多版本混合問題;云服務可用性
AbstractWith the development of cloud computing services, more and more applications through the clo-ud platform to provide their services. In order to ensure the continuous operation of these services, cloud com-puting platform needs to support dynamic updating technology. In the past, popular dynamic updating technolog such as rolling updating has mixed version problem. in order to solve this problem, we have proposed a dyn-amically adjusting network strategy. The mixed version problem is solved by isolating the updated service insta-nce from the service instance to be updated on the network, so that the old version service can not access the new version service with the compatibility problem. We design and implement the prototype system on the ba-sis of Docker Swarm, and verify the effectiveness of the scheme through experiments.
Keywordsdynamic updating;Docker Swarm;mixed version problem;cloud service availability
隨著云計算服務的發展,越來越多的商業應用通過云平臺來提供它們的服務。據統計,一些流行的云服務,例如Facebook、Google Docs和Wikip-edia,平均每隔7~135天就會發布新版本[1]。采用動態更新的技術可以保證這些云服務在更新過程的可用性,在PaaS平臺下已有很多這方面的研究。而最近隨著以Docker為代表的容器技術的發展,CaaS(Container as a Service)和與之關聯的微服務架構被越來越多的開發者所推崇。CaaS和微服務架構同樣面臨著動態更新問題的考驗[2-5],本文針對該問題創新性地提出一種基于網絡動態調整的策略,來解決滾動更新(動態更新中一種主流的方法)中系統一致性的問題,同時提供了Compose[6]翻譯引擎來幫助微服務架構的應用能以一個整體在Docker Swarm[5]下進行滾動更新。
隨著以Docker為代表的容器技術的發展,越來越多的應用采用微服務架構范式在CaaS平臺上部署。……