Che-Chia Chang
Che-Chia Chang
演講
發文
專案
皮件
水肺
微軟MVP
明亮
暗黑
自動
中文 (繁體)
English
borg
Borg Omega and Kubernetes Translation 全文翻譯
前言 這是原文完整版本。太長不讀 (TL;DR) 請見Borg Omega and Kubernetes 前世今生摘要 原文:https://storage.googleapis.com/pub-tools-public-publication-data/pdf/44843.pdf 摘要 在 container 技術夯起來前,Google 已經做了 container 十幾年,過程中發展出需三套容器管理系統。雖然每一代系統的開發需求不同,但每一代都深受上一代影響。這篇文章描述 Google 開發這些系統時,學到的經驗。 第一套 container management 系統是 Borg,為了管理 1. 長期執行的服務 2. 批次的短期工作 (batch job),原本分別是由 Babysitter 與 Global Work Queue 兩套系統分開管理。後者的架構深刻影響 Borg,但 Global Work Queue 專注於 batch job。兩套系統都在 Linux control groups 之前。Borg 將上述兩種應用放在共享的機器上,來增加資源的使用率,以節省成本。這種共享基於支援 container 的 Linux Kernel (Google 也貢獻許多 Linux kernel container 程式碼),提供更好的隔離 (isolation) 給延遲敏感的使用者服務 (latency-sentitive user-facing services),以及消耗大量 cpu 的 batch 程式。
最近更新於 9月 11, 2023
5 閱讀時間(分鐘)
Borg Omega and Kubernetes TLDR 摘要翻譯
這是原文翻譯的太長不讀 (TL;DR) 版本。完整翻譯請見Borg Omega and Kubernetes 前世今生浩文完整翻譯 原文:https://storage.googleapis.com/pub-tools-public-publication-data/pdf/44843.pdf 前言 Borg 以前就有應用管理系統,那時還沒有 Linux control group Borg 是第一套統一的 container-management system Borg 仍被大規模的使用,有許多功能而且非常堅固 Omega 繼承 Borg 上成功的設計,並希望改進 Borg 的生態系 Kubernetes 開源 透過 REST API 溝通 client 應用開發導向,著重於開發者的需求,希望能簡單的部署複雜的系統 Container Google 使用 Container 來提昇 utilization 把 batch jobs 跟預留資源的服務 (user-facing app) 放在一起,使用閒置時的資源跑 batch job 現代 container 的定義是 runtime-isolation 與 image Application-oriented infrastructure container 使用久了,不只滿足 utilization 的需求 資料中心從機器導向變成應用導向 Container 封裝環境,把機器與 OS 的依賴抽象化 應用不依賴 部署流程 runtime infrastrcture Container scope 在應用上,專注在應用管理而不是機器管理 Application environment cgroup, chroot, namespace 原本的目的是為了保護應用,不被其他應用影響 混合使用可以在應用與 OS 間產生抽象層,解耦 app 與 OS 提供完全相同的部署環境,避免切換環境(ex.
最近更新於 9月 11, 2023
3 閱讀時間(分鐘)
2020 IT邦幫忙鐵人賽
2020 IT邦幫忙鐵人賽
最近更新於 9月 11, 2023
1 閱讀時間(分鐘)
引用
×