猿问

如何使用 Status 字段创建 Kubernetes 对象?

我正在使用 kubernetes 运算符在集群中创建自定义资源,CRStatus填充了该字段,但是当创建对象时该Status字段为空。

这就是我创建 CR 的方式:

reconcile.Create(ctx, &object)

这就是我试图用 k8s 运算符完成的任务:


守候你守候我
浏览 160回答 1
1回答

慕沐林林

Kubernetes API 和资源的架构遵循一种模式。客户端可以通过指定所需状态(这是资源的spec:一部分)来创建资源。这是发送到 API 服务器的“创建”请求。控制器,订阅/观察资源的变化,同时在协调循环中执行操作,他们可能会更新资源的状态(这是资源的status:一部分)。有关如何实施控制器和更新状态的示例,请参阅Kubebuilder 一书:实施控制器 - 更新状态。示例中的客户端是“控制器运行时客户端”:"sigs.k8s.io/controller-runtime/pkg/client"示例代码,协调器更新status子资源:if err := r.Status().Update(ctx, &cronJob); err != nil {     log.Error(err, "unable to update CronJob status")         return ctrl.Result{}, err }
随时随地看视频慕课网APP

相关分类

Go
我要回答