Abstract
Though widespread interest in software containers is a relatively recent phenomenon, at Google we have been managing Linux containers at scale for more than ten years and built three different container-management systems in that time. Each system was heavily influenced by its predecessors, even though they were developed for different reasons. This article describes the lessons we’ve learned from developing and operating them.
- Bazel: {fast, correct}-choose two; http://bazel.io.Google Scholar
- Burrows, M. 2006. The Chubby lock service for loosely coupled distributed systems. Symposium on Operating System Design and Implementation (OSDI), Seattle, WA. Google ScholarDigital Library
- cAdvisor; https://github.com/google/cadvisor.Google Scholar
- Kubernetes; http://kubernetes.io/.Google Scholar
- Metz, C. 2015. Google is 2 billion lines of code-and it's all in one place. Wired (September); http://www.wired.com/2015/09/google-2-billion-lines-codeand-one-place/.Google Scholar
- Schwarzkopf, M., Konwinski, A., Abd-el-Malek, M., Wilkes, J. 2013. Omega: flexible, scalable schedulers for large compute clusters. European Conference on Computer Systems (EuroSys), Prague, Czech Republic. Google ScholarDigital Library
- Verma, A., Pedrosa, L., Korupolu, M. R., Oppenheimer, D., Tune, E., Wilkes, J. 2015. Large-scale cluster management at Google with Borg. European Conference on Computer Systems (EuroSys), Bordeaux, France. Google ScholarDigital Library
Recommendations
Borg, Omega, and Kubernetes
Lessons learned from three container-management systems over a decade.
Comments