每次談到容器的時候,除了Docker之外,都會說起 Kubernetes,那麼什麼是 Kubernetes呢?今天就來一起學快速入門一下 Kubernetes 吧!希望本文對您有所幫助。 Kubernetes,一種用於管理和自動化雲中容器化工作負載的工具。 想象一下你有一個管弦樂隊,將每個音樂家視為 ...
每次談到容器的時候,除了Docker之外,都會說起 Kubernetes,那麼什麼是 Kubernetes呢?今天就來一起學快速入門一下 Kubernetes 吧!希望本文對您有所幫助。
Kubernetes,一種用於管理和自動化雲中容器化工作負載的工具。
想象一下你有一個管弦樂隊,將每個音樂家視為一個碼頭容器。為了創作優美的音樂,我們需要一個指揮來管理音樂家並設定節奏。現在將指揮想象為 Kubernetes,將管弦樂隊想象為像 Robinhood 這樣的應用程式。當市場休市時,像 Robinhood 這樣的應用程式就沒有什麼作用。但當它們開業時,它需要完成特斯拉和 Shopify 等價格過高股票的數百萬筆交易。
Kubernetes 是編排基礎設施以處理不斷變化的工作負載的工具。它可以跨多台機器擴展容器,如果一臺機器出現故障,它知道如何用新機器替換它。
部署在 Kubernetes 上的系統稱為集群。操作的大腦稱為控制平面。它公開了一個 API 伺服器,可以處理內部和外部請求來管理集群。
它還包含自己的鍵值資料庫,稱為etcd,用於存儲有關運行集群的重要信息。
它管理的是一臺或多台稱為節點的工作機器。當您聽到節點時,請想到一臺機器。
每個節點都運行一個稱為 kubelet 的東西,這是一個在機器上運行的微型應用程式,用於與主控制平面母艦進行通信。
每個節點內部都有多個 Pod,這是 Kubernetes 中最小的可部署單元。當您聽到 pod 時,請想象一群鯨魚或一起運行的容器。
隨著工作負載的增加,Kubernetes 可以通過向集群添加更多節點來自動水平擴展。在此過程中,它負責處理複雜的事情,例如網路、秘密管理、持久存儲等。
它是為高可用性而設計的,實現這一目標的一種方法是維護副本集。它只是一組隨時準備運行的運行 Pod 或容器。作為開發人員,您可以在 YAML 中定義描述集群所需狀態的對象。
例如,我們可能有一個 nginx 部署,其中包含一個包含三個 pod 的副本集。在spec欄位中,我們可以準確定義它的行為方式,例如它的容器、捲、埠等。然後,您可以採用此配置並使用它自動配置和擴展容器,並確保它們始終正常運行和健康。
視頻講解:https://www.bilibili.com/video/BV12N411j7CE/ ,歡迎一鍵三連支持~
如果您想開拓眼界,瞭解和發現更多電腦領域的概念和知識,歡迎關註我在持續更新的開發者科普專欄,助你探索更多電腦領域的熱門知識!
歡迎關註我的公眾號:程式猿DD。第一時間瞭解前沿行業消息、分享深度技術乾貨、獲取優質學習資源