-
Notifications
You must be signed in to change notification settings - Fork 6k
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
[KubeRay][Autoscaler] Make KubeRay CRD version configurable #40357
Conversation
Signed-off-by: kaihsun <[email protected]>
Signed-off-by: kaihsun <[email protected]>
cc @rickyyx |
cc @gvspraveen |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - Do we need any additional test coverage for this?
@rickyyx The current Ray CI covers part of it (the latest KubeRay release). KubeRay CI tests both the nightly KubeRay and the latest KubeRay release. After v1.0.0 is released, I will add a new CI test in KubeRay CI that only uses CRD v1. |
Open an issue to track the progress ray-project/kuberay#1499. |
Hi @rickyyx, does #40357 (comment) make sense to you? If it makes sense to you, could you please merge this PR? It's blocking the KubeRay release. Thank you! |
…ect#40357) --------- Signed-off-by: kaihsun <[email protected]>
just noticed a small typo in the description
should be
|
@davidxia good catch! Updated. |
Why are these changes needed?
The KubeRay community has decided to bump the CRD version from v1alpha1 to v1 in the KubeRay v1.0.0-rc.1 release. Initially, I also planned to delete CRD v1alpha1 in v1.0.0-rc.1. However, the Ray Autoscaler has hard-coded the CRD version to v1alpha1. As a result, the Autoscaler will throw an exception when attempting to fetch data from the Kubernetes API server, given that CRD v1alpha1 no longer exists. See ray-project/kuberay#1492 (comment) for more details.
This PR makes the CRD version configurable, and KubeRay v1.0.0-rc.1 will automatically inject the environment variable
KUBERAY_CRD_VER
(ray-project/kuberay#1496).KUBERAY_CRD_VER
environment variable set tov1
. If users are on KubeRay v1.0.0, the Autoscaler in Ray 2.8.0 and later versions (including this PR) will use CRD v1. For Ray versions older than 2.8.0, the Autoscaler will use CRD v1alpha1 since those versions don't include this PR.Related issue number
Checks
git commit -s
) in this PR.scripts/format.sh
to lint the changes in this PR.method in Tune, I've added it in
doc/source/tune/api/
under thecorresponding
.rst
file.KubeRay v0.6.0: CI
KubeRay v1.0.0 (including CRD v1alpha1 and v1): Try to fetch both CRD v1alpha1 and CRD v1 from Kubernetes API server in the Autoscaler sidecar container, and both results are the same.
KubeRay v1.1.0 (only has CRD v1): Try to fetch both CRD v1alpha1 and CRD v1 from Kubernetes API server in the Autoscaler sidecar container. Fail to fetch data when I use CRD v1alpha1.