一、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 等资源。
- 控制器持续监视资源状态,确保它们符合用户的期望。
- 如果集群状态发生变化,控制器将重新执行控制循环,以确保应用状态的一致性。