Kubectl обновить ConfigMap с файлами - PullRequest
2 голосов
/ 03 апреля 2020

У меня есть инструмент, работающий на K8s, который использует четыре файла конфигурации:

falco-config/falco.yaml             
falco-config/falco_rules.local.yaml 
falco-config/falco_rules.yaml       
falco-config/k8s_audit_rules.yaml

Во время развертывания я создаю карту конфигурации для этого инструмента с помощью команды:

kubectl create configmap falco-config --from-file=..../falco-config/

It создает ConfigMap с этими четырьмя файлами. Теперь предположим, что я хочу обновить falco_rules.yaml, но у меня нет (по разным причинам) других файлов. Какая команда kubectl может помочь мне сделать это? Я безуспешно искал решение на K8s do c и Stackoverflow.

Другой вопрос: есть ли такой пример с API K8s в Javascript?

* 1011? * ПРИМЕЧАНИЕ: Я прочитал этот вопрос: Kubectl update configMap , но это не касается изменения через API и того факта, что мне нужно обновить только один файл, пока вся конфигурация состоит из 4 файлов.

1 Ответ

2 голосов
/ 03 апреля 2020

К сожалению, невозможно обновить указанные c поля ConfigMap в одном go. Предполагая, что ресурс ConfigMap уже создан, вы можете обойти это следующим образом:

  1. Извлечь ресурс ConfigMap: kubectl get configmap <name> --export -o yaml > config.yaml, чтобы получить ресурс ConfigMap локально
  2. Обновить поля в config.yaml, чтобы значения falco_rules.yaml были правильно введены. Это можно сделать программно.
  3. kubectl apply -f config.yaml для перенастройки существующего ресурса ConfigMap
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...