Sobes.tech
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