istio - 无法通过 Kubernetes REST API 创建/获取 Istio 对象

标签 istio

我们无法通过 Kubernetes REST API 访问 Istio 对象。

示例:

  • kubectl get gateways 工作并显示默认命名空间中的所有 Istio 网关。
  • curl ..../api/v1/namespaces/default/pods 显示所有 Pod 部署在默认 namespace 中。
  • curl ..../api/v1/namespaces/default/gateways 返回 404

对于 virtualservicesserviceentries 和任何其他 Istio 对象也是如此。

我们有一个 REST API 服务器在集群中运行。我们猜测该问题可能是由于它支持 API 版本 v1 而 Istio 对象创建 YAML 文件引用 API 版本 networking.istio.io/v1alpha3 引起的。

这有点令人困惑,因为我们可以通过 kubectl 命令创建和获取 Istio 对象,但无法通过向 kubernetes REST API 服务器发出 HTTP 请求来执行相同的操作。任何见解都会受到欢迎。谢谢。

最佳答案

当我检查 kubernetes REST 服务器的日志时,我得到了一些想法。其余服务器被发现是在命名空间 kube-system 中运行的 Pod。

无论如何,每次您需要使用 kubernetes REST 服务器来获取通过 API 版本 networking.istio.io/v1alpha3 创建的 Istio 对象,而不是像这样向 kubernetes REST 服务器发出 HTTP 请求 .../api/v1/namespaces/default/gateways 改为 .../apis/networking.istio.io/v1alpha3/gateways。将 gateways 替换为您感兴趣的 Istio 对象的名称。

关于istio - 无法通过 Kubernetes REST API 创建/获取 Istio 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53070855/

相关文章:

go - Envoy WASM 由于缺少导入而无法加载(使用 net/http Go 模块)

kubernetes - Locality LoadBalacing 不适用于 Istio

java - 重新发送失败的请求

kubernetes - 内部服务调用时,http请求 header 中的客户端Pod身份

Istio - 使用 URI 正则表达式匹配的 URI 重写

istio - 使用基于 JWT token 的 Istio 在 Kubernetes 中进行服务路由

kubernetes - Kubernetes 内部的 Istio CORS 和 SSL 问题

kubernetes - Kubernetes/Istio 中的动态有状态路由(微服务间关联)

kubernetes - 同一主机申请的虚拟服务是否有优先级?

mysql - 在 Istio 中连接到 MySQL (AWS RDS)