ResourceDistribution 这个CRD,创建了对应的CR, 有某几个namespace 存在需要同步的, 在CR 中会显示这几个namespace 同步失败, 然后我删除了 这几个namespace 存在的资源, 发现并没有在进行同步, 这个如何在触发同步?kruise是1.5版本。
在OpenKruise中,ResourceDistribution是用来同步资源的控制器。如果你发现某个Namespace的资源同步失败,你可以通过以下几种方式来触发同步:
spec.syncStatus.lastSyncTime
字段来手动触发同步。例如:apiVersion: kruise.io/v1alpha1
kind: ResourceDistribution
metadata:
name: resource-distribution
spec:
resourceType: Pod
namespaceSelector:
matchNames:
- namespace1
- namespace2
syncStatus:
lastSyncTime: "2022-06-01T12:00:00Z"
在这个例子中,lastSyncTime
字段的值表示最后一次同步的时间。当你更新了这个字段的值后,ResourceDistribution会自动触发同步。
spec.syncStatus.autoSync
字段来开启自动同步。例如:apiVersion: kruise.io/v1alpha1
kind: ResourceDistribution
metadata:
name: resource-distribution
spec:
resourceType: Pod
namespaceSelector:
matchNames:
- namespace1
- namespace2
syncStatus:
autoSync: true
在这个例子中,autoSync
字段的值为true,表示ResourceDistribution会自动触发同步。你需要定期检查status.syncStatus.syncing
字段的值,以确保同步正在正常运行。
请注意,以上两种方法都需要你直接修改ResourceDistribution的CR。如果你不希望这样做,你可以考虑使用Kruise-tools工具来触发同步。例如:
kruise-tools sync resource-distribution
这个命令会触发ResourceDistribution的同步。
确实有这个问题,你要不先随便加个 ns 的同步,或者给同步的 cr 加个 annotation 或者 label 触发一下,目前只 watch 了 owner 为 RD 的 cm&secret。此回答整理自钉群“OpenKruise 社区交流群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。