Middle
Ինիտ-կոնտեյները ինչ է Kubernetes-ում?
sobes.tech AI
Պատասխան AI-ից
Նշանակում է հատուկ կոնտեյներ, որը ավարտում է իր աշխատանքը նախքան հիմնական կոնտեյներները սկսվեն։
Նրա նպատակն է՝
- Նախապատրաստել միջավայրը հիմնական հավելվածը գործարկելուց առաջ։
- Լիցքավորել կոնֆիգուրացիաներ կամ սցենարներ։
- Հետեւել արտաքին ծառայությունների (մատուցողներ, API) պատրաստ լինելուն։
- Կարգավորել ֆայլային համակարգը կամ իրավունքները։
Հիմնական հատկանիշները՝
- Կատարվում են ըստ պոդի բնութագրում նշված կարգով։
- Ամեն մի init-kontainer պետք է հաջողությամբ ավարտվի նախքան հաջորդը սկսվի կամ հիմնական կոնտեյներները սկսեն գործել։
- Եթե init-kontainer-ը ձախողվի, Kubernetes-ը վերագործարկում է պոդը, մինչև init-kontainer-ը հաջողությամբ ավարտվի (պոդի վերագործարկման քաղաքականության համաձայն)։
- Դրանք ունեն հասանելիություն ընդհանուր volume-ի, որը թույլ է տալիս փոխանցել տվյալներ հիմնական կոնտեյներներին։
YAML բնութագրում՝
// Init-kontainer-ով պոդի օրինակ
apiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
initContainers: // Init-kontainerների ցանկ
- name: init-myservice // Init-kontainerի անուն
image: my-init-image // Init-kontainerի պատկեր
command: ["sh", "-c", "echo 'Initializing...' && sleep 5"] // Կատարելի հրամանը
containers: // Հիմնական կոնտեյներների ցանկ
- name: my-app // Հիմնական կոնտեյներ անուն
image: my-app-image // Հիմնական կոնտեյներ պատկեր
ports:
- containerPort: 80