在 golang k8s 客户端中重新部署 Pod 触发器
Pod redeploy trigger in golang k8s client
如何通过k8s golang客户端触发hearth的更新(重新部署)
目前,我使用这些库来获取有关 pods 和命名空间的信息:
v1 "k8s.io/api/core/v1
k8s.io/apimachinery/pkg/apis/meta/v1
k8s.io/client-go/kubernetes
k8s.io/client-go/rest
也许还有另一个库,或者可以通过 linux 信号
go 客户端和类似库将遵循 REST API 结构。我相信 kubectl
客户端也使用 API,所以应该可以。
在 go 库中检查 pod 函数的代码(可能“应用”就是您要查找的内容):
https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod.go
和 API 参考:
https://kubernetes.io/docs/reference/kubernetes-api/
触发滚动重启的标准方法是set/update pod 规范中带有当前时间戳的注释。更改本身除了更改触发 Deployment 控制器执行其操作的 pod 模板哈希之外什么都不做。您可以使用 client-go
来执行此操作,但如果不是 Go,则可能会使用您更熟悉的语言。
如何通过k8s golang客户端触发hearth的更新(重新部署)
目前,我使用这些库来获取有关 pods 和命名空间的信息:
v1 "k8s.io/api/core/v1
k8s.io/apimachinery/pkg/apis/meta/v1
k8s.io/client-go/kubernetes
k8s.io/client-go/rest
也许还有另一个库,或者可以通过 linux 信号
go 客户端和类似库将遵循 REST API 结构。我相信 kubectl
客户端也使用 API,所以应该可以。
在 go 库中检查 pod 函数的代码(可能“应用”就是您要查找的内容): https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod.go 和 API 参考: https://kubernetes.io/docs/reference/kubernetes-api/
触发滚动重启的标准方法是set/update pod 规范中带有当前时间戳的注释。更改本身除了更改触发 Deployment 控制器执行其操作的 pod 模板哈希之外什么都不做。您可以使用 client-go
来执行此操作,但如果不是 Go,则可能会使用您更熟悉的语言。