Junior
Ի՞նչ են լեյբլները։
sobes.tech AI
Պատասխան AI-ից
Kubernetes- ում Լեյբլները (Labels) բանալի/արժեք զույգեր են, որոնք կցվում են օբյեկտներին (օրինակ, Pod-ներին, Service-ներին, Deployment-ներին): Դրանք օգտագործվում են օբյեկտների ենթախմբեր կազմակերպելու և ընտրելու համար: Լեյբլները ինքնին նշանակություն չունեն Kubernetes-ի համար, բայց կարևոր են օգտվողների համար նույնականացման և խմբավորելու համար:
Օգտագործման օրինակներ:
- միջավայրի սահմանում՝
environment: production,environment: development - հավելվածի նույնականացում՝
app: my-web-app - տարբերակի սահմանում՝
version: v1.2.3 - ծառայության մակարդակի նույնականացում՝
tier: frontend,tier: backend
Լեյբլ ընտրիչներ (Label Selectors) օգտագործվում են API հարցումներում օբյեկտների խմբեր ընտրելու համար՝ հիմնվելով նրանց լեյբլների վրա: Օրինակ, Service-ը կարող է օգտագործել լեյբլ ընտրիչ՝ ուղղորդելու տրաֆիկը միայն որոշ լեյբլներով Pod-ներին:
Նմուշներ ընտրիչների համար՝
environment=production: Ընտրում է բոլոր այն օբյեկտները, որոնցenvironmentլեյբլը ունի արժեքproduction:app in (my-web-app, another-app): Ընտրում է այն օբյեկտները, որոնցappլեյբլը ունի արժեքmy-web-appկամanother-app:!environment: Ընտրում է այն օբյեկտները, որոնք չունենenvironmentլեյբլ:
apiVersion: v1
kind: Pod
metadata:
name: my-app-pod
labels: # Pod-ի վրա կիրառվող լեյբլներ
app: my-app
tier: frontend
environment: development
spec:
containers:
- name: my-app-container
image: my-app-image:latest
apiVersion: v1
kind: Service
metadata:
name: my-app-service
spec:
selector: # Լեյբլ ընտրիչ՝ Pod-ների ընտրության համար
app: my-app
tier: frontend
ports:
- protocol: TCP
port: 80
targetPort: 8080