1. ホーム
  2. kubernetes

[解決済み] Kubectl アップデート configMap

2022-03-05 01:28:02

質問

以下のコマンドでconfigMapを作成しています。

kubectl create configmap test --from-file=./application.properties --from-file=./mongo.properties --from-file=./logback.xml 

さて、私はmongo.propertiesからキーの値を変更しました。これはkubernetesで更新する必要があります。

オプション1: -

kubectl edit test

ここでは、ファイル全体を開いています。しかし、私は mongo.properties を更新したいだけなので、mongo.properties のみを表示したいのです。 他の方法はないでしょうか?

注意:- mongo.propertiesを別のconfigMapに持ちたくありません。

ありがとうございます。

解決方法は?

いいえ、できません。

kubernetesの置換は、単純にそのconfigmap内のすべてを置き換えます。その中の1つのファイルや1つのプロパティを更新するだけではダメなのです。

しかし、クライアントApiで確認すると、たくさんのファイルを含むconfigmapを作成した場合。その場合、それらのファイルはHashMapとして保存され、キーはデフォルトでファイル名、値は文字列としてエンコードされたファイルの内容です。そのため、HashMapにある既存のキーと値のペアに基づいた独自の関数を記述することができます。

この問題に対処する既存の方法があれば、ぜひ教えてください :)

参考までに、1つまたは数個のプロパティだけを更新したい場合は、patchを使用すれば可能です。ただし、実装が少し大変です。

これ これ が役立つかもしれません。