问题标签 [client-go]

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.

0 投票
1 回答
7177 浏览

go - 如何在golang程序中使用client-go列出k8s集群中的所有pod?

我想在 go 程序中使用 client-go 列出 k8s 集群中的所有 pod。一个使用 client-go 列出 k8s 集群中所有 pod 的 go 程序?

0 投票
1 回答
327 浏览

kubernetes - Client-go - 在使用 client-go 在 Kubernetes 中创建对象之前获取生成的名称

假设我有这样的代码来生成新的 pod

是否可以在创建对象之前获取生成的名称?或者是否可以将生成的名称存储在同一个对象的环境中?

0 投票
0 回答
316 浏览

amazon-web-services - 如何在调用删除 pod 时删除 pvc 的子路径文件夹,... 使用 client-go k8s

我使用 k8s/client-go 库来控制和开发我的应用程序(https://github.com/kubernetes/client-go)。

使用持久卷声明的子路径时出现问题。例如,我有两个 pod 并将每个容器的数据挂载到 2 个子路径ORG1/DIR1ORG2/DIR2持久卷声明(efs file),详细信息如下:

而当我调用删除这个 pod 时,目前 k8s 只删除 pod,core lib 不删除 pod 上的数据persistent volume claim。这样,PVC的数据就会变成垃圾,变得越来越大。

我想删除子路径中的所有数据ORG1/DIR1以及ORG1/DIR2删除 pod 时。

这是 pvc 的文件 yaml:

那么,你能帮我解决这个问题吗?因为我是 k8s 和 aws-efs 的新手。所以,我对此没有太多经验:(

非常感谢。

0 投票
1 回答
280 浏览

rest - 用于在 Kubernetes 的命名空间(或集群上)中列出 CustomResource 实例的 Kube API

使用命令行实用程序kubectl,我们可以列出自定义资源实例,如下所示

以类似的方式,我们是否有一个 REST API 来实现相同的功能?即API 采用CustomResource 的种类并列出所有创建的实例?

我指的是这个 API 参考: https ://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/

0 投票
1 回答
102 浏览

go - deploymentRes for a pvc using the dynamic-create

I'm trying to use the client-go to create pods and other resources on my cluster.

From what I understand the best way to create stuff on your cluster using client-go is to use the dynamic-create version (in the examples there is a dynamic-create-update-delete example). Because I can just take my yaml and make it into unstructured.Unstructured and then create the resource.

This is working fine for me while creating pods using kind: Deployment but when I try to create a pod with the kind: PersistentVolumeClaim I get an error:

panic: PersistentVolumeClaim in version "v1" cannot be handled as a Deployment: converting (v1.PersistentVolumeClaim).v1.PersistentVolumeClaimSpec to (apps.Deployment).apps.DeploymentSpec: Replicas not present in src

If I understand the error correctly this happen because I declare my deploymentRes with the resource: "deployments"

And then create with the:

The problem here is that I can't find what to put instead of Resource: "deployments" when I want to create a pvc. I have tried to put in persistentvolumeclaim but just get the err:

"panic: the server could not find the requested resource"

Please if you know anything that could help, or put me in the right direction would be super helpful!

Thanks!

0 投票
1 回答
5322 浏览

go - 无法加载集群内配置,必须定义 KUBERNETES_SERVICE_HOST 和 KUBERNETES_SERVICE_PORT

我正在开发一个动态的 kubernetes 通知器来监视我的 kubernetes 集群中的事件和所有 kubernetes 组件的发现。

但是,当我尝试KUBECONFIG通过该InClusterConfig方法访问时,出现以下错误:

我在 github 上的 kubernetes repo 以及 stackoverflow 上发现了与此相关的各种类似问题,但找不到任何解决方案或解决方法。[ kubernetes 问题, kubernetes 问题, stackoverflow 类似问题, stackoverflow 类似问题]

以下是 go 代码和 go.mod 文件

去代码

go.mod 文件

0 投票
1 回答
987 浏览

kubernetes - 如何使用 client-go 创建 docker Secret

假设我知道以下秘密参数:

然后我想用client-go创建一个pull-image secret

我的问题是,如何将秘密参数转换为秘密数据?

0 投票
1 回答
52 浏览

wordpress - 是否可以使用 Go 将现有的 CRD 添加到自定义 Kubernetes 运算符中?

我目前正在开发自己的自定义运算符,该运算符部署了功能齐全的 Wordpress。我需要实施 SSL。现在这就是我卡住的地方,我不确定如何使用 Go 来实现它。

有没有办法将现有的 CRD(例如 cert-manage)添加到我的操作员中,然后使用我的自定义操作员从中创建 Kubernetes 资源类型?

0 投票
1 回答
630 浏览

go - 使用 client-go 执行到 pod

我是新来的客户和客户:)。

我看到了这个功能,我可以使用它向带有交互式终端的 pod 发送命令或执行。在下面,我需要知道我应该提供哪些参数才能从 func main() 调用它,因为我可以看到它需要我不理解的“config *restclient.Config”。任何例子或起点?

PS。我知道如何创建客户端集以使用 kubeconfig 进行身份验证。只需要知道这将需要哪些参数以及如何从主函数调用它。

0 投票
1 回答
599 浏览

go - 如何创建多个工作人员以从工作队列中获取密钥并在它们上处理一些业务逻辑?

我是 Golang 和 Kubernetes 的新手。我尝试使用 client-go 库在 golang 中创建自定义控制器。控制器与 K8s Api 服务器连接,将 Pod 的详细信息放入缓存中,并将其发送到我对 Pod 执行一些操作的工作队列。但是我希望这个过程很快,为此我需要创建多个工人。如何创建多个可以作用于同一个工作队列并提高代码速度的工作人员?

以下是我的控制器的示例: