Kubernetes, modern uygulama dağıtım ve yönetim süreçlerinde vazgeçilmez bir araçtır. Bu rehberde, Kubernetes YAML dosyalarının temel yapısını ve bir Pod nesnesini nasıl tanımlayacağınızı adım adım öğreneceksiniz.
Bölüm 1: YAML Dosyasının Oluşturulması
Kubernetes YAML dosyası, uygulamanızın yapılandırmasını ve Kubernetes üzerinde nasıl dağıtılacağını belirleyen bir metin dosyasıdır. İlk adım olarak, örneğin “hello-world.yaml” adında bir dosya oluşturun ve tercih ettiğiniz bir metin düzenleyiciyle açın.
Bölüm 2: YAML Dosyasının İçeriğinin Tanımlanması
YAML dosyası, çeşitli bölümlerden oluşur ve her bölüm Kubernetes nesnelerinin özelliklerini tanımlar.
2.1. apiVersion ve kind:
YAML dosyasının ilk satırlarında, kullanılacak Kubernetes API sürümünü ve tanımlanacak nesnenin türünü belirtmelisiniz. Aşağıdaki satırları YAML dosyanıza ekleyin:
apiVersion: v1
kind: Pod
Bu örnekte, apiVersion: v1
ifadesi, Kubernetes API’nin sürümünü belirtir. kind: Pod
ifadesi ise oluşturulacak nesnenin bir Pod olduğunu gösterir.
2.2. metadata Bölümü:
metadata
bölümü, Kubernetes nesnesine isim ve etiketler eklemenizi sağlar. Bu alan, nesnenin tanımlanmasında ve izlenmesinde önemli bir rol oynar. Aşağıdaki örnek, YAML dosyanızın metadata bölümünü tanımlamanıza yardımcı olacaktır:
metadata:
name: hello-world-pod
labels:
app: hello-world
Burada, name: hello-world-pod
ifadesi, Pod’un adını belirtirken, labels
altındaki app: hello-world
etiketi, bu Pod’un hangi uygulamaya ait olduğunu belirtir.
2.3. spec Bölümü:
spec
bölümü, Pod’un istenen durumunu tanımlar. Bu bölümde, ilgili konteynerin özellikleri ve davranışları belirlenir. Örneğin, aşağıdaki YAML kodu ile Pod’un spec
bölümünü tamamlayabilirsiniz:
spec:
containers:
- name: hello-world-container
image: nginx
command: ["echo", "Merhaba, Dünya!"]
ports:
- containerPort: 80
Bu bölümde, containers
altında bir konteyner tanımlanır. image: nginx
ifadesi, bu konteynerin hangi Docker imajını kullanacağını belirtir. command
kısmı ise, konteyner başlatıldığında çalıştırılacak komutu tanımlar; bu örnekte “Merhaba, Dünya!” ifadesi terminale yazdırılacaktır. Son olarak, ports
altında containerPort: 80
ile konteynerin hangi portu dinleyeceği belirtilir.
Bölüm 3: YAML Dosyasının Uygulanması
YAML dosyasını tamamladıktan sonra, Kubernetes cluster’ınıza bu dosyayı uygulamak için aşağıdaki adımları izleyebilirsiniz:
- YAML Dosyasını Uygulama: YAML dosyasını Kubernetes cluster’ınıza yüklemek için
kubectl
komutunu kullanın:kubectl apply -f hello-world.yaml
- Pod’un Durumunu Kontrol Etme: Pod’un doğru bir şekilde çalışıp çalışmadığını kontrol etmek için şu komutu kullanabilirsiniz:
kubectl get pods
Bu adımları izleyerek, Kubernetes üzerinde basit bir Pod yapılandırması oluşturmuş olursunuz. Pod, tanımlanan konteynerin “echo” komutu ile “Merhaba, Dünya!” mesajını yazdırmasını sağlayacaktır. Bu basit örnek, Kubernetes YAML dosyalarının temel yapısını anlamanıza yardımcı olurken, Kubernetes üzerinde uygulama dağıtımını daha iyi yönetmenize olanak tanıyacaktır.