Kubernetes 当两个K8S控制器同时修改同一资源时可以吗?

Kubernetes 当两个K8S控制器同时修改同一资源时可以吗?,kubernetes,kubernetes-custom-resources,kubernetes-operator,operator-sdk,Kubernetes,Kubernetes Custom Resources,Kubernetes Operator,Operator Sdk,我有几个CRD,每个CRD都应该在集群中创建editContainer.Spec。 例如环境、标签等 如果资源由多个控制器管理,可以吗 这种方法可能存在哪些缺陷?是的,同一对象可以由多个控制器更新。我认为Pod对象在这一点上更新了将近12次。您可能遇到的主要问题是写入冲突。通常,在操作符中,您执行get,然后发生一些事情,然后执行更新(通常是根对象案例的状态子资源)。这可能导致比赛条件。我建议考虑使用服务器端应用程序来减少这些问题,它处理每个字段的跟踪,而不是通过序列号处理整个对象

我有几个CRD,每个CRD都应该在集群中创建edit
Container.Spec
。 例如环境、标签等

如果资源由多个控制器管理,可以吗


这种方法可能存在哪些缺陷?

是的,同一对象可以由多个控制器更新。我认为Pod对象在这一点上更新了将近12次。您可能遇到的主要问题是写入冲突。通常,在操作符中,您执行get,然后发生一些事情,然后执行更新(通常是根对象案例的状态子资源)。这可能导致比赛条件。我建议考虑使用服务器端应用程序来减少这些问题,它处理每个字段的跟踪,而不是通过序列号处理整个对象