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

task follow-up 3 #412

Open
5 tasks
casperdcl opened this issue Feb 26, 2022 · 5 comments
Open
5 tasks

task follow-up 3 #412

casperdcl opened this issue Feb 26, 2022 · 5 comments
Labels
epic Collection of sub-issues p2-nice-to-have Low priority resource-task iterative_task TF resource

Comments

@casperdcl
Copy link
Contributor

casperdcl commented Feb 26, 2022

minor nitpicks from #258 (comment):

p2-nice-to-have

@casperdcl casperdcl added the p2-nice-to-have Low priority label Feb 26, 2022
@casperdcl casperdcl mentioned this issue Feb 26, 2022
9 tasks
@casperdcl casperdcl added the resource-task iterative_task TF resource label Feb 26, 2022
@casperdcl casperdcl changed the title task follow-up 3 task follow-up 3 Feb 26, 2022
@omesser
Copy link
Contributor

omesser commented Jun 19, 2022

Rename regions to locations so it's valid for zones and node selectors

I'd advise against. regions and zones are important concepts for cloud compute and have delicate meaning for HA and performance for different cloud providers.
Those are distinctly different from k8s' node affinity (or anti-) and node selectors - their meaning depends on the topology of the k8s cluster and the syntax is different as well
I suggest to keep original terminology.
Supporting node affinity/anti-affinity is a necessary next step for running anything on an existing k8s cluster with the necessary customizability and it then the new "abstraction" will break anyways

@0x2b3bfa0
Copy link
Member

regions and zones are important concepts for cloud compute and have delicate meaning for HA and performance for different cloud providers.

Given the availability and performance1 requirements of the use cases this tool covers (i.e. experimentation and not serving), the current behavior seems appropriate: specifying a region causes the task to pick any zone with enough available resources, and providing a zone letter constrains the placement to that specific zone.

Footnotes

  1. Which kind of performance are we talking about? 🤔

@0x2b3bfa0
Copy link
Member

Those are distinctly different from k8s' node affinity (or anti-) and node selectors - their meaning depends on the topology of the k8s cluster and the syntax is different as well

Definitely. Kubernetes syntax is too rich for a single string variable; trying to fit everything into a single parameter can be detrimental.

@0x2b3bfa0
Copy link
Member

I suggest to keep original terminology.

Agreed for affinity & selectors, not quite for regions and zones.

@casperdcl casperdcl added the epic Collection of sub-issues label Jun 20, 2022
@omesser
Copy link
Contributor

omesser commented Jun 24, 2022

@0x2b3bfa0

Which kind of performance are we talking about? 🤔

Latency between client machine and the hosted compute resources.
(There's also a cost consideration when considering regions)

None of this translates nicely to k8s node selection - it CAN, if you set up your node groups or use labels in a very specific way, such that you actually pick nodes in specific cloud zone, maybe cross-node-groups, but that's besides the point.

Anything that has to do with selecting nodes on k8s is only meaningful in the context of how that specific cluster and its node groups are set up.
On the other hand - for cloud providers, regions/zones is a common terminology
I believe that inventing another abstraction here is not helpful - it will add confusion, people will be looking for familiar terms (rightfully so).
Also if/when node affinity/anti-affinity is added - we would want that api to be consistent with node selectors (inside a k8s specific block, probably 😉 ).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
epic Collection of sub-issues p2-nice-to-have Low priority resource-task iterative_task TF resource
Projects
None yet
Development

No branches or pull requests

3 participants