-
Notifications
You must be signed in to change notification settings - Fork 6
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
Flexible and contextualized image selection process #6
Comments
OK, I think I've got a basic design proposal together for this: in a nutshell, extend the environment concept to provide 'isolated' execution spaces. I don't want to call it namespace as we have already Linux namespaces and K8s namespaces and that would add to the confusion. So the interaction would look as follows:
WDYT @jbeda? |
Haven't had a chance to play quite with it in real life quite yet :) The idea of "environment" is an interesting one and is something that we've been introducing into ksonnet. I do worry that there are too many 1:1 pairing of concepts. That is a pattern that can often lead to some great easy usability wins but cause problems later. For example, if env ties to an external DNS name, what happens if you have more than one long running process in an env? What about microservice type things? Do you expect that they'd be in different envs? I'd think about how env ties to namespace. Also, is there a config file for describing the default envs? Is the server you are talking about part of the env? Does modifying an env temporarily modify the current session or does it write out to the imaginary config file? The big piece that is missing for me still is how you specify all the other important bits of a pod beyond the image and the program you want to run? What about volumes, limits, configmaps, etc? |
Thanks for your feedback, Joe, I appreciate your time! I think you're raising excellent points here. Let me try responding to some points right away and others I need to mull over.
Fair point. I'm willing to experiment here a bit but the result should be sustainable, agreed.
Hmm, that one I thought I've addressed with the design above? If you're in the env
Yup, I did think about it but just realized I failed to actually spell it out: namespaces are more granular, that is, a namespace can have many environments (technical an environment would just be a bunch of labels on resources). The reason for this is twofold: 1. allows for efficient sharing of resources and admin policies while being simple for com patterns, and 2. there can be platforms where you either can't create namespaces and/or default is not available (yes, I'm talking about OpenShift Online, for example ;)
This is the hard part I don't have a good suggestion ATM but some ideas I'd like to explore. Please hold the line … |
Now, |
Currently, images used for launching distributed processes are determined by
kubed-sh
-internal environment variables in a static and global manner. Having a way to overwrite/set the image per individual process would enable a number of use cases (scripting, etc.) and makekubed-sh
more flexible.This issue came out of a discussion with @jbeda, thanks a lot for this valuable input.
The text was updated successfully, but these errors were encountered: