一、PaaS 云平臺
web界面 資源利用查看
Rancher
5臺 CPU 4核 Mem 4g 100g的機器
映射的目錄是指docker重啟后,數據還在
Rancher可以創建集群也可以托管已有集群
先docker 部署 Rancher,然后通過 Rancher 部署 k8s
想使用 kubectl 還要yum install 安裝,還要在rancher web界面 復制config到 .kube/config文件里
kubesphere
kuboard
二、operator開發
普羅米修斯和opertator 都是golang開發的
- Restful API 主要以路徑來劃分,通過http的方法來確定怎么操作資源
- k8s API 是我們和k8s 對話,告訴它我們想要什么。它就給我們什么
- CRD定義模板— CR傳入值— apiserver找到對應的controller,收到后在通過apiserver傳到etcd保存
Kubernetes Operator 是一種擴展 Kubernetes API 的方法,它允許開發者以聲明式的方式管理和自動化復雜應用的生命周期。Operator 通常由自定義資源定義(Custom Resource Definitions,簡稱 CRD)和控制循環(Control Loop)組成。
CRD + Control Loop. 控制器以CRD為模板控制實例
整個鏈條的流程:
- 用戶通過 Kubernetes CLI 或 API 應用一個 CRD 清單,定義了期望的應用狀態。
- Operator 的控制器檢測到新的 CRD 實例,并開始控制循環。
- 控制器分析當前狀態,確定需要哪些操作來達到期望狀態。
- 控制器計劃并執行必要的 Kubernetes 操作,如創建 Deployment、Service 等資源。
- 控制器持續監視資源狀態,確保它們符合用戶的期望。
- 如果集群狀態發生變化,控制器將重新執行控制循環,以確保應用狀態的一致性。