istio - 无法通过 Kubernetes REST API 创建/获取 Istio 对象
问题描述
我们无法通过 Kubernetes REST API 访问 Istio 对象。
例子:
kubectl get gateways
工作并显示默认命名空间中的所有 Istio 网关。curl ..../api/v1/namespaces/default/pods
显示默认命名空间中部署的所有 pod。curl ..../api/v1/namespaces/default/gateways
返回404
。
virtualservices
,serviceentries
和任何其他 Istio 对象也是如此。
我们在集群中运行了一个 REST API 服务器。我们猜测问题可能是由于它支持 API 版本v1
而 Istio 对象创建 YAML 文件参考 API 版本networking.istio.io/v1alpha3
。
这有点令人困惑,因为我们可以通过kubectl
命令创建和获取 Istio 对象,但不能通过向 kubernetes REST API 服务器发出 HTTP 请求来做同样的事情。欢迎任何见解。谢谢。
解决方案
当我检查 kubernetes REST 服务器的日志时,我得到了一些想法。其余服务器被发现为在命名空间中运行的 pod kube-system
。
无论如何,每次你需要使用 kubernetes REST 服务器来获取通过 API 版本创建的 Istio 对象时,而不是networking.istio.io/v1alpha3
像这样向 kubernetes REST 服务器发出 HTTP 请求。将 gateways 替换为您感兴趣的 Istio 对象的名称。.../api/v1/namespaces/default/gateways
.../apis/networking.istio.io/v1alpha3/gateways
推荐阅读
- ios - 如何根据点击的单元格更改数组
- ios - iOS N 如何获取所有用户代理字符串
- python - 在 Keras 中导入 Attention 包会出现 ModuleNotFoundError: No module named 'attention'
- xcode11 - 当项目包含资产目录时,Xcode 11-beta3 构建失败:错误:未知参数“--development-region”
- docker - NTLM Kerberos 支持在 nginx 服务器后面设置的身份服务器(不适用于 IE)
- python - 网络抓取 pubmeds 2., 3., 4... 页面
- .net - IIS 上的 SystemBadImageFormat 异常
- sql - 从 varchar 字段结果中删除数字和括号
- python - 无法安装旧版本的python
- keras - 一旦 fit.generator 给出结果,如何提取最佳精度和其他细节