W codziennych bujaniach w  Kubernetesowych morzach chmurach, natrafiamy porty w postaci plików YAML. To właśnie tam wprowadzamy ładunek informacji dla kontenera – od nazwy po szczegółowe parametry. By jednak statek mógł bezpiecznie wypłynąć, musimy znać obowiązkowe pola. Bez kótrych nasza łajba pójdzie na dno.

Podstawowe, obowiązkowe pola w pliku YAML

apiVersion – Wskazuje wersję API w Kubernetes. Przykładowo: apps/v1 albo v1.

kind – Typ zasobu, jaki chcemy utworzyć (np. Pod, Deployment, Service).

metadata – Skarbnica informacji o obiekcie, np. name, labels czy annotations. Zwykle name jest absolutnym minimum.

spec – Serce manifestu, w którym deklarujemy, jak nasz obiekt ma wyglądać i działać.

Dodatkowe pola takie jak selector, replicas czy template należą już do specyfiki konkretnego kinda (np. Deployment), ale w praktyce także są obowiązkowe, gdy tworzymy dany rodzaj obiektu.

Przykładowy plik YAML pod Deployment NGINX

Poniżej znajdziesz przykładowy plik YUML pod stworzenie prostego poda z nginx-em.

				
					# Określamy wersję API: w przypadku Deployment zwykle jest to apps/v1
apiVersion: v1

# Definiujemy rodzaj (typ) zasobu: Deployment, Pod, Service itp.
kind: Pod

# Metadane naszego obiektu – nazwa jest kluczowa, label można dodać wg uznania
metadata:
  name: nginx-pod # Unikalna nazwa, która identyfikuje nasz obiekt

# Spec – główna część mówiąca, jak nasz Deployment ma wyglądać
spec:
    containers:
    - name: nginx-pod-container          # Nazwa kontenera
    image: nginx:latest  # Obraz Dockerowy, który wykorzystujemy
				
			

Zakończenie

Dobrze opracowany plik YAML staje się kluczem do pewnego i skutecznego wdrożenia. Rozumienie obowiązkowych pól sprawia, że stajemy na straży porządku i bezpieczeństwa w klastrze – niczym latarnia morska wskazujemy właściwą drogę statkom usług. Nie bójmy się wzbogacać naszych yamlów w etykiety, adnotacje czy dodatkowe pola – to wszystko doprowadzi do łatwiejszej administracji i skuteczniejszego skalowania. Wszak Kubernetes to sztuka harmonii!