问题标签 [kubernetes-go-client]
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.
api - client-go:将 kubernetes json 文件解析为 k8s 结构
我想解析 kubernetes 清单文件(json/yaml)并能够将它们转换为 k8s 结构(以便稍后操作它们)
我知道有 NewYAMLOrJSONDecoder().Decode() 函数(https://github.com/kubernetes/apimachinery/blob/master/pkg/util/yaml/decoder.go)来读取 json/yaml 文件,但是下一步是:如何将它们转换为 k8s 结构/类型?
即,如果我读取带有命名空间对象的 yaml 文件,例如如何将其转换为 core/v1/namespace 接口
问候,
kubernetes - 部署未创建
我正在尝试从中创建部署,client-go
但它没有创建并引发错误
我的client-go
版本: 4.0.0
我的 Kubernetes 版本是:
客户端版本:
服务器版本:
我的示例代码是
kubernetes - 在 kubernetes 中创建使用 nginx 控制器的入口时如何生成外部 IP
我正在制作 kubernetes 集群,我将应用该 cloudPlatform 隔离(不是 aws 或 google)。在为服务创建入口时,我可以选择主机 url,但它在任何地方都不存在(该地址未注册,例如 DNS 服务器)所以我无法访问该 url。访问此 IP 只会给出 404。如何获取或配置可以访问外部浏览器的 URL :(...
go - 从 YAML 对象列表创建 API 对象
我有一个像这样定义的 kubernetes 对象列表:
我想用类似的东西解析它client-go
并收集一些关于它的信息。
所以我搜索并发现了一些这样的代码:
所以obj
它的每一个元素都是runtime.Object
善良的。但我似乎无法找到一种方法将其转换为具体的 kubernetes 对象,例如v1.Pod
. 我怎样才能做到这一点?
kubernetes - Kubernetes container won't set Request resources (CPU & RAM) properly
I am trying to set a fixed resource value to my kubernetes container. When I try the following:
I get this:
Why doesn't Set
update my values to the newer ones? How can I set the CPU & RAM resources properly?
kubernetes - 以编程方式获取 Pod DNS 名称
我有一个有 3 个成员的 statefulset。可以通过以下方式从集群内部访问它们:
我正在使用控制器中的 Kubernetes API。我刚刚创建了 Statefulset:
让我们假设一切正常,几分钟后我有 3 个正在运行的 Pod。如何获取新创建的 Pod 的 Pod DNS 条目?
我知道我可以使用以下方法构建 DNS:
但是我发现了一些问题:
- 我将不得不根据副本的数量计算索引
- 我需要知道用于此的服务名称
StatefulSet
- 我假设集群域
cluster.local
不一定是真的
我认为它应该存在(但我不确定它是否真的存在)是一个 API,给定 StatefulSet 将允许我知道创建的副本的 DNS 名称。这样的 API 存在吗?
validation - Kubernetes client-go 库是否包含验证 json/yaml 文件的功能?
我想知道 Kubernetes 的 client-go 库是否包含一个验证 json/yaml 文件是否存在的函数。理想情况下,它会捕获错误,例如名称不符合 DNS-1123 或指定的无效字段。如果返回错误列表而不是在遇到第一个错误后返回函数,这也是理想的。
我尝试过的一个想法是执行 exec 来调用kubectl --validate --dry-run
,但这并不能完全验证清单(这意味着可以在此处传递,但在实际应用文件时会失败)。它也会在第一个错误处停止。另外,如果您有清单清单要查看,它会很快变得昂贵。
我查看的另一个选项是Kubernetes GitHub Issue 193,但这不是真正合适的功能,也不是我正在寻找的检查。
go - 如何通过 kubernetes go-client 获取 pod 资源使用情况?
我正在尝试构建一个 API,它可以发回我的 pod 的资源使用情况。查看pod 正在使用的资源,我无法弄清楚将请求发送到的 go-client API。任何帮助将不胜感激。
kubernetes-go-client - 我可以使用 kubernetes 中的自定义调度程序更改未调度 Pod 的计算资源限制吗
我是 Kubernetes 的新手,我正在研究 Kubernetes 集群的计算资源管理。为此,我在 go 中下载了一个玩具调度程序(https://github.com/kelseyhightower/scheduler)。我知道一旦将计算资源请求设置为 pod,就无法更改它们。但是,假设我没有在yaml文件中设置pod的资源需求:例如nginx.yaml:
我可以为自定义调度程序尝试调度的每个 pod 应用资源请求吗?
go - 使用 Kubernetes 的 Go 客户端列出 Traefik 入口控制器
我们有一个小的内部工具,列出了使用 Kubernetes 的Go 客户端的 Kubernetes服务。
现在我们添加了 Traefik 来使用入口控制器将我们的服务映射到有意义的 dns 名称。我们看到在 Kubernetes 的 Go 客户端中有一个入口列表器扩展,可用于列出入口控制器。但是,我们无法让它工作。
是否有列出入口控制器的 Go 客户端代码片段?