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

[Improvement] Operator should support K8S 1.24 #1673

Closed
3 tasks done
jerqi opened this issue May 6, 2024 · 4 comments · Fixed by #1694
Closed
3 tasks done

[Improvement] Operator should support K8S 1.24 #1673

jerqi opened this issue May 6, 2024 · 4 comments · Fixed by #1694
Milestone

Comments

@jerqi
Copy link
Contributor

jerqi commented May 6, 2024

Code of Conduct

Search before asking

  • I have searched in the issues and found no similar issues.

What would you like to be improved?

In K8S operator, we use autoscaling/v2beta2, in K8S 1.24, they remove autoscaling/v2beta2, they have autoscaling/v2.

How should we improve?

We should adapt to 1.24. I don't know whether we can adapt to the old versions.

Are you willing to submit PR?

  • Yes I am willing to submit a PR!
@jerqi
Copy link
Contributor Author

jerqi commented May 6, 2024

@advancedxy @wangao1236 Could you give me some input?

@jerqi
Copy link
Contributor Author

jerqi commented May 6, 2024

@advancedxy
Copy link
Contributor

1.24 is already end of life1.
I think the master code should target the latest K8S version instead.

However there might be some pretty old k8s clusters runnings in the prod. @wangao1236 do you have any idea about the backward compatibility of K8S versions? Is it safe for operator to depends on a newer version of k8s and deploys to an old one with limited usage of new APIs.

Footnotes

  1. https://kubernetes.io/releases/patch-releases/#non-active-branch-history

@EnricoMi EnricoMi added this to the 0.9.0 milestone May 9, 2024
@jerqi
Copy link
Contributor Author

jerqi commented May 10, 2024

@zhengchenyu @qijiale76 Could you have any ideas?

jerqi added a commit that referenced this issue May 17, 2024
…1694)

### What changes were proposed in this pull request?
1. Upgrade Go to 1.19, Because mac brew doesn't support to install older than 1.19 Go.
2. Upgrade K8S api to 0.24. Because 1.24.1 supports to run the tests in the Mac M1 local machine and supports autoscaling/v2 api.
3. Change v2beta2 to v2
4. Use log4j2 instead of log4j

### Why are the changes needed?
Kubernetes 1.26 removed the v2beta2 api of auto scaling. So our operator can't deployed some stable version K8S cluster. So I try to upgrade the version of the client.
Compatible solution will be very difficult and bring more burden to maintain. So I choose to upgrade directly. If some users use low version, they can revert this pull request and compile again.

Fix: #1673 

### Does this PR introduce _any_ user-facing change?

No.

### How was this patch tested?
UT + Manual test.
jerqi added a commit that referenced this issue May 17, 2024
…1694)

### What changes were proposed in this pull request?
1. Upgrade Go to 1.19, Because mac brew doesn't support to install older than 1.19 Go.
2. Upgrade K8S api to 0.24. Because 1.24.1 supports to run the tests in the Mac M1 local machine and supports autoscaling/v2 api.
3. Change v2beta2 to v2
4. Use log4j2 instead of log4j

### Why are the changes needed?
Kubernetes 1.26 removed the v2beta2 api of auto scaling. So our operator can't deployed some stable version K8S cluster. So I try to upgrade the version of the client.
Compatible solution will be very difficult and bring more burden to maintain. So I choose to upgrade directly. If some users use low version, they can revert this pull request and compile again.

Fix: #1673 

### Does this PR introduce _any_ user-facing change?

No.

### How was this patch tested?
UT + Manual test.
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 a pull request may close this issue.

3 participants