iT邦幫忙

2021 iThome 鐵人賽

DAY 28
0
DevOps

container & k8s 奏鳴曲系列 第 28

[13th][Day28] why k8s

為什麼要用 k8s ?

使用 k8s 的理由有很多,退一萬步來說 .... IT 就是一個由新技術驅動的行業。

docker 這個新興的 container 化技術已被很多公司所採用,而從單點機器走向 cluster 機群已成必然的趨勢,cloud computing 的蓬勃發展順便推了一把。k8s 作為目前唯一被業界廣泛認可並看好的 docker 分散式系統解決方案,接下來新建立的系統更容易優先考慮 k8s,而舊系統如果要重新建立,也很有可能從 k8s 著手,或許並不會一開始就轉換的順利,但會漸漸套用 k8s 的思維。

不論在企業內部的傳統機房,或是被託管的公有雲上, k8s 都能彈性的融入其中。

使用 k8s 能夠獲得那些好處呢?

團隊可以用「精兵政策」來開發複雜系統了。傳統管理模式光安裝、佈署、更版、維運 ... etc 動著十幾個人起跳,還需要某些 hard code 的技術才能設計實作並維運一個分散式系統。採用 k8s 後,只需一個精兵小隊就能輕鬆應對,

一名架構師專注於系統的「服務元件設計」,開發人員便能無後顧之憂地進行主服務的開發,這並不是因為我們少做了什麼,而是 k8s 幫我們做了很多。

k8s 可以說是為微服務架構「量身訂做」,微服務架構的核心是將一個巨大的單體應用分解成多個且戶相連接的單點服務

一個為服務背後可能由多個相同的 pod 支撐, pod 的數量可以隨著系統的負擔變化進行調整,k8s 本身的 load balance 發揮了很大的作用。

微服務架構讓每個服務可以由專門的開發團隊來負責,開發者能夠自行選擇要用什麼樣的技術來寫,給予大規模的團隊更大更多的彈性

每個微服務,獨立開發、升級、擴展,使得系統具備更高的穩定性,因應需求的反應速度能夠變得更快。

Google , Amazon , eBay , NetFlix ... 等多個大型網路公司都採用了微服務架構,google 將微服務架構的基礎建設直接包裝到 Kubernetes 解決方案中,讓使用者能更直接的應用微服務架構解決複雜業務系統上的架構問題。

我們的系統可以隨時「整個」「搬遷」到公有雲(GCP , Amazon , Azure ... etc)上,k8s 最初的目標就是架在 google 自己的 GCP 上。

k8s 系統架構擁有強大的橫向擴展能力。對於網路公司來說,使用者數 = 資產,誰擁有更多的用戶,誰就能在競爭中勝出,橫向擴展能力是網路服務的重點之一。 k8s cluster 可以從只包含幾個 node 的小叢集平穩地擴展成上百個 node ,我們利用 k8s 提供的工具,可以線上完成 cluster 擴充。快速的分解掉大量使用者同時使用時所帶來的巨大壓力。


上一篇
[13th][Day27] cluster
下一篇
[13th][Day29] node
系列文
container & k8s 奏鳴曲30

尚未有邦友留言

立即登入留言