簡體   English   中英

Helm 不使用 values.yaml 文件

[英]Helm not using values.yaml file

我下載了最新的values.yaml並更新了配置塊並運行了命令helm upgrade alertmanager prometheus-community/alertmanager --values values.yaml但 alertmanager-0 pod 配置文件根本沒有改變。

values.yaml partial content:

config:
  global:
    # slack_api_url: ''

  templates:
    - '/etc/alertmanager/*.tmpl'

  receivers:
    - name: default-receiver
      email_configs:
      - to: test@gmail.com
        from: test@gmail.com
        smarthost: postfix.test-internal:25
      # slack_configs:
      #  - channel: '@you'
      #    send_resolved: true

  route:
    group_wait: 10s
    group_interval: 5m
    receiver: default-receiver
    repeat_interval: 3h

當我檢查alertmanager.yml它仍然具有默認內容:

kubectl exec -it alertmanager-0 cat /etc/alertmanager/alertmanager.yml

global: {}
receivers:
- name: default-receiver
route:
  group_interval: 5m
  group_wait: 10s
  receiver: default-receiver
  repeat_interval: 3h
templates:
- /etc/alertmanager/*.tmpl

仍在試圖弄清楚這一點。

我可以從 alertmanager kube secrets 中看到有兩個,其中一個附加了“-generated”。

這個“生成”的秘密是安裝到 /etc/alertmanager/config (alertmanager.yaml) 的 pod 中的秘密,但問題是當我在我的機器上更新 values.yaml 文件時,應用升級然后“-generated”秘密具有原始默認值,而沒有“-generated”的秘密具有正確的新值。

我確信這樣做一定是有原因的,但無法弄清楚使用這些的正確方法。 我認為,當您更改 values.yaml 中的值時,那些應該是積極應用於在 alertmanager pod 中運行的配置的值。

任何對此有更多信息的人都會很高興知道答案。

如果您的配置沒有更改,則您可能沒有正確注入值(錯誤的縮進或節點)。

為了弄清楚這些值是如何執行的,請使用helm template alertmanager -f values.yaml > out.yaml它將向您展示最終清單如何模板化。

為了弄清楚應該在哪里注入值,您可以在charts目錄中解壓縮圖表的依賴項並檢查templates/<chart-name>/<manifest-name>yaml下的模板(例如: charts/alertmanager/templates/statefulset.yaml )。

最后,您可以運行helm upgrade alertmanager prometheus-community/alertmanager --values values.yaml --debug --dry-run > dry-run.yaml以查看如何計算這些值。 有了這個,你可以看到你的值被注入到哪里。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM