Çok derin ve çok konu var sadece kendime hatırlatmalar koyuyorum.
Selector kısmı pod definition daki label kısmı.
Başka name space de ki bir resource a erişmek için onun k8s FQDN ini kullanırız. K8s içine ki DNS servisi bunu halleder.
Taints and Tolerations
Adamin üzerine sıktığı sprey “taint” böceği itiyor, ama bazı böcekler buna dayanabiliyor, buda böceğin “toleration” ı oluyor. Yani podların nodelara gidip gitmeyeceğine bu ikı parametre karar veriyor.
Taint effect ile toleration ı olmayan podlara ne olacağını belirliyoruz.
3 İhtimallidir.
Noschedule : Pod o node a planlanmayacaktır.
PreferNoSchedule : Pod o node a planlanmamaya çalışılacaktır ama garanti değil.
NoExecute: Yeni podlar planlanmayacaktır ve mevcut pod larda atılacaktır nodedan.
Yukarıda ki taint e tolere edebilmek için pod definitionda aşağıda ki gibi ekleyeceğiz.
apiVersion: v1
kind: Pod
metadata:
labels:
run: bee
name: bee
spec:
containers:
- image: nginx
name: bee
tolerations:
- key: "spray"
operator: "Equal"
value: "mortein"
effect: "NoSchedule"
dnsPolicy: ClusterFirst
restartPolicy: Always