Сначала сохраните вывод команды kubect get nodes в файл JSON:
$ exampleCommand > node-info.json
Затем создайте правильный ConfigMap .
Вот пример:
apiVersion: v1
kind: ConfigMap
metadata:
name: example-config
data:
node-info.json: |
{
"array": [
1,
2
],
"boolean": true,
"number": 123,
"object": {
"a": "egg",
"b": "egg1"
},
"string": "Welcome"
}
Затем не забудьте добавить следующие строки ниже раздела спецификации в файле конфигурации модуля:
env:
- name: NODE_CONFIG_JSON
valueFrom:
configMapKeyRef:
name: example-config
key: node-info.json
Вы также можете использовать PodPresent .
PodPreset - это объект, позволяющий вводить информационное яйцо. переменные среды в стручки во время создания.
Посмотрите на приведенный ниже пример:
apiVersion: settings.k8s.io/v1alpha1
kind: PodPreset
metadata:
name: example
spec:
selector:
matchLabels:
app: your-pod
env:
- name: DB_PORT
value: "6379"
envFrom:
- configMapRef:
name: etcd-env-config
key: node-info.json
, но помните, что вы также должны добавить:
env:
- name: NODE_CONFIG_JSON
valueFrom:
configMapKeyRef:
name: example-config
key: node-info.json
в определение вашего модуля, соответствующее вашим PodPresent и ConfigMap конфигурация.
Более подробную информацию вы можете найти здесь: podpresent , pod-present-configuration .