2

我正在尝试升级我的一张图表。但是我在图表中的“deployment.yaml”模板中所做的更改在升级后不存在。我在我的 kubernetes deployment.yaml 文件的规范中添加了以下几行

spec:
  containers:
  - env:
    - name: LOGBACK_DB_ACQUIRE_INCREMENT
      value: "1"
    - name: LOGBACK_DB_MAX_IDLE_TIME_EXCESS_CONNECTIONS
      value: "10"
    - name: LOGBACK_DB_MAX_POOL_SIZE
      value: "2"
    - name: LOGBACK_DB_MIN_POOL_SIZE
      value: "1"

我尝试使用以下命令进行升级

helm 升级 ironic-molly spring-app-0.1.2.tgz --recreate-pods

其中“ ironic -molly ”是发布名称,spring-app-0.1.2.tgz是我的变化图表。

Helm 输出显示包已升级,但我所做的更改在 deployment.yaml 中丢失。什么可能导致这个问题。?

问候,

穆罕默德·罗斯汉

4

3 回答 3

1

语法(缩进)

spec:
  containers:
  - env:
    - name: LOGBACK_DB_ACQUIRE_INCREMENT
      value: "1"
    - name: LOGBACK_DB_MAX_IDLE_TIME_EXCESS_CONNECTIONS
      value: "10"
    - name: LOGBACK_DB_MAX_POOL_SIZE
      value: "2"
    - name: LOGBACK_DB_MIN_POOL_SIZE
      value: "1"

应该做的伎俩

于 2017-07-28T10:03:06.700 回答
1

(如果问题不在于缩进 - 添加一个通常也与标题匹配的答案)。


升级 helm 图表时需要考虑的几点:

1)添加--debughelm upgrade命令。

2)检查特定资源的当前值 - 例如部署:
kubectl get deploy <deploymnet name> -o yaml

3)查看最新事件:kubectl get events -n <namespace>

4 ) 查看最新日志:kubectl logs -l name=myLabel.

5 ) 如果要确保重新创建 pod - 通过注释添加特定时间戳:

kind: Deployment
metadata:
...
spec:
  template:
    metadata:
      labels:
        app: k8s-dashboard
      annotations:
        timestamp: "{{ date "20060102150405" .Release.Time }}"
于 2021-03-25T13:34:48.110 回答
0

我认为你的缩进有问题。我用我的集群进行了测试,它可以工作。env 标记应该与图像开始相同的位置:在您的示例中,它从容器下方开始。

spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: envtest
        release: ugly-lizzard
    spec:
      containers:
        - name: envtest
          image: "nginx:stable"
          imagePullPolicy: IfNotPresent
          env:
          - name: SSHD
            value: disalbe
          ports:
            - containerPort: 80
于 2017-07-29T01:07:52.910 回答