k8s 资源对象因ownerReferences指定跨namespace owner被删除问题

场景:

使用operator自动创建资源对象的时候ownerReferences中指定了另外一个namespace下的资源对象作为owner,结果资源一旦创建立即被删除,watch到资源被删除,operator又执行创建,于是不断重复创建-删除过程。

原因分析:

k8s从1.16版本开始,不再支持跨namespace指定属主,即ownerReferences中的name和UID字段不能指定其它namespace中的资源,只能是同一个namespace下的。

原文请参考:https://kubernetes.io/zh/docs/concepts/workloads/controllers/garbage-collection/

对于openshift而言,从4.3版本开始即不支持跨namespace指定属主。

 

k8s 资源对象因ownerReferences指定跨namespace owner被删除问题_第1张图片

你可能感兴趣的:(云开发)