Kubernetes:更新pod活性探测timeoutSeconds
我正在与Kubernetes和Jenkins-x合作,我需要创建一个具有自定义属性的devpod。 特别是,我需要一个timeoutSeconds,以使livenessProbe与默认的不同。 在创建pod之前,我不知道如何自定义此属性,所以我正在尝试在pod运行后对其进行更新。 我试过了Kubernetes:更新pod活性探测timeoutSeconds,kubernetes,jenkins-x,Kubernetes,Jenkins X,我正在与Kubernetes和Jenkins-x合作,我需要创建一个具有自定义属性的devpod。 特别是,我需要一个timeoutSeconds,以使livenessProbe与默认的不同。 在创建pod之前,我不知道如何自定义此属性,所以我正在尝试在pod运行后对其进行更新。 我试过了 kubectl编辑pod/ 但它告诉我,我不能更新该属性 你对我如何做到这一点有什么建议吗 谢谢。虽然这可能不是您在生产中真正想要做的事情,但您可以遵循以下步骤 从集群获取yamlkubectl Get po
kubectl编辑pod/
但它告诉我,我不能更新该属性
你对我如何做到这一点有什么建议吗
谢谢。虽然这可能不是您在生产中真正想要做的事情,但您可以遵循以下步骤
kubectl Get pod pod name-o yaml--export>pod.yaml
kubectl耗尽吊舱podname
pod.yaml
并将其应用于集群虽然这可能不是您在生产中真正想要做的事情,但您可以遵循以下步骤
kubectl Get pod pod name-o yaml--export>pod.yaml
kubectl耗尽吊舱podname
pod.yaml
并将其应用于集群您可以使用kubectl
--覆盖
标志。类似这样的东西,
kubectl run busybox --image=busybox --restart=Never --overrides='
{
"apiVersion": "v1",
"kind": "Pod",
"metadata": {
"labels": {
"test": "liveness"
},
"name": "liveness-exec"
},
"spec": {
"containers": [
{
"name": "liveness",
"image": "k8s.gcr.io/busybox",
"livenessProbe": {
"exec": {
"command": [
"cat",
"/tmp/healthy"
]
},
"initialDelaySeconds": 5,
"periodSeconds": 5
}
}
]
}
}
'
您可以使用kubectl
--覆盖
标志。类似这样的东西,
kubectl run busybox --image=busybox --restart=Never --overrides='
{
"apiVersion": "v1",
"kind": "Pod",
"metadata": {
"labels": {
"test": "liveness"
},
"name": "liveness-exec"
},
"spec": {
"containers": [
{
"name": "liveness",
"image": "k8s.gcr.io/busybox",
"livenessProbe": {
"exec": {
"command": [
"cat",
"/tmp/healthy"
]
},
"initialDelaySeconds": 5,
"periodSeconds": 5
}
}
]
}
}
'
我无法控制yaml的流程和应用yaml的流程。你知道应用后更新yaml的方法吗?如果你能从集群中获取yaml并保存它、编辑和重新应用,可以吗?我用kubectl edit pod/做了这件事,这会打开yaml并让你编辑,但当你保存和关闭它时,给了我这个错误“pod”laptop-n5oengpg-luca-nodejs2无效:规范:禁止:pod更新不能更改
spec.containers[*]以外的字段。image
,spec.initContainers[*]。image
,`。。。。。“.在谷歌云用户界面编辑yaml时尝试了相同的方法,但我有相同的错误Kubectl edit不允许您编辑。您必须保存在yaml中并编辑它,删除旧的pod,重新应用编辑过的YAMLY,我尝试删除并应用新的yaml,但这样会丢失指向原始jenkins-x cr的其他pod的指针eate devpod命令create。因此,我正在尝试在不破坏的情况下更新它。我无法控制yaml进程和应用yaml的进程。您知道应用yaml后更新的方法吗?如果您可以从集群获取yaml并保存、编辑和重新应用,可以吗?我使用kubectl edit pod/完成了此操作,这将打开yaml并让s您可以编辑,但当您保存并关闭它时出现此错误“Pod”laptop-n5oengpg-luca-nodejs2”无效:规范:禁止:Pod更新不能更改除spec.containers[*]以外的字段。image
,spec.initContainers[*]。image
,`。。。。。“.在谷歌云用户界面编辑yaml时尝试了相同的方法,但我有相同的错误Kubectl edit不允许您编辑。您必须保存在yaml中并编辑它,删除旧的pod,重新应用编辑过的YAMLY,我尝试删除并应用新的yaml,但这样会丢失指向原始jenkins-x cr的其他pod的指针eate devpod命令create。所以我尝试在不销毁的情况下更新它