議程簡介
10/18(星期二) 15:30 - 16:00
千人使用的 DevOps 開發平台,如何解決 K8s 底層資源分配的問題
K8s 導入實戰
雲端原生架構
K8s 維運
中階 中文
由於地端環境使用 Kubernetes 有主機資源限制問題,無法像雲端環境能短時間擴增出 Worker 來應對,因此當資源不足時就會遇到已部署服務出現異常或無法將新服務正確部署成功,以我們公司所使用的 DevOps 開發平台(IIIDevOps)為例,目前有上千位使用者,同時有 300 多個專案在上面進行開發,所配置的 Kubernetes 為 5 個 Worker,大部分時間都能正常運行,但當超過 10 個專案同時觸發 Pipeline 對 Kubernetes 要求建立專案測試環境與各類驗證服務時,即出現突發性的爆量需求,導致整體服務異常甚或停擺狀況。
因此在資源有限的情況下,我們將原本 IIIDevOps 平台核心服務模組與各使用者專案產生的服務於 Kubernetes 上區隔出來,以此來對重要的核心服務提供相較獨立的資源環境,不會因為使用者在專案開發過程中,同時多個 Pipeline 啟動出現瞬間占用資源造成平台的異常問題,來提升平台運行的穩定度。
本議程主要分享我們團隊是如何在維運 IIIDevOps 開發平台的過程中,在資源有限的情況下遇到的資源分配問題的處理方式,以及在處理後所達到的效果。