k8s基本概念

2021-10-19 11:00:33 字數 1309 閱讀 2460

開源,用於管理雲平台中多個主機上的容器化的應用,讓部署容器化的應用簡單高效,其提供了應用部署、規劃、更新、維護。

k8s集群由master節點和node(worker)節點組成。

1.master節點

master節點指的是集群控制節點,管理和控制整個集群,基本上k8s的所有控制命令都發給它,它負責具體的執行過程。在master上主要執行著:

2.node節點

除了master以外的節點被稱為node或者worker節點,可以在master中使用命令kubectl get nodes檢視集群中的node節點。每個node都會被master分配一些工作負載(docker容器),當某個node宕機時,該節點上的工作負載就會被master自動轉移到其它節點上。在node上主要執行著:

pod:通俗來講,pod就是一組容器的集合,在pod裡面的容器共享網路/儲存(kubernetes實現共享一組的namespace去替代每個container各自的ns,來實現這種能力),所以它們可以通過localhost進行內部的通訊。雖然網路儲存都是共享的,但是cpu和memory就不是。多容器之間可以有屬於自己的cgroup,也就是說我們可以單獨的對pod中的容器做資源(mem/cpu)使用的限制。

在傳統運維工作中,我們是和各種服務程序打交道。到了容器集群環境中,我們就是操作pod來對服務進行檢查維護。這裡只簡單介紹下幾個操作,其中kubectl有很多命令都和docker run類似。

從邏輯架構上看,k8s分為

1.pod

pod是k8s的最小的部署單元(在node中用docker部署容器,但是容器不是最小單元)

乙個pod是乙個或多個容器的集合

乙個pod是共享網路的

生命週期是短暫的,例如重啟伺服器pod就會消失

2.controller

管理pod

- 確保預期的pod容器數量

- 支援有狀態/無狀態應用部署

- 支援所有的node都執行同乙個pod

控制器的種類有很多:

3.service

定義一組pod的訪問規則

基本過程可理解為通過service統一入口進行訪問,由controller建立pod進行部署

k8s基本概念

前期對springboot springcloud的config eruka fein hystrix以及docker都有了一定的了解,後邊想重點學習一下k8s,個人認為前邊這些最後再加上k8s才是微服務最好的實踐方案,這也是學習k8s的最初原因。對我來講學習乙個新框架最重要的要知道這個東西,怎麼來...

k8s基本概念

最近在看 kubernates權威指南 寫的確實好,能讓你對各種概念有個詳細的了解。1 節點的概念 k8s集群有兩類節點 master節點 與 node節點 非master master節點 是集群控制節點,是集群的大腦。其上面會有四個關鍵的程序 node節點 可以理解為集群工作負載節點,docke...

K8S基本概念

kubernetes master node 如果大家對諸如hadoop這樣的分布式集群有所了解,就會發現k8s的設計理念和其他分布式架構的非常類似的 master節點負責接收使用者的指令 分配任務以及記錄各個node的情況 而node節點負責接收master的指令,啟動相應的pod k8s的最小執...