Skip to content

Conversation

joestringer
Copy link
Member

The etcd-operator Helm templates rely on a piece of software which is
no longer maintained upstream, and it relies on outdated CRDs which are
no longer supported since Kubernetes 1.22. The setting has been hidden
and not documented for several releases, we can remove it now.

@joestringer joestringer requested review from a team as code owners June 5, 2024 20:51
@joestringer joestringer requested a review from squeed June 5, 2024 20:51
@joestringer joestringer added the release-note/minor This PR changes functionality that users may find relevant to operating Cilium. label Jun 5, 2024
@joestringer
Copy link
Member Author

/test

Copy link
Member

@giorio94 giorio94 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

@squeed squeed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, along with @giorio94's suggestions.

@joestringer joestringer force-pushed the pr/joe/drop-managed-etcd branch from d9bed3b to 7275280 Compare June 7, 2024 02:53
@joestringer joestringer requested review from a team as code owners June 7, 2024 02:53
@joestringer joestringer force-pushed the pr/joe/drop-managed-etcd branch from 7275280 to a605fda Compare June 7, 2024 02:55
@joestringer
Copy link
Member Author

Good pointers @giorio94 . This time I did a deeper clean by scanning through the output of git grep -i etcd.op.

@joestringer joestringer force-pushed the pr/joe/drop-managed-etcd branch from a605fda to 5a96978 Compare June 7, 2024 03:04
@joestringer
Copy link
Member Author

/test

@joestringer joestringer dismissed giorio94’s stale review June 7, 2024 03:13

I've addressed your feedback, please take another look.

@joestringer
Copy link
Member Author

ci-ingress hit known CI issue #31857

@joestringer
Copy link
Member Author

/ci-ingress

Copy link
Member

@giorio94 giorio94 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The first commit looks good to me, thanks!

I'm not sure we can merge the second one straight away without going through a proper deprecation process though, as I'm pretty sure that there are users who are still running etcd in pod network leveraging other operators (we never officially deprecated that support AFAIK), but relying upon the same reserved identities. Similarly, there are quite a few other pieces of logic spread across the code-base to enable such setup (e.g., the CRD to kvstore watch handover), which would also be need to be considered if we were to completely remove that support.

I'd also personally preserve the logic to automatically translate DNS names matching k8s services to the corresponding ClusterIP, as potentially useful in certain circumstances (and harmless in the others). Related to this, I've recently opened a PR to generalize and decouple that logic from the etcd.managed setting, which should already largely simplify that part.

Copy link
Contributor

@derailed derailed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@joestringer Nice work!

@joestringer
Copy link
Member Author

@giorio94 Managed etcd mode was deprecated back in v1.10 with the intent to remove in v1.11, but we didn't follow up to do the full removal: #15464

@joestringer
Copy link
Member Author

Probably it makes sense for me to break this down and drop the second commit for now, stick to just the Helm changes then we can revisit the other changes down the line. Thanks for the feedback @giorio94 .

@giorio94
Copy link
Member

@giorio94 Managed etcd mode was deprecated back in v1.10 with the intent to remove in v1.11, but we didn't follow up to do the full removal: #15464

Yeah, I totally agree with removing it. I'd just not break the support for etcd running in pod network yet, as slightly different, and not formally deprecated AFAIK.

Probably it makes sense for me to break this down and drop the second commit for now, stick to just the Helm changes then we can revisit the other changes down the line.

SGTM, thanks! You may want to include the contrib/release/check-docker-images.sh hunk as well into the first commit.

@joestringer joestringer force-pushed the pr/joe/drop-managed-etcd branch from 5a96978 to 99f4a7f Compare June 10, 2024 17:09
@joestringer joestringer requested a review from giorio94 June 10, 2024 17:09
@joestringer
Copy link
Member Author

/test

The etcd-operator Helm templates rely on a piece of software which is
no longer maintained upstream, and it relies on outdated CRDs which are
no longer supported since Kubernetes 1.22. The setting has been hidden
and not documented for several releases, we can remove it now.

Signed-off-by: Joe Stringer <joe@cilium.io>
@joestringer joestringer force-pushed the pr/joe/drop-managed-etcd branch from 99f4a7f to 1f4ae6a Compare June 10, 2024 17:14
@joestringer
Copy link
Member Author

joestringer commented Jun 10, 2024

@giorio94 👍 I added a note in the upgrade guide to mention this is removed as well. We can send a deprecation notice for podnetwork etcd after this. (#33030)

@joestringer
Copy link
Member Author

/test

@joestringer joestringer marked this pull request as ready for review June 10, 2024 17:25
@joestringer joestringer requested a review from a team as a code owner June 10, 2024 17:25
@joestringer joestringer requested a review from qmonnet June 10, 2024 17:25
@joestringer joestringer enabled auto-merge June 10, 2024 18:19
Copy link
Member

@giorio94 giorio94 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@giorio94 giorio94 added area/helm Impacts helm charts and user deployment experience area/kvstore Impacts the KVStore package interactions. labels Jun 11, 2024
@giorio94 giorio94 removed request for a team and pippolo84 June 11, 2024 07:06
@joestringer joestringer added this pull request to the merge queue Jun 11, 2024
@qmonnet qmonnet removed the request for review from aditighag June 11, 2024 08:58
Merged via the queue into main with commit 4b1aba4 Jun 11, 2024
@joestringer joestringer deleted the pr/joe/drop-managed-etcd branch June 11, 2024 09:05
@maintainer-s-little-helper maintainer-s-little-helper bot added the ready-to-merge This PR has passed all tests and received consensus from code owners to merge. label Jun 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/helm Impacts helm charts and user deployment experience area/kvstore Impacts the KVStore package interactions. ready-to-merge This PR has passed all tests and received consensus from code owners to merge. release-note/minor This PR changes functionality that users may find relevant to operating Cilium.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants