2

我正在围绕 kubernetes Go Operator 进行 POC,以在应用程序中执行一些异步操作,并且我希望从 python 应用程序中获取回调到 Operator,然后可以继续更新资源元数据,例如更改资源状态字段。

我知道 Kubernetes Go Operator SDK 使用的控制器使用在特定端口上运行的 API 服务器。但它可以用作自定义 API 服务器,我可以在其中设置 webhook 的工作路径吗?

预期回调 API 的示例:

curl -XPOST http://cyber-operator.svc/application/updateClusterState

我希望在调用此 API 时在运算符内部运行一个过程。

我搜索了文档,找不到相关的东西。我可以在 Operator 中运行单独的 API Server 吗?如果它必须监听与内置控制器不同的端口,我很好。

4

1 回答 1

2

operator-sdk 不会启动服务器,通常它会列出监视 k8s 资源并进行协调,除非您明确添加验证/变异 webhook ( https://github.com/operator-framework/operator-sdk/blob/7e029625dde8f0d4cb88ac914af4deb7f5f85c4a/website/内容/en/docs/building-operators/golang/webhooks.md

即使有可能,我建议不要这样做,只需在新端口上创建一个新的 http 服务器即可。

于 2020-08-25T05:52:42.393 回答