Junior
Czym są etykiety?
sobes.tech AI
Odpowiedź od AI
Etykiety (Labels) w Kubernetes to pary klucz/wartość, które są dołączane do obiektów (np. Podów, Service'ów, Deployment'ów). Służą do organizowania i wybierania podzbiorów obiektów. Etykiety same w sobie nie mają znaczenia dla Kubernetes, ale są ważne dla użytkowników do identyfikacji i grupowania.
Przykłady użycia:
- Definiowanie środowiska:
environment: production,environment: development - Identyfikacja aplikacji:
app: my-web-app - Określenie wersji:
version: v1.2.3 - Identyfikacja poziomu usługi:
tier: frontend,tier: backend
Selektory etykiet (Label Selectors) są używane w zapytaniach API do wybierania grup obiektów na podstawie ich etykiet. Na przykład, Service może używać selektora etykiet do kierowania ruchu tylko do Podów z określonymi etykietami.
Przykłady selektorów:
environment=production: Wybiera wszystkie obiekty, które mają etykietęenvironmentz wartościąproduction.app in (my-web-app, another-app): Wybiera obiekty, których etykietaappma wartośćmy-web-applubanother-app.!environment: Wybiera obiekty, które nie mają etykietyenvironment.
apiVersion: v1
kind: Pod
metadata:
name: my-app-pod
labels: # Etykiety przypisane do 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: # Selekcja etykiet do wyboru Podów
app: my-app
tier: frontend
ports:
- protocol: TCP
port: 80
targetPort: 8080