Junior
Kubernetes-də ConfigMap nədir?
sobes.tech Süni İntellekt
AI-dan cavab
ConfigMap Kubernetes-də istifadə olunan API obyektidir və qeyri-gizli məlumatları açar-dəyər cütləri şəklində saxlamaq üçün istifadə olunur. Bu, tətbiqin konfiqurasiyasını konteynerin görüntüsündən ayırmağa imkan verir, bu da tətbiqləri daha daşına bilən edir və konfiqurasiyanın idarə olunmasını sadələşdirir.
ConfigMap-dəki məlumatlar aşağıdakı üsullarla istifadə oluna bilər:
- Konteynerin ətraf mühit dəyişənləri kimi.
- Konteyner üçün komanda xətti arqumentləri kimi.
- Pod-a montaj olunan volume içindəki fayllar kimi.
Fayldan ConfigMap yaratma nümunəsi:
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-in Pod-da ətraf mühit dəyişənləri vasitəsilə istifadəsi:
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-in Pod-da fayl kimi montajı:
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
Əsas xüsusiyyətlər:
- Gizli olmayan məlumatlar üçün istifadə olunur. Gizli məlumatlar üçün Secrets istifadə edilməlidir.
- Konfiqurasiyanı dinamik şəkildə yeniləməyə imkan verir, yenidən şəkil qurmağa ehtiyac yoxdur.
- ConfigMap-dəki məlumatların ölçüsü məhduddur (standart 1 MB).
- Bəzi dəyişikliklər Pod-un yenidən başlatılmasını tələb edə bilər, istifadə üsulundan asılı olaraq (ətraf mühit dəyişənləri üçün yenidən başlatma tələb olunur, montaj fayl kimi dinamik ola bilər).