更改 运行 部署的值

Changing value of running deployment

我有一个我不明白的问题。

当我编辑我的 wordpress 部署 ( kubectl edit deployment wordpress ) 并尝试添加我的 livenessProbereadinessProbe .

我收到下面的消息,我不明白为什么

Edit cancelled, no changes made.

如果我重新运行 ( kubectl edit deployment wordpress ) 没有修改 已保存:(

  template:
    metadata:
      creationTimestamp: null
      labels:
        app: wordpress
        tier: frontend
    spec:
      containers:
      - env:
        - name: WORDPRESS_DB_HOST
          value: wordpress-mysql
        - name: WORDPRESS_DB_PASSWORD
          valueFrom:
            secretKeyRef:
              key: password.txt
              name: mysql-pass-h4hhdb94mg
        image: wordpress:latest
        imagePullPolicy: Always
        readinessProbe:
          tcpSocket:
            port: 8080
          initialDelaySeconds: 5
          periodSeconds: 10
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /healthz
            port: 8080
            scheme: HTTP
          initialDelaySeconds: 5
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1

首先确保您在编辑后已保存更改。

您的错误可能是由于打开了一个分叉而不是停留的编辑器造成的。

这意味着您需要将 $EDITOR 设置为等待的编辑器。例如。 nanovimemacs 应该有效,例如如果您使用 sublime text,则必须使用 subl -w 明确告诉它等待。

你没有说 shell 你现在 运行 宁。如果它是 bash、运行 export EDITOR="subl -w",在 fish 运行 set -gx EDITOR subl -w 中(或者 "subl -w" 如果你使用 fish < 3.0)。

看看:.

您还可以通过以下方式编辑部署:

1. kubectl patch。以下命令禁用部署 livenessProbe:

# Disable a deployment livenessProbe using a json patch with positional arrays
$ kubectl patch deployment valid-deployment  --type json   -p='[{"op": "remove", "path": "/spec/template/spec/containers/0/livenessProbe"}]'

2. 手动编辑部署 yaml 文件并应用更改:

$ kubectl apply -f your-deployment.yaml