Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

experiment - use first taskrun as anchor pod #1

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

QuanZhang-William
Copy link
Owner

This is an experiment to achieve node affinity without using placeholder pod as we do today in affinity assistant. In this experiment, the first PipelienTask pod is used as the "anchor" pod (which can be scheduled to any node). Pod affinity terms are only applied follow-up pods, so that the pods can be anchored to the first PipelineTask pod.

The main issue with this idea is that if the anchor pod finishes before the followup pods are started, it runs into scheduling conflict as there is no node meets the affinity requirement (inter pod affinity only considers running pods).

Changes

Submitter Checklist

As the author of this PR, please check off the items in this checklist:

  • Has Docs if any changes are user facing, including updates to minimum requirements e.g. Kubernetes version bumps
  • Has Tests included if any functionality added or changed
  • Follows the commit message standard
  • Meets the Tekton contributor standards (including functionality, content, code)
  • Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
  • Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings)
  • Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes

NONE

This is an experiment to achieve node affinity without using placeholder pod as we do today in affinity assistant.
In this experiment, the first PipelienTask pod is used as the "anchor" pod (which can be scheduled to any node).
Pod affinity terms are only applied follow-up pods, so that the pods can be anchored to the first PipelineTask pod.

The main issue with this idea is that if the anchor pod finishes before the followup pods are started, it runs into
scheduling conflict as there is no node meets the affinity requirement (inter pod affinity only considers running pods).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant