在 GKE 上部署 opa 作为 side car 后如何找到 OPA url

How to find the OPA url after deploying opa as a side car on GKE

我已经将 OPA 部署为 application.Now 的边车我想找出 OPA url 因为我想把它作为端点。 OPA 文档提到我们可以在部署后找到 OPA url,使用“OPA_URL=$(minikube service opa --url)”然后这个命令“curl $OPA_URL/v1/data”。所以我想知道如何使用 GKE 做同样的事情?

默认情况下,OPA 在 0.0.0.0:8181 绑定,因此您可以在 POD_IP:8181 访问它。您可以通过设置 --addr.

来控制它

例如,如果您只想公开 pod 内的 OPA API(当您 运行 它作为 sidecar 时才有意义),您可以执行以下操作:

opa run --server --addr localhost:8181 --diagnostic-addr 0.0.0.0:8182

这将:

  • 将 opa 作为服务器启动 (opa run --server)
  • 仅在本地主机上绑定 OPA API
  • 在所有接口上绑定诊断 API(例如,以便可以配置来自 kubelet 的健康检查)

如果您想将 OPA 公开为 pod 外部的服务(在这种情况下,它不再真正用作 sidecar),您必须像为任何其他工作负载一样创建一个 Kubernetes 服务对象。