Омадани ҳолат ҳангоми иҷрои deployment боқӣ мемонад?
sobes.tech AI
Ҷавоб аз AI
Дар вақти паҳн кардани Deployment дар Kubernetes ҳолат дар дохили контроллери Deployment нигоҳ дошта намешавад. Deployment ReplicaSet-ро идора мекунад, ки ба навбат Pod-ҳоро идора мекунад. Pod-ҳо табиати эфемерӣ доранд ва метавонанд дубора оғоз ё ёдгирӣ ё хориҷ шаванд.
Нигоҳ доштани ҳолат барои барномаҳои ки Deployment насб мекунад, одатан бо истифода аз механизмҳои дигар амалӣ мешавад:
- Persistent Volumes (PV) ва Persistent Volume Claims (PVC): Барои нигоҳ доштани маълумотҳое истифода мешаванд, ки ҳатто пас аз хориҷ ё дубора оғоз кардани Pod-ҳо бояд дастрас бошанд. PV захираро пешниҳод мекунад, ва PVC онро талаб мекунад.
- ConfigMaps ва Secrets: Барои нигоҳ доштани маълумоти конфигурасионӣ ва маълумоти ҳассос (паролҳо, клучҳо), ки аз образи контейнер ҷудо шудаанд.
- StatefulSets: Контролери махсус барои идора кардани барномаҳои бо ҳолат. StatefulSets кафолат медиҳад, ки ҳар Pod дорои идентификатсияи устувор ва захираи устувор аст, инчунин паҳншавӣ ва масштабкунии мураттабро.
Масалан, дар манифести Pod барои талаб кардани PVC:
# Тартиби Pod, ки PVC-ро истифода мебарад
apiVersion: v1
kind: Pod
metadata:
name: my-stateful-app
spec:
containers:
- name: my-container
image: my-image
volumeMounts:
- name: data-volume
mountPath: /data
volumes:
- name: data-volume
persistentVolumeClaim:
claimName: my-pvc-claim # Номи PVC, ки истифода мешавад
Масалан, муайян кардани StatefulSet:
# Муайян кардани StatefulSet
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: my-statefulset
spec:
serviceName: "my-service"
replicas: 3
selector:
matchLabels:
app: my-statefulset-app
template:
metadata:
labels:
app: my-statefulset-app
spec:
containers:
- name: my-container
image: my-image
volumeMounts:
- name: my-volume
mountPath: /data
volumeClaimTemplates:
- metadata:
name: my-volume
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 1Gi
Ҳамин тавр, Deployment худ ҳолатро нигоҳ намедорад. Вай вазифадор аст, ки шумораи лозимии репликҳои Pod-ҳоро таъмин кунад, бе нигоҳ доштани шахсияти инфиродии онҳо ё ҳолат байни рестартҳо. Барномаҳои бо ҳолат истифода мебаранд StatefulSets, PV/PVC, ConfigMaps ва Secrets.