[k8s中文社群](
1四組基本概念
pod/pod控制器
name/namespace
lable/label選擇器
service/ingress
1.1 pod和pod控制器
kubernetes 的pod控制器
podk8s裡能夠被執行的最小邏輯單元
1個pod裡面可以執行多個容器(sidecar 邊車模式)
pod中的容器共享 uts/nat/ipc 命名空間
pod和容器顆粒理解為豌豆莢和豌豆
pod控制器
pod控制器是pod啟動的一種模板
用來保證在k8s裡啟動的pod始終按預期執行
包括副本數\生命週期\健康檢查等
常用的pod控制器:
控度器名稱
用途簡述
deployment
用於管理無狀態應用,支援滾動更新和回滾
daemonset
確保集群中的每乙個節點上只執行乙個特定的pod副本
replicaset
確保pod副本數量符合使用者期望的數量狀態
statefulset
管理有狀態應用
job有狀態,一次性任務
cronjob(定時任務)
有狀態,週期性任務
1.2 name/namespace
name
k8s使用'資源'來定義每一種邏輯概念(功能)
每種'資源'都應該有自己的'名稱''名稱'通常定義在'資源'的元資料(metadata)資訊中
資源的配置資訊包括
主控節點(master)
運算節點(node)
cli客戶端
kubectl命令列工具
核心附件
cni網路外掛程式(flannel/calico)
服務發現外掛程式(coredns)
服務暴露外掛程式(traefik)
gui管理外掛程式(daahboard)
2.1核心元件功能
配置儲存中心-etcd
etcd是乙個非關係型資料庫,作用類似於zookeeper註冊中心
用於各種服務的註冊和資料快取
kube-apiserver(master)
提供季軍管理的rest api介面,包括鑑權、資料校驗、集群狀態變更
負責其他模組之間的資料互動,承擔通訊樞紐的功能
和etcd通訊,是資源配額控制的入口
提供玩備的集群控制機制
kube-controller-manager
由一系列控制器組成,通過apiserver監控整個集群的狀態,確保集群處於預期的工作狀態
是管理所有控制器的控制器
kube-scheduler
主要是接收排程pod到合適的node節點上
通過apiserver,從etcd中獲取資源資訊進行排程
只負責排程工作,啟動工作是node節點上的kubelet負責
排程策略:預算策略(predict)、優選策略(priorities)
kube-kubelet
定時從apiserver獲取節點上pod的期望狀態(如副本數量、網路型別、儲存空間、容器型別等)然後呼叫容器平台介面達到這個狀態
提供pod節點具體使用的網路
定時匯報當前節點狀態給apiserver,以供排程
複製映象和容器的建立和清理工作
kube-proxy
是k8s在每個節點上執行網路的**,service資源的載體
不直接為pod節點提供網路,而是提供pod間的集群網路
建立了pod網路和集群網路的關係(clusterip->podip)
負責建立、刪除、更新排程規則
與apiserver通訊,以更新自己和獲取其他kube-proxy的的排程規則
常用的排程模式:iptables(不推薦)、ipvs(推薦)
2.2 k8s的三條網路
節點網路
實際網路,就是宿主機網路
建議位址段:10.11.0.0/24
建議通過不同的ip端,區分不同的業務、機房或資料中心
pod 網路
實際網路,容器執行的網路
建議172.7.207.0/24 ,並建議pod網段與節點ip繫結
如: 節點ip為10.11.0.207,則pod網路為172.7.207.0/24
service網路
虛擬網路,也叫集群網路(cluster server),用於內部集群間通訊
構建於pod網路之上, 主要是解決服務發現和負載均衡
通過kube-proxy連線pod網路和service網路
建議位址段為:192.168.0.0/16
3 k8s流程圖
說明:主控節點和node節點只是邏輯上的概念,物理上可以部署在一起
k8s應用01 入門例項
1 關閉防火牆firewalld 2 安裝etcd和kubernetes yum install y etcd kubernetes 會自動安裝docker 3 修改配置檔案 修改docker配置文docker 修改為options selinux enabled false insecure re...
K8s基礎知識介紹
k8s是源自於谷歌內部的borg系統 容器編排工具 後經過go語言重寫並捐獻給了cncf 會開源。它的主要作用就是作為容器的開源編排框架工具。官網 一年發布四個大版本 github 自動裝箱,水平擴充套件,自我修復 服務發現和負載均衡 自動發布 預設滾動發布模式 和回滾 集中配置管理和秘鑰管理 儲存...
k8s 多租戶 k8s 基礎介紹
備註 1 每乙個pod裡執行著乙個特殊的容器 pause容器,其他容器都是業務容器,這些業務容器共享pause容器的網路棧和volume 邏輯卷 掛載卷。因此他們之間的通訊和資料交換更為高效。2 k8s設計了pod物件,將每個服務程序包裝到相應的pod中,使其成為pod中執行的乙個容器 contai...