在上一篇文章中,簡單介紹了 Kubernetes 的架構,接下來簡介 Kubernetes 在部屬 app 時的單位 Pod 。 Pod 對多容器的支持是 K8 最基礎的設計理念,但 Pod 應該怎麼被管理呢 ? 怎麼和外網連線呢 ? 這些部分由如下元件提供功能解決 :
- Deployment
- Service
- Ingress
像在實現進階的操作如:負載均衡、滾動更新、安全與監控等概念,都會跟這些元件有關係。

在上一篇文章中,簡單介紹了 Kubernetes 的架構,接下來簡介 Kubernetes 在部屬 app 時的單位 Pod 。 Pod 對多容器的支持是 K8 最基礎的設計理念,但 Pod 應該怎麼被管理呢 ? 怎麼和外網連線呢 ? 這些部分由如下元件提供功能解決 :
- Deployment
- Service
- Ingress
像在實現進階的操作如:負載均衡、滾動更新、安全與監控等概念,都會跟這些元件有關係。
從第一次聽到 Kubernetes 以來,已經有一年多了,永遠都記得 k8s 名稱的由來只是保留「開頭 K」及「結尾 S」,然後中間的英文字母數量剛好是 8 個英文字就這樣命名了…。全球三大雲服務商,AWS、Azure 和 GCP 都有提供託管 Kubernetes 集群服務( EKS、AKS、GKE ),可見其有名火熱程度。現在終於有機會在工作上碰到這項技術,就來寫些簡單筆記吧 !
ECS 很常拿來與 Kubernetes 比較,而 2017 aws 又進一步宣佈了 Amazon Elastic Container Service for Kubernetes(EKS),使 aws 平台可以託管 k8s 服務。EKS 服務可以省去安裝以及操作自己的 Kubernetes 叢集的時間,輕鬆的在 AWS 上執行 Kubernetes;進一步地,可使用 Fargate 模式在 EKS 上,可連 node 機器都不用管理。
Amazon Elastic Container Service(ECS)標誌著 AWS 進入 CaaS 市場。在 Kubernetes 還沒有出現時,各家雲端大廠對於容器化的管理工具都有自己實作。對應在 AWS 上的容器編排平台,是在 2014 年宣佈的 ECS 服務。後續進一步改進,發布 ECS with Fargate,可讓我們運行 container,而無需管理伺服器或集群。 故 Amazon ECS 具有兩個常用模式:
- EC2 啟動類型
- Fargate 啟動類型
以下分別進行介紹。
2017年,AWS 推出了 Fargate,這是一個用於部署和管理容器的模式,代表用戶無需管理 EC2 基礎設施。 Fargate 的核心理念就是 Serverless ,讓 ECS 用戶專注於任務和服務定義,而不是管理集群基礎設施,Fargate 可配合用於 ECS 和 EKS。
ECS (Elastic Container Service) 和 EKS(Elastic Kubernetes Service)都是 AWS 上提供的 Container Orchestration ( 容器管理工具 ),核心都是中央控制管理運行的容器化應用程式,以下來簡單介紹一下吧。