Kubernetes- Helm升级不起作用

时间:2017-07-28 09:20:35

标签: kubernetes kubernetes-helm

我正在尝试升级其中一张图表。但是,升级后,我在图表中的“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"

我尝试使用以下命令升级

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

ironic-molly ”是发布名称, spring-app-0.1.2.tgz 是我的图表,包含更改。

Helm输出表示软件包已升级,但我在deployment.yaml中缺少所做的更改。可能导致此问题的原因。?

此致

Muhammed Roshan

3 个答案:

答案 0 :(得分:1)

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


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

1 ) 将 --debug 添加到 helm 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 }}"

答案 1 :(得分:0)

语法(缩进)

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"

应该做的伎俩

答案 2 :(得分: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