javascript - Kubernetes Javascript 客户端库适用于本地但不适用于 GKE
问题描述
我正在尝试使用 Kubernetes JS 客户端库,当我在本地环境中尝试它时(我使用 docker 运行本地 kubernetes)它工作正常,我正在创建一个用于测试目的的 pod,并且创建了 pod。当我尝试使用 Google Kubernetes Engine 时,我得到“ HttpError: HTTP request failed ”。
这是我使用图书馆的方式:
const kc = new k8s.KubeConfig();
kc.loadFromDefault();
const k8sApi = kc.makeApiClient(k8s.CoreV1Api);
然后我使用以下方法创建一个 pod,使用 V1Pod 主体:
k8sApi.createNamespacedPod("default", pod).then(
(response) => {
console.log(`Created pod -> ${response}`);
},
(err) => {
console.log(`Error: ${err}`);
}
);
解决方案
我不确定您是否解决了这个问题,但我通过使用 JSON.stringify(e) 获得了有关创建函数(即 api.createNamespacedCronJob(...))生成的错误的更多信息。如果您查看 k8s javascript 客户端的 github 存储库,则 HttpError 对象包含响应、正文和状态代码。这对我来说非常有帮助。由于用于请求的服务帐户的权限,这是一个 403 禁止。
Kubernetes Javascript 客户端 HttpError(产生该消息): https ://github.com/kubernetes-client/javascript/blob/ab5fc88afb4a205b1686078feca7e233f610c4f6/src/gen/api/apis.ts
推荐阅读
- acumatica - 利用具有自定义补货需求的创建采购订单处理屏幕
- r - 无法让 na.rm=TRUE 为函数工作
- angular - 在 Angular 中构建后 URI 无法访问
- h2o - 版本不匹配。H2O 是 3.22.0.1 版本,但是 h2o-python 包是 0.0.local 版本
- python-3.x - PyArrow 表到 PySpark 数据框的转换
- python - 使用 Python 的配置文件直方图(错误:“FutureWarning:...”
- r - 如何使用 R 中的测试数据获得特征重要性?
- python - AssertionError:图像大小不同,分割图像时出错
- python - 如何在 python 中处理异步测试?
- latex - LaTeX中的Macron重音(字母上的一个条)不起作用