Imperative Yöntem: Özel komutlar aracılığıyla süreçleri yürütme
Declarative Yöntem: Yapılacak işi bir veya birden fazla script
içinde tanımlayıp çalıştırma
Imperative Pod
Yaratma
kubectl run demo-pod –image=nginx:alphine
nginx container ile bir Pod oluşturmak için bir deployment
yaratılır
Master üzerindeki api-server ve kube-scheduler ile uygun bir
node üzerinde pod’un yaratılması schedule edilir.
Pod’a Cluster IP adresi atanır. Cluster IP sadece cluster
içinden erişildiği dışarıya kapalı olduğu için dışarıdan erişim isteniyorsa
port forwarding yapılmalıdır.
Declarative Pod
Yaratma
Yaml veya json dosyaları kullanılarak yapılır.
Bu dosyalar maplar ve list’lerden oluşur.
Yaml validate için online siteler üzerinden validation
yapılabilir. Indent önemli.
Map:
Name:value ikilileri bulunur.
İç içe maplar olabilir.
List:
Sıralı eleman listeleridir.
Liste elemanları tire (-) ile başlar.
Liste içinde eleman olarak mapler olabilir.
Komutlar:
#imperative yöntemle bir namespace oluşturalım
kubectl create ns logging-ns
#namespaceleri görelim
kubectl get ns
#namespace’i silelim
kubectl delete ns logging-ns
#declarative yöntemle namespace oluşturalım
kubectl create -f logging-ns.yaml
kubectl get ns
#imperative yöntemle 8080 portu üzerinden Google’ın
echoserver container’ı kullanılarak bir deployment oluşturalım.
kubectl run hello-k8s
--image=gcr.io/google_containers/echoserver:1.4 --port=8080
kubectl get deployment
kubectl get pods
Burada replica belirtilemediği için 1 tane pod oluşturuldu.
#declarative yöntemle 8080 portu üzerinden Google’ın
echoserver container’ı kullanılarak bir deployment oluşturalım.
kubectl create -f gcr-deployment.yaml
kubectl get deployments
kubectl get pods
Hiç yorum yok:
Yorum Gönder