容器化部署進階— Kubernetes介紹

更新於 發佈於 閱讀時間約 4 分鐘

※ 思考如何方便有效管理多個Container:

  • 批量部署:在多台主機上同時部署多個容器,以提高擴展性和運行效率。
  • 水平擴展:透過增加 多個相同的服務實例 來應對更大的流量或負載,而使用者會感覺這些實例是一個單一服務,這通常是透過負載均衡來實現的。
  • 版本管理:讓新版本的應用程式順利上線,避免影響使用者體驗。
  • 設定管理:管理設定檔去做到同一個設定,可以給不同的容器使用。不同的容器有不同的設定檔。
  • 自我修復:系統在遇到錯誤或故障時,能夠 自動偵測並恢復正常運作,而無需人工介入。
  • 負載均衡:將網路流量或請求分配到多台伺服器或容器,以確保系統穩定並提高效能。
  • … 還有一大堆

※ Kubernetes介紹:

由 Google 開發的開源容器管理系統

•官方文檔 https://kubernetes.io/

• 以「集群 (Cluster)」為單位。

• 從硬體層面上,集群由多台主機組成。

• 抽象層面上,由多個不同類型的「元件」組成。

• 每個「元件」都通過 yaml 檔來進行設定。

※ Nodes:一個集群中的硬體單位

  • 分為 Master Node 和 Worker Node。
  • 一個 Node 是硬體層面上的一台真實主機,也可以是虛擬機或雲端主機。
  • Master Node 負責管理集群和接受使用者的命令。
  • Master Node 也負責 Worker Nodes 之間的通信。
  • Worker Nodes 根據 Master Node 的調度來運行服務。

※ 元件:Pod

  • 一個 Pod 是 Kubernetes 中實際執行的最小單位。
  • 一個 Pod 可以包含多個 Container,且彼此相通。
  • Pod的yaml設定檔
raw-image

內容解說:

1. apiVersion: v1 :在第一行宣告使用的是 Kubernetes API 的哪個版本。

2. kind: Pod:設定檔是什麼類型的元件。定義的是 Pod 元件。

3. metadata:關於元件的相關設定。name: nginx:指定 Pod 的名稱為 nginx,這樣 Kubernetes 可以識別該 Pod。

4. spec:真正描述元件的相關設定。定義了 Pod 的具體行為,包括容器的配置。

  • containers:是一個陣列。列出該 Pod 內的所有容器。
  • name: nginx:容器的名稱為 nginx
  • image: nginx:1.14.2:該容器使用 nginx:1.14.2 映像(Docker Image)。
  • ports:可以指定對外開放的port有哪些?

※ 元件: Deployment

  • 一個Deployment相當於預先設定好的「一組」 Pods,「一組」就是很多個內容相同的Pod。
  • 一個 Deployment 會自動啟動並管理多個相同的 Pods。
  • 在服務升級版本時,Deployment 可以確保服務不被中斷。
  • Deployment的yaml設定檔
raw-image

※ 元件: Service

內部Pods與外部通信方式,分成三種型態

  1. ClusterIp讓集群內的其他服務可以彼此互相訪問。
  2. NodePort:在所有 Node 打開一個 Port,這個 Port 會導向設定的 Pods。
  3. LoadBalancer:負載均衡,需要搭配雲端平台提供的服務來使用。

※ 元件 : Ingress

用來管理發往內部的網絡流量的路由規則。

raw-image














留言
avatar-img
留言分享你的想法!
avatar-img
奧莉薇走在成為後端工程師之路上
19會員
142內容數
全端網頁開發專業知識分享
2025/05/20
※ 首先需要安裝Docker: 網址:https://www.docker.com/ 進入Get started:選擇下載版本 確認安裝版本: docker -v ※ 編寫Dockerfile:打包Docker鏡像腳本 專案跟目錄新增文件: 1.第一行要以node的Docker ima
Thumbnail
2025/05/20
※ 首先需要安裝Docker: 網址:https://www.docker.com/ 進入Get started:選擇下載版本 確認安裝版本: docker -v ※ 編寫Dockerfile:打包Docker鏡像腳本 專案跟目錄新增文件: 1.第一行要以node的Docker ima
Thumbnail
2025/04/26
※ 場景: 即時聊天應用: 設計一個支持多房間功能的即時聊天平台,像 WhatsApp、LINE或Facebook Messenger,提供文字、語音、視訊聊天功能,方便管理群組聊天。 功能亮點:加入特別功能,例如可加入多房間功能、使用者名單、表情符號支持、文件分享或訊息已讀未讀狀態。 展示
2025/04/26
※ 場景: 即時聊天應用: 設計一個支持多房間功能的即時聊天平台,像 WhatsApp、LINE或Facebook Messenger,提供文字、語音、視訊聊天功能,方便管理群組聊天。 功能亮點:加入特別功能,例如可加入多房間功能、使用者名單、表情符號支持、文件分享或訊息已讀未讀狀態。 展示
2025/04/26
※ 先建立基本的express後端服務: 1.建立新資料夾:Socket mkdir socket 2.進入資料夾:Socket cd ​bsocket 3. 安裝 Experss 到專案中 npm init -y //初始化專案,建立 package.json 檔 npm insta
Thumbnail
2025/04/26
※ 先建立基本的express後端服務: 1.建立新資料夾:Socket mkdir socket 2.進入資料夾:Socket cd ​bsocket 3. 安裝 Experss 到專案中 npm init -y //初始化專案,建立 package.json 檔 npm insta
Thumbnail
看更多
你可能也想看
Thumbnail
孩子寫功課時瞇眼?小心近視!這款喜光全光譜TIONE⁺光健康智慧檯燈,獲眼科院長推薦,網路好評不斷!全光譜LED、180cm大照明範圍、5段亮度及色溫調整、350度萬向旋轉,讓孩子學習更舒適、保護眼睛!
Thumbnail
孩子寫功課時瞇眼?小心近視!這款喜光全光譜TIONE⁺光健康智慧檯燈,獲眼科院長推薦,網路好評不斷!全光譜LED、180cm大照明範圍、5段亮度及色溫調整、350度萬向旋轉,讓孩子學習更舒適、保護眼睛!
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
安裝環境需求 64位元Linux,核心版本為3.1以上,且能滿足Ducker安裝環境。 機器之間要能夠互通。 外部存取權限。 硬體資源:兩核心CPU、8G記憶體、硬碟30GB以上。 安裝Kubeadm與Ducker Kubeadm是Kubernetes的一鍵部署工具。 增加Kube
Thumbnail
安裝環境需求 64位元Linux,核心版本為3.1以上,且能滿足Ducker安裝環境。 機器之間要能夠互通。 外部存取權限。 硬體資源:兩核心CPU、8G記憶體、硬碟30GB以上。 安裝Kubeadm與Ducker Kubeadm是Kubernetes的一鍵部署工具。 增加Kube
Thumbnail
在實際生產中,容器化技術開始走向「容器編排技術」,如:Kubernetes。因為Docker無法獨立支撐大規模容器化部署。 Kubernetes起源於Borg系統,所以在大規模的叢集管理,優於其他容器編排技術。它提供拉取映像檔、拉取執行容器、路由閘道、水平擴充、監控和備份等,除外還可以自動化處理容
Thumbnail
在實際生產中,容器化技術開始走向「容器編排技術」,如:Kubernetes。因為Docker無法獨立支撐大規模容器化部署。 Kubernetes起源於Borg系統,所以在大規模的叢集管理,優於其他容器編排技術。它提供拉取映像檔、拉取執行容器、路由閘道、水平擴充、監控和備份等,除外還可以自動化處理容
Thumbnail
本篇說明如何利用Kubernetes特色,將PostgreSQL DB以HA的架構來提供服務,並說明相關的實作流程與說明。
Thumbnail
本篇說明如何利用Kubernetes特色,將PostgreSQL DB以HA的架構來提供服務,並說明相關的實作流程與說明。
Thumbnail
當您在K8S Cluster中使用Harbor作為容器鏡像的儲存庫時,隨著應用服務鏡像的增加,如何透過內建機制將一臺Harbor的內容同步到另一個Harbor就變得愈來愈重要。本文將介紹如何透過內建機制同步Harbor的內容以及支援Harbor同步到其他相容的Image Registry的方式。
Thumbnail
當您在K8S Cluster中使用Harbor作為容器鏡像的儲存庫時,隨著應用服務鏡像的增加,如何透過內建機制將一臺Harbor的內容同步到另一個Harbor就變得愈來愈重要。本文將介紹如何透過內建機制同步Harbor的內容以及支援Harbor同步到其他相容的Image Registry的方式。
Thumbnail
前言 上次我們初步體驗 Docker 快速佈署能力,今天我們要來講解 Dockerfile、Docker Image 與 Docker Container 這些常見的名詞,我們來了解在我們佈署的時候做哪些事情 Docker 佈署流程 首先看到如下圖上半部,在我們一個完整的佈署流程,我們會先將我
Thumbnail
前言 上次我們初步體驗 Docker 快速佈署能力,今天我們要來講解 Dockerfile、Docker Image 與 Docker Container 這些常見的名詞,我們來了解在我們佈署的時候做哪些事情 Docker 佈署流程 首先看到如下圖上半部,在我們一個完整的佈署流程,我們會先將我
Thumbnail
引言 在當今的技術世界中,Kubernetes 已成為容器化應用的領導平台。作為一個高效的容器編排系統,它不僅管理著容器的部署和擴展,還提供了必要的自動化支持,以保證應用的高可用性和性能。在這個框架中,自動擴展功能起著至關重要的作用,特別是在面對不斷變化的負載和需求時。
Thumbnail
引言 在當今的技術世界中,Kubernetes 已成為容器化應用的領導平台。作為一個高效的容器編排系統,它不僅管理著容器的部署和擴展,還提供了必要的自動化支持,以保證應用的高可用性和性能。在這個框架中,自動擴展功能起著至關重要的作用,特別是在面對不斷變化的負載和需求時。
Thumbnail
本文將演示在安裝完 Kubernetes Cluster 後的基本元件安裝,包括 Calico/Calicoctl、Metric Server 和 Dashboard UI 的安裝方法以及相關問題與解決方式。
Thumbnail
本文將演示在安裝完 Kubernetes Cluster 後的基本元件安裝,包括 Calico/Calicoctl、Metric Server 和 Dashboard UI 的安裝方法以及相關問題與解決方式。
Thumbnail
這篇文章教你如何搭建Kubernetes Cluster,包括節點安裝前設定、軟體套件安裝、Control-Plane部署和加入運算節點等步驟。在建置之後,作者會分享一些基礎服務的安裝。希望這篇文章對你有所幫助。
Thumbnail
這篇文章教你如何搭建Kubernetes Cluster,包括節點安裝前設定、軟體套件安裝、Control-Plane部署和加入運算節點等步驟。在建置之後,作者會分享一些基礎服務的安裝。希望這篇文章對你有所幫助。
Thumbnail
本文章將說明如果您想要從頭建置一組具有Loadbalancer HA架構的Kubernetes Cluster時,你可能會需要做的事前準備工作。
Thumbnail
本文章將說明如果您想要從頭建置一組具有Loadbalancer HA架構的Kubernetes Cluster時,你可能會需要做的事前準備工作。
Thumbnail
前言 上次我們針對 Docker 這樣容器化技術做了一點介紹,今天我們要來講解 Docker 架構,你是否發現在每次程式上伺服器的流程很麻煩呢 ? 是否發現你寫的程式在別的作業系統不能用呢 ? 如果你遇到這些問題,Docker 都可以幫助你解決這些問題 Docker 架構 在 Docker 這
Thumbnail
前言 上次我們針對 Docker 這樣容器化技術做了一點介紹,今天我們要來講解 Docker 架構,你是否發現在每次程式上伺服器的流程很麻煩呢 ? 是否發現你寫的程式在別的作業系統不能用呢 ? 如果你遇到這些問題,Docker 都可以幫助你解決這些問題 Docker 架構 在 Docker 這
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News