0

我需要多次部署同一个操作员,并以某种方式确保调用正确的操作员。

例如,第一个操作员应该使用给定的“flavour”/选择器“foo”部署,第二个操作员应该使用“flavour”“bar”部署。

当用户需要访问运营商时,他们如何选择他们正在访问的运营商?

---
apiVersion: my.domain/v1alpha1
kind: Traveller
metadata:
  name: some-traveller-sample
spec:
  cluster: "foo"
  databases:
    - "toto1"
    - "toto-golf"
---
apiVersion: my.domain/v1alpha1
kind: Traveller
metadata:
  name: some-traveller-sample
spec:
  cluster: "bar"
  databases:
    - "toto1"
    - "toto-wolf"

是否有可能确保将要协调的更改发送给正确的操作员。

4

1 回答 1

0

我已经研究出如何实现运行多个运算符,但有一些注意事项。

我构建了我的二进制文件并设置了 2 个部署,每个部署都有不同的标志,即OPERATOR_CLUSTER_ID=foo在第一个和OPERATOR_CLUSTER_ID=bar第二个..

该标志用于设置一个谓词,该谓词将检查接收到的对象是否具有实例应该处理的集群字段。

不利的一面是未处理的集群 ID(手动输入错误或缺少字段)不会报告错误并且将永远被忽略。

这是运行操作员的次优方式,并且违反了操作员的最佳实践,但它适用于我的边缘情况。

于 2021-09-29T09:11:58.780 回答