{"id":4143,"date":"2025-12-24T03:46:28","date_gmt":"2025-12-24T00:46:28","guid":{"rendered":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/"},"modified":"2025-12-24T03:46:28","modified_gmt":"2025-12-24T00:46:28","slug":"exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling","status":"publish","type":"post","link":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/","title":{"rendered":"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling"},"content":{"rendered":"<p><br \/>\n<\/p>\n<p>Kubernetes has revolutionized the way we deploy and manage applications in a containerized environment. One of the key features that enhances its efficiency is the concept of affinity and anti-affinity rules. Specifically, topology-based affinity offers a robust mechanism for scheduling pods based on the underlying infrastructure topology. In this blog post for WafaTech, we\u2019ll take a deep dive into topology-based affinity, its advantages, and practical use cases in Kubernetes.<\/p>\n<p><\/p>\n<h2>Understanding Affinity and Anti-Affinity<\/h2>\n<p><\/p>\n<p>Before we explore topology-based affinity, it&#8217;s essential to understand the broader concept of affinity and anti-affinity in Kubernetes:<\/p>\n<p><\/p>\n<ul><\/p>\n<li><strong>Affinity<\/strong>: This allows you to schedule pods on nodes based on certain criteria, enhancing resource utilization and improving application performance.<\/li>\n<p><\/p>\n<li><strong>Anti-Affinity<\/strong>: Conversely, this ensures that certain pods do not run on the same node, which can be crucial for high-availability configurations.<\/li>\n<p>\n<\/ul>\n<p><\/p>\n<p>Affinity rules can be node-based or topology-based, and while node affinity focuses on specific labels on nodes, topology-based affinity zooms in on the infrastructure layer.<\/p>\n<p><\/p>\n<h2>What is Topology-Based Affinity?<\/h2>\n<p><\/p>\n<p>Topology-based affinity enables users to influence where pods are scheduled based on the topology of the network or the underlying infrastructure. This can involve factors such as availability zones, data centers, or racks, allowing for finer control of the placement of workloads across these topologies.<\/p>\n<p><\/p>\n<h3>Key Components of Topology-Based Affinity<\/h3>\n<p><\/p>\n<ol><\/p>\n<li>\n<p><strong>Topology Keys<\/strong>: This defines the granularity of scheduling. For example, you might have keys representing \u201cfailure-domain.beta.kubernetes.io\/zone\u201d or \u201cfailure-domain.beta.kubernetes.io\/region,\u201d which map to specific availability zones or regions within your cloud provider.<\/p>\n<p>\n<\/li>\n<p><\/p>\n<li>\n<p><strong>Affinity Rules<\/strong>: These are specified in pod specifications, indicating which topology keys a pod prefers or requires. The pod will then be scheduled on nodes that meet these criteria.<\/p>\n<p>\n<\/li>\n<p>\n<\/ol>\n<p><\/p>\n<h3>Advantages of Topology-Based Affinity<\/h3>\n<p><\/p>\n<ol><\/p>\n<li>\n<p><strong>Improved Performance<\/strong>: By placing related pods in proximity to each other, you can reduce latency and increase the throughput of network communications.<\/p>\n<p>\n<\/li>\n<p><\/p>\n<li>\n<p><strong>Enhanced Resilience<\/strong>: Distributing pods across different zones or racks helps prevent a single point of failure and increases the availability of your application.<\/p>\n<p>\n<\/li>\n<p><\/p>\n<li>\n<p><strong>Resource Optimization<\/strong>: It helps in optimizing resource consumption by balancing loads across different nodes based on their location in the topology.<\/p>\n<p>\n<\/li>\n<p>\n<\/ol>\n<p><\/p>\n<h2>Implementing Topology-Based Affinity<\/h2>\n<p><\/p>\n<p>To implement topology-based affinity in your Kubernetes clusters, follow these steps:<\/p>\n<p><\/p>\n<h3>Step 1: Label Your Nodes<\/h3>\n<p><\/p>\n<p>Before you can utilize topology-based affinity, you need to label your nodes based on their topology. For instance, you may label your nodes with their corresponding availability zones:<\/p>\n<p><\/p>\n<p>bash<br \/>\nkubectl label nodes <node-name> failure-domain.beta.kubernetes.io\/zone=<zone><\/p>\n<p><\/p>\n<h3>Step 2: Define Affinity Rules in Pod Specifications<\/h3>\n<p><\/p>\n<p>Now, you can define your affinity rules in your pod specifications. Here\u2019s an example:<\/p>\n<p><\/p>\n<p>yaml<br \/>\napiVersion: v1<br \/>\nkind: Pod<br \/>\nmetadata:<br \/>\nname: example-pod<br \/>\nspec:<br \/>\naffinity:<br \/>\npodAffinity:<br \/>\nrequiredDuringSchedulingIgnoredDuringExecution:<\/p>\n<p><\/p>\n<ul><\/p>\n<li>labelSelector:<br \/>\nmatchExpressions:<\/p>\n<ul><\/p>\n<li>key: app<br \/>\noperator: In<br \/>\nvalues:<\/p>\n<ul><\/p>\n<li>my-app<br \/>\ntopologyKey: failure-domain.beta.kubernetes.io\/zone<br \/>\ncontainers:<\/li>\n<p>\n<\/ul>\n<p>\n<\/li>\n<p>\n<\/ul>\n<p>\n<\/li>\n<p><\/p>\n<li>name: my-container<br \/>\nimage: my-image:latest<\/li>\n<p>\n<\/ul>\n<p><\/p>\n<p>In this example, the pod requires that a specific label (<code>app=my-app<\/code>) is present on other pods within the same availability zone.<\/p>\n<p><\/p>\n<h3>Step 3: Monitor and Adjust<\/h3>\n<p><\/p>\n<p>Once you&#8217;ve implemented topology-based affinity, monitor the performance of your applications. Adjust your affinity rules based on actual performance and application behavior to ensure optimal scheduling.<\/p>\n<p><\/p>\n<h2>Use Cases<\/h2>\n<p><\/p>\n<h3>Multi-Zone Applications<\/h3>\n<p><\/p>\n<p>For applications that span multiple availability zones, topology-based affinity can help localize traffic and manage latency issues. For instance, a database pod can be scheduled close to its application frontend, ensuring quick response times.<\/p>\n<p><\/p>\n<h3>Disaster Recovery Solutions<\/h3>\n<p><\/p>\n<p>In a disaster recovery scenario, using topology-based affinity can ensure that instances of critical applications exist in different zones or regions, enhancing fault tolerance.<\/p>\n<p><\/p>\n<h3>Optimizing Resource Utilization<\/h3>\n<p><\/p>\n<p>By spreading pods across nodes based on topology, you can optimize node usage and ensure that resources are allocated efficiently, increasing the overall performance of the Kubernetes cluster.<\/p>\n<p><\/p>\n<h2>Conclusion<\/h2>\n<p><\/p>\n<p>Topology-based affinity in Kubernetes offers a powerful way to control pod scheduling, optimizing resource utilization and enhancing application performance. By leveraging node labels and defining affinity rules, organizations can create robust, fault-tolerant architectures that can flexibly adapt to underlying infrastructure changes.<\/p>\n<p><\/p>\n<p>As cloud architectures grow increasingly complex, understanding and utilizing Kubernetes\u2019 advanced features like topology-based affinity becomes integral to successful application delivery. Embracing these capabilities ensures that your Kubernetes environment not only meets current demands but is also future-proofed for emerging challenges.<\/p>\n<p><\/p>\n<p>Stay tuned for more insights and best practices from WafaTech Blogs as we continue to explore the dynamic world of Kubernetes and cloud-native technologies!<\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>Kubernetes has revolutionized the way we deploy and manage applications in a containerized environment. One of the key features that enhances its efficiency is the concept of affinity and anti-affinity rules. Specifically, topology-based affinity offers a robust mechanism for scheduling pods based on the underlying infrastructure topology. In this blog post for WafaTech, we\u2019ll take [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":4144,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","inline_featured_image":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[213],"tags":[222,259,260,220,217,528,420,1893],"class_list":["post-4143","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kubernetes","tag-affinity","tag-deep","tag-dive","tag-exploring","tag-kubernetes","tag-node","tag-scheduling","tag-topologybased","et-has-post-format-content","et_post_format-et-post-format-standard"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.5 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling - WafaTech Blogs<\/title>\n<meta name=\"description\" content=\"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling %\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling\" \/>\n<meta property=\"og:description\" content=\"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling %\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/\" \/>\n<meta property=\"og:site_name\" content=\"WafaTech Blogs\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/people\/WafaTech\/61560546351289\/\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-24T00:46:28+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/wafatech.sa\/blog\/wp-content\/uploads\/2024\/06\/logo_big.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"2221\" \/>\n\t<meta property=\"og:image:height\" content=\"482\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"WafaTech SA\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@wafatech_sa\" \/>\n<meta name=\"twitter:site\" content=\"@wafatech_sa\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"WafaTech SA\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/\"},\"author\":{\"name\":\"WafaTech SA\",\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/#\\\/schema\\\/person\\\/1a5761fc0feb63ab59d295d7c2648f06\"},\"headline\":\"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling\",\"datePublished\":\"2025-12-24T00:46:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/\"},\"wordCount\":725,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/Exploring-Kubernetes-Topology-Based-Affinity-A-Deep-Dive-into-Node-Scheduling.png\",\"keywords\":[\"Affinity\",\"Deep\",\"Dive\",\"Exploring\",\"Kubernetes\",\"Node\",\"Scheduling\",\"TopologyBased\"],\"articleSection\":[\"Kubernetes\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/\",\"url\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/\",\"name\":\"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling - WafaTech Blogs\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/Exploring-Kubernetes-Topology-Based-Affinity-A-Deep-Dive-into-Node-Scheduling.png\",\"datePublished\":\"2025-12-24T00:46:28+00:00\",\"description\":\"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling %\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/#primaryimage\",\"url\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/Exploring-Kubernetes-Topology-Based-Affinity-A-Deep-Dive-into-Node-Scheduling.png\",\"contentUrl\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/12\\\/Exploring-Kubernetes-Topology-Based-Affinity-A-Deep-Dive-into-Node-Scheduling.png\",\"width\":1024,\"height\":1024,\"caption\":\"Topology-based Affinity\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/devops\\\/kubernetes\\\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/\",\"name\":\"WafaTech Blogs\",\"description\":\"Smart Technologies\",\"publisher\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/#organization\"},\"alternateName\":\"WafaTech\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/#organization\",\"name\":\"WafaTech Blogs\",\"alternateName\":\"WafaTech\",\"url\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/06\\\/logo_big.webp\",\"contentUrl\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/06\\\/logo_big.webp\",\"width\":2221,\"height\":482,\"caption\":\"WafaTech Blogs\"},\"image\":{\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/people\\\/WafaTech\\\/61560546351289\\\/\",\"https:\\\/\\\/x.com\\\/wafatech_sa\",\"https:\\\/\\\/www.youtube.com\\\/@wafatech-sa\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/wafatech\\\/\"],\"description\":\"WafaTech, a leading Saudi IT services provider, specializes in cloud solutions, connectivity, and ICT services. Offering secure cloud infrastructure, high-speed internet, and ICT solutions like hosting, backup, and disaster recovery, WafaTech operates a Tier 3 data center at KAUST with ISO certifications. Regulated by CST, the company is committed to innovation, security, and customer satisfaction, empowering businesses in the digital age.\",\"email\":\"sales@wafatech.sa\",\"legalName\":\"Al-Wafa Al-Dhakia For Information Technology LLC\",\"foundingDate\":\"2013-01-08\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"11\",\"maxValue\":\"50\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/#\\\/schema\\\/person\\\/1a5761fc0feb63ab59d295d7c2648f06\",\"name\":\"WafaTech SA\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fde877f001a2e0497276edc0684d3ba2a416c0de8caeb8e785076a1b1b932b3a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fde877f001a2e0497276edc0684d3ba2a416c0de8caeb8e785076a1b1b932b3a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fde877f001a2e0497276edc0684d3ba2a416c0de8caeb8e785076a1b1b932b3a?s=96&d=mm&r=g\",\"caption\":\"WafaTech SA\"},\"url\":\"https:\\\/\\\/wafatech.sa\\\/blog\\\/author\\\/omer-yaseen\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling - WafaTech Blogs","description":"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling %","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/","og_locale":"en_US","og_type":"article","og_title":"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling","og_description":"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling %","og_url":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/","og_site_name":"WafaTech Blogs","article_publisher":"https:\/\/www.facebook.com\/people\/WafaTech\/61560546351289\/","article_published_time":"2025-12-24T00:46:28+00:00","og_image":[{"width":2221,"height":482,"url":"https:\/\/wafatech.sa\/blog\/wp-content\/uploads\/2024\/06\/logo_big.webp","type":"image\/webp"}],"author":"WafaTech SA","twitter_card":"summary_large_image","twitter_creator":"@wafatech_sa","twitter_site":"@wafatech_sa","twitter_misc":{"Written by":"WafaTech SA","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/#article","isPartOf":{"@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/"},"author":{"name":"WafaTech SA","@id":"https:\/\/wafatech.sa\/blog\/#\/schema\/person\/1a5761fc0feb63ab59d295d7c2648f06"},"headline":"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling","datePublished":"2025-12-24T00:46:28+00:00","mainEntityOfPage":{"@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/"},"wordCount":725,"commentCount":0,"publisher":{"@id":"https:\/\/wafatech.sa\/blog\/#organization"},"image":{"@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/#primaryimage"},"thumbnailUrl":"https:\/\/wafatech.sa\/blog\/wp-content\/uploads\/2025\/12\/Exploring-Kubernetes-Topology-Based-Affinity-A-Deep-Dive-into-Node-Scheduling.png","keywords":["Affinity","Deep","Dive","Exploring","Kubernetes","Node","Scheduling","TopologyBased"],"articleSection":["Kubernetes"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/","url":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/","name":"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling - WafaTech Blogs","isPartOf":{"@id":"https:\/\/wafatech.sa\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/#primaryimage"},"image":{"@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/#primaryimage"},"thumbnailUrl":"https:\/\/wafatech.sa\/blog\/wp-content\/uploads\/2025\/12\/Exploring-Kubernetes-Topology-Based-Affinity-A-Deep-Dive-into-Node-Scheduling.png","datePublished":"2025-12-24T00:46:28+00:00","description":"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling %","breadcrumb":{"@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/#primaryimage","url":"https:\/\/wafatech.sa\/blog\/wp-content\/uploads\/2025\/12\/Exploring-Kubernetes-Topology-Based-Affinity-A-Deep-Dive-into-Node-Scheduling.png","contentUrl":"https:\/\/wafatech.sa\/blog\/wp-content\/uploads\/2025\/12\/Exploring-Kubernetes-Topology-Based-Affinity-A-Deep-Dive-into-Node-Scheduling.png","width":1024,"height":1024,"caption":"Topology-based Affinity"},{"@type":"BreadcrumbList","@id":"https:\/\/wafatech.sa\/blog\/devops\/kubernetes\/exploring-kubernetes-topology-based-affinity-a-deep-dive-into-node-scheduling\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/wafatech.sa\/blog\/"},{"@type":"ListItem","position":2,"name":"Exploring Kubernetes Topology-Based Affinity: A Deep Dive into Node Scheduling"}]},{"@type":"WebSite","@id":"https:\/\/wafatech.sa\/blog\/#website","url":"https:\/\/wafatech.sa\/blog\/","name":"WafaTech Blogs","description":"Smart Technologies","publisher":{"@id":"https:\/\/wafatech.sa\/blog\/#organization"},"alternateName":"WafaTech","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wafatech.sa\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/wafatech.sa\/blog\/#organization","name":"WafaTech Blogs","alternateName":"WafaTech","url":"https:\/\/wafatech.sa\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/wafatech.sa\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/wafatech.sa\/blog\/wp-content\/uploads\/2024\/06\/logo_big.webp","contentUrl":"https:\/\/wafatech.sa\/blog\/wp-content\/uploads\/2024\/06\/logo_big.webp","width":2221,"height":482,"caption":"WafaTech Blogs"},"image":{"@id":"https:\/\/wafatech.sa\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/people\/WafaTech\/61560546351289\/","https:\/\/x.com\/wafatech_sa","https:\/\/www.youtube.com\/@wafatech-sa","https:\/\/www.linkedin.com\/company\/wafatech\/"],"description":"WafaTech, a leading Saudi IT services provider, specializes in cloud solutions, connectivity, and ICT services. Offering secure cloud infrastructure, high-speed internet, and ICT solutions like hosting, backup, and disaster recovery, WafaTech operates a Tier 3 data center at KAUST with ISO certifications. Regulated by CST, the company is committed to innovation, security, and customer satisfaction, empowering businesses in the digital age.","email":"sales@wafatech.sa","legalName":"Al-Wafa Al-Dhakia For Information Technology LLC","foundingDate":"2013-01-08","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"11","maxValue":"50"}},{"@type":"Person","@id":"https:\/\/wafatech.sa\/blog\/#\/schema\/person\/1a5761fc0feb63ab59d295d7c2648f06","name":"WafaTech SA","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/fde877f001a2e0497276edc0684d3ba2a416c0de8caeb8e785076a1b1b932b3a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/fde877f001a2e0497276edc0684d3ba2a416c0de8caeb8e785076a1b1b932b3a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fde877f001a2e0497276edc0684d3ba2a416c0de8caeb8e785076a1b1b932b3a?s=96&d=mm&r=g","caption":"WafaTech SA"},"url":"https:\/\/wafatech.sa\/blog\/author\/omer-yaseen\/"}]}},"jetpack_featured_media_url":"https:\/\/wafatech.sa\/blog\/wp-content\/uploads\/2025\/12\/Exploring-Kubernetes-Topology-Based-Affinity-A-Deep-Dive-into-Node-Scheduling.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/posts\/4143","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/comments?post=4143"}],"version-history":[{"count":0,"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/posts\/4143\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/media\/4144"}],"wp:attachment":[{"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/media?parent=4143"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/categories?post=4143"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wafatech.sa\/blog\/wp-json\/wp\/v2\/tags?post=4143"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}