That is a good idea. Jintao Zhang <zhangjintao9...@gmail.com> 于2021年10月7日周四 上午9:41写道:
> SGTM. Let's create an issue to track this. > > Chao Zhang <tok...@apache.org> 于2021年10月4日周一 下午12:29写道: > > > Hi, there > > > > Currently, the filtering mechanism for apisix-ingress-controller to > > decide the watching namespace is quite simple, > > it just uses a namespace allow list, people just need to fill the list > > with the desired namespaces. > > > > However, the allow list is not quite flexible, first of all, the > > apisix-ingress-controller has to be restarted since we don't > > watch the changes of configuration (e.g. ConfigMap in Kubernetes, or > > local files); On the other hand, in some cases, > > users have a lot of namespaces but only a few of them SHOULD NOT be > > watched, in such a case, only an allowlist > > cannot figure out the problem. It seems that if we have a blocklist > > for namespaces, then it can work well but still we'll > > introduce some other complexities, like the precedence between these > > two lists, how to resolve the conflicts, and so on. > > > > Here I'd like to propose to use a native way to solve this problem, > > let's just use the label selector to decide the watching > > namespaces, desired namespaces can be attached with some labels and we > > configure a selector for apisix-ingress-controller > > so it knows which namespaces are filtered out and others are reserved > > (and should be watched continuously). > > > > A simple case is just like this: > > > > We have 3 namespaces and their labels are: > > > > 1. namespace: foo, labels: customer=foo,plan=basic > > 2. namespace: baz, labels: customer=baz,plan=pro > > 3. namespaces: bar, labels: customer=bar,plan=pro > > > > Let's say the label selector of apisix-ingress-controller is > > plan=basic, then the first namespace foo will be filtered out. Another > > benefit of > > using the label selector is that the adjustment is dynamic, a > > namespace can be filtered in/out at a different time if the labels > > change. > > > > Best regards > > Chao Zhang > > > > https://github.com/tokers > > >