问题标签 [kubernetes-apiserver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - 使用 client-go API 列出部署控制器管理的 pod 不起作用
我在 Go 中使用本机 client-go API 来获取在给定命名空间(“默认”)下由 Deployment 类型控制器管理的 Pod 列表,但返回的列表不包含 Pod 列表
https://pkg.go.dev/k8s.io/api/apps/v1?tab=doc#Deploymentobj
的类型*appsv1.Deployment
在哪里
函数定义为
返回的类型 - https://pkg.go.dev/k8s.io/api/core/v1?tab=doc#PodList应该包含Items []Pod
我返回的信息中不可用的切片。
在 Go 代码中使用以下包
kubernetes - 如何使用 client-go API 返回的 Pod 条件数组?
我在 Go 中使用 client-go API 来访问给定控制器(部署)下的 Pod 列表。在使用选择器标签查询属于它的 pod 列表时,您会得到一个数组PodConditions
- https://pkg.go.dev/k8s.io/api/core/v1?tab=doc#PodCondition。
这与 pod 条件的官方文档非常一致 - https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-conditions。但是文档并不清楚如何访问这个条目数组。它是按最近的条目排序的吗?例如,如果我只想访问 Pod 的最新状态,应该怎么做?从我在本地集群中进行的一项试验中,我获得了控制器 Pod 之一的更新(Pod 条件数组),如下所示
如您所见,给定的 Pod 几乎同时从 过渡ContainersReady
到。但它们都不在第一个或最后一个索引中。Ready
08:01:22 +0000 UTC
所以 TLDR,问题是如何从这个值数组中推断出最新的 Pod 条件类型和状态?
kubernetes - 如何检查 AKS 中是否启用了 api-server insecure-port
我想检查我的 Azure Kubernetes 集群中是否启用了不安全端口。我怎样才能做到这一点。
python - 如何在 python k8s 客户端中以 root 身份运行“connect_get_namespaced_pod_exec”
我运行这段代码,我得到的响应whoami
是:'java\n'
如何以 root 身份运行?另外,我在任何地方都找不到适合这个客户的好文档(git repo 上的文档非常糟糕),如果你可以将我链接到任何地方,那就太棒了
编辑:我刚刚尝试了几个不同的 pod 和容器,看起来其中一些默认为 root,仍然希望能够在我运行命令时选择我的用户,所以问题仍然相关
python - ValueError:选择器的值无效,不得为无
我对 Kubernetes 很陌生,我必须使用 Kubernetes python-client创建一个 pod 。因此,为了进行实验,我尝试运行项目提供的示例笔记本,而不做任何更改,以了解事情是如何工作的。
从第三步的intro_notebook.ipynb开始,我收到一个错误:
这是代码:
我唯一更改的部分是第二个单元,因为我正在使用 Ubuntu 运行 Kubernetes microk8s
:
完整的追溯:
我正在跑步python3.8
:
更新
将 microk8s 降级到 v1.15.11 并没有解决问题。
kubernetes - Kubernetes API 健康检查失败
我正在使用 curl 到https://127.0.0.1:8001/healthz/poststartthook/extensions/third-party-resources通过 http 检查 Kubernetes API 服务器的运行状况,但失败并显示以下消息:
其他健康检查很好,因为它们报告为“正常”我已经尝试了一些建议在线检查客户端/服务器的版本,它似乎没问题。我不确定这个输出的真正含义。
c# - 从 C# docker 访问 kubernetes 服务
我正在尝试使用 kuberentes 服务中的 C# docker 访问 Kubernetes 服务。
我有一个 python docker YAML 文件,并希望使用来自 c# Dotnet core docker 的相同 YAML 以编程方式创建 pod,该 docker 在同一 python docker 集群中运行。我找到了用于 dotnet core 的 Kubernetes api。我为下面的列表 pod 创建了代码。
此代码出现错误禁止(“操作返回无效状态代码'禁止'”)。而不是InClusterConfig使用BuildConfigFromConfigFile 代码在本地环境中工作。我错过了什么吗?
已编辑
kubernetes - Kubernetes API 服务器响应超时
看到我们的一些工作流作业因连接超时错误而失败。我们正在使用 Argo Workflow manager 来运行作业。我们观察到 Argo 正在失去与其工作流的连接,并且我们相互依赖的工作流模式因以下错误而失败。所以当我检查 Kubernetes API 服务器日志时,我看到了这些错误。有什么办法可以增加 Kubernetes API 服务器非运行作业的任何超时设置?
错误:
客户端版本:v1.17.2
服务器版本:v1.17.2
主机操作系统: Centos 7.7
CNI: 编织
谢谢, CS
kubernetes - 使用 Kubernetes API 管理 Statefulsets 的扩展
- 我想扩展我的 statefulset,并希望使用 Kubernetes API(http 请求)从 pod(容器)内部到 kubernetes 休息服务器启动这种扩展。
- 我尝试使用扩展 statefulset pod
PUT /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale
- 但这对我不起作用。
甚至尝试使用获取指定 statefulset 的比例数据
“获取 /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale”
请求: curl -s -k -H "授权:承载 $TOKEN" -X GET https://kubernetes.default.svc:443/apis/apps/v1/namespaces/$Namespace/$Kind/$PodNamePrefix/scale
给出一个错误:
"message": "statefulsets.apps "app-4x" 被禁止:用户 "system:serviceaccount::default" 无法在命名空间 ""","reason" 中的 API 组 "apps" 中获取资源 "statefulsets/scale": “禁止”,
参考:https ://v1-14.docs.kubernetes.io/docs/reference/generated/kubernetes-api/v1.14/
有人可以帮我吗?
logging - 使用客户端 api 获取 kubelet 日志
我正在尝试使用 kubernetes 的 API 从节点获取 kubelet 日志(不是 pod 日志,而是实际的 kubelet 日志)。到目前为止,我还没有找到方法。当然,我可以直接访问日志,但这个解决方案将依赖于操作系统和运营商。有任何想法吗?