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

Seldon v1.0 CRD uses new (k8s 1.15) feature that not backward compatible with k8s versions (<= 1.14) #1431

Closed
yufengshan opened this issue Feb 12, 2020 · 9 comments
Assignees
Milestone

Comments

@yufengshan
Copy link

yufengshan commented Feb 12, 2020

In the Seldon v1.0 CRD, the following is used x-kubernetes-int-or-string to replace IntOrString. The "x-kubernetes-int-or-string" is introduced at k8s v1.15, and systems running pre k8s v1.15 can not handle this.

Please consider to make this backward compatible.

@yufengshan yufengshan added bug triage Needs to be triaged and prioritised accordingly labels Feb 12, 2020
@yufengshan yufengshan changed the title Seldon v1.0 CRD uses new (k8s 1.15) feature that not backward compatible with old k8s versions (<= 1.14) Seldon v1.0 CRD uses new (k8s 1.15) feature that not backward compatible with k8s versions (<= 1.14) Feb 12, 2020
@ukclivecox ukclivecox self-assigned this Feb 13, 2020
@ukclivecox ukclivecox added this to the 1.1 milestone Feb 13, 2020
@ukclivecox ukclivecox removed the triage Needs to be triaged and prioritised accordingly label Feb 13, 2020
@ukclivecox
Copy link
Contributor

When you say k8s <1.15 can not handle this. From local testing with kind the CRD can be installed with no errors.

kind create cluster --image kindest/node:v1.12.10
cd operator
make install

@ukclivecox ukclivecox removed the bug label Feb 14, 2020
@anggao
Copy link
Contributor

anggao commented Feb 14, 2020

I think he means the validating webhooks needs k8s >= 1.5

@ukclivecox
Copy link
Contributor

Do you mean for the selectors?
See

# Comment this if you have a k8s cluster < 1.15 and want to use namespaced or labelled operators
for kustomize

The helm install has similar gates.

Can you clarify what you mean by the webhook needs k8s>= 1.15 ?

@yufengshan
Copy link
Author

k8s < 1.15 can not handle "x-kubernetes-int-or-string". When deploy the CRD to cluster, the is ignored, therefore, no validation is performed when a seldon deployment is deployed to cluster.

@ukclivecox
Copy link
Contributor

Validation just for this part of the OpenAPISchema you mean or are you suggesting the whole schema is ignored?
The validating webhook is still called I assume?

@yufengshan
Copy link
Author

Only the part involved in "x-kubernetes-int-or-string", others are fine.

@ukclivecox
Copy link
Contributor

So validation that it is not a float?

I think you will need to provide some example for when you comment out that kustomize patch. Which is also a solution if you are using kustomize BTW.

@yufengshan
Copy link
Author

Screen Shot 2020-02-18 at 5 00 03 PM

This is the screenshot after I apply the CRD to the cluster. From the diff you can see, the green lines are removed in the deployed object.

We are not planning to fix it for now as we are upgrading our cluster to k8s 1.15. This is no longer an issue for the deployment. Just input an issue for others who still run k8s < 1.15

@ukclivecox
Copy link
Contributor

Unless this is actually stopping some functionality from working I think we can leave it. Please reopen if you can provide an example in k8s < 1.15 for which functionality is broken.

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

No branches or pull requests

3 participants