Kubernetes: Taints and Tolerations

Taint digunakan untuk menandai Pod mana saja yang boleh/tidak boleh dijalankan pada Node tersebut. Pod yang dapat dijalankan oleh Node yang memiliki taint adalah Pod yang memiliki toleration dengan key-value yang sama dengan taint nya.

  • NoSchedule
    Kubernetes tidak akan menempatkan Pod baru pada Node ini. Pod yang lama akan dibiarkan pada Node tersebut sampai penjadwalan berikutnya.
  • PreferNoSchedule
    Kubernetes sebisa mungkin tidak akan menempatkan Pod baru pada Node ini, namun tidak menutup kemungkinan bahwa Pod baru akan ditempatkan di Node ini. Pod yang lama akan dibiarkan pada Node tersebut sampai penjadwalan berikutnya.
  • NoExecute
    Kubernetes tidak akan menempatkan Pod baru pada Node ini. Pod yang lama akan langsung dijawalkan untuk diusir (evicted) dari Node tersebut.

Menambahkan taint dengan key dan value

kubectl taint nodes <node_name> key=value:effect

Menambahkan taint dengan key dan tanpa value

kubectl taint nodes <node_name> key:effect

Menghapus taint berdasarkan key, value, dan effect

kubectl taint nodes <node_name> key=value:effect-

Menghapus taint berdasarkan key. Semua value dan effect pada key tersebut akan ikut terhapus.

kubectl taint node <node_name> key-


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *