Junior
რა არის ConfigMap Kubernetes-ში?
sobes.tech AI
პასუხი AI-სგან
ConfigMap — ეს არის API ობიექტი, რომელიც გამოიყენება კონფიდენციალული olmayan მონაცემების შენახვაში key-value წყვილებში Kubernetes-ში. იგი საშუალებას აძლევს განყო აპლიკაციის კონფიგურაცია კონტეინერის იმიჯიდან, რაც უფრო გადასატანი და მარტივს ხდის კონფიგურაციის მართვას.
Data-ები ConfigMap-ში შეიძლება გამოყენებულ იქნას შემდეგი გზებით:
- კონტეინერის გარემოს ცვლადებში.
- კონტეინერის ბრძანების ხაზზე არგუმენტად.
- ფაილების სახით, რომლებიც მონტაჟებულია Pod-ში:
ConfigMap-ის შექმნის მაგალითი ფაილიდან:
apiVersion: v1
kind: ConfigMap
metadata:
name: my-config
data:
my-config-file.properties: |
database.url=jdbc:mysql://localhost:3306/mydatabase
database.username=mydbuser
database.password=secret
ConfigMap-ის გამოყენება Pod-ში გარემოს ცვლადების მეშვეობით:
apiVersion: v1
kind: Pod
metadata:
name: my-app-pod
spec:
containers:
- name: my-app
image: my-app-image
env:
- name: DATABASE_URL
valueFrom:
configMapKeyRef:
name: my-config
key: database.url
- name: DATABASE_USERNAME
valueFrom:
configMapKeyRef:
name: my-config
key: database.username
ConfigMap-ის გამოყენება Pod-ში ფაილის მონტაჟვის საშუალებით:
apiVersion: v1
kind: Pod
metadata:
name: my-app-pod
spec:
containers:
- name: my-app
image: my-app-image
volumeMounts:
- name: config-volume
mountPath: /etc/config
volumes:
- name: config-volume
configMap:
name: my-config
ძირითადი მახასიათებლები:
- გამოიყენება არა-გაიდარ მონაცემებისთვის. საიდუმლო მონაცემებისთვის გამოიყენეთ Secrets.
- საშუალებას აძლევს დინამიურად განაახლოთ კონფიგურაცია, გარეშე ახალი სურათის შექმნის.
- მონაცემების ზომა შეზღუდულია (ჩამონათვალში 1 მბ-მდე).
- ზოგი ცვლილება ConfigMap-ში შეიძლება საჭირო გახადოს Pod-ის გადატვირთვა მათ გამოყენებისთვის (გარემოს ცვლადები საჭიროებენ გადატვირთვას, მონტაჟი ფაილად შეიძლება იყოს დინამიური).