Skip to content

ztunnel/helm: move ztunnel daemonset management from operator to helm#43763

Merged
ldelossa merged 1 commit intocilium:mainfrom
nddq:nddq/ztunnel-helm
Jan 23, 2026
Merged

ztunnel/helm: move ztunnel daemonset management from operator to helm#43763
ldelossa merged 1 commit intocilium:mainfrom
nddq:nddq/ztunnel-helm

Conversation

@nddq
Copy link
Copy Markdown
Member

@nddq nddq commented Jan 14, 2026

Move the ztunnel daemonset from being managed by a controller in the operator to being managed declaratively via Helm templates. This aligns ztunnel with other components like envoy and node-init that are already managed via Helm.

Changes:

  • Add new Helm templates for ztunnel (daemonset, secret, serviceaccount)
  • Add ztunnel configuration under encryption section in values.yaml
  • Add ztunnel serviceAccount configuration in values.yaml
  • Remove ztunnel controller from operator (cell.go, controller.go)
  • Remove embedded ztunnel-daemonset.yaml from operator

The ztunnel resources are now conditionally deployed when:

  • encryption.enabled=true
  • encryption.type=ztunnel

Please ensure your pull request adheres to the following guidelines:

  • For first time contributors, read Submitting a pull request
  • All code is covered by unit and/or runtime tests where feasible.
  • All commits contain a well written commit description including a title,
    description and a Fixes: #XXX line if the commit addresses a particular
    GitHub issue.
  • If your commit description contains a Fixes: <commit-id> tag, then
    please add the commit author[s] as reviewer[s] to this issue.
  • All commits are signed off. See the section Developer’s Certificate of Origin
  • Provide a title or release-note blurb suitable for the release notes.
  • Are you a user of Cilium? Please add yourself to the Users doc
  • Thanks for contributing!

Fixes: #issue-number

<!-- Enter the release note text here if needed or remove this section! -->

@nddq nddq requested review from a team as code owners January 14, 2026 16:45
@nddq nddq requested review from nebril and rgo3 January 14, 2026 16:45
@maintainer-s-little-helper maintainer-s-little-helper bot added the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Jan 14, 2026
@github-actions github-actions bot added the kind/community-contribution This was a contribution made by a community member. label Jan 14, 2026
@nddq nddq force-pushed the nddq/ztunnel-helm branch 2 times, most recently from 50a408d to 035ea33 Compare January 14, 2026 20:01
Copy link
Copy Markdown
Contributor

@rgo3 rgo3 left a comment

Choose a reason for hiding this comment

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

Did you accidentally remove the changes to the values.yaml? I thought I've seen it on your first push 🤔

Also this allows very fine grained configuration of ztunnel. AFAIK we wanted to keep configurability to a minimum for now so that users can't really "bring their own ztunnel" cc @ldelossa

@nddq nddq force-pushed the nddq/ztunnel-helm branch from 035ea33 to 2e32b53 Compare January 15, 2026 14:29
@nddq
Copy link
Copy Markdown
Member Author

nddq commented Jan 15, 2026

@rgo3 It is fixed now, don't know what happened there 😅, needed to update the values.yaml.tmpl‎ file anyway. For the customization concerns, I think we need to have at least the image and the env vars configurable so that it is easier for testing/releasing.

@nddq nddq force-pushed the nddq/ztunnel-helm branch from 2e32b53 to 1051eaf Compare January 15, 2026 14:55
@nebril nebril requested a review from rgo3 January 16, 2026 09:53
@nebril
Copy link
Copy Markdown
Member

nebril commented Jan 16, 2026

LGTM, but I will defer to @rgo3 for the amount of configurability in the PR as I don't have enough context for this.

@rgo3 rgo3 added area/helm Impacts helm charts and user deployment experience feature/ztunnel release-note/minor This PR changes functionality that users may find relevant to operating Cilium. labels Jan 16, 2026
@maintainer-s-little-helper maintainer-s-little-helper bot removed the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Jan 16, 2026
Copy link
Copy Markdown
Contributor

@rgo3 rgo3 left a comment

Choose a reason for hiding this comment

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

I'm by no means experienced with helm charts, but looking at our other helm deployments this seems to do roughly the same things. I've pointed out some config nobs where I'm not sure if it makes sense to make them configurable given the cilium agent itself hardcodes these values. If you can make a case for them to stay I'm not going to object, but please see my comments for details.

Thanks for working on this @nddq

@nddq nddq force-pushed the nddq/ztunnel-helm branch 2 times, most recently from 8f6efa8 to 2b1b453 Compare January 20, 2026 23:46
@nddq nddq requested a review from rgo3 January 21, 2026 16:09
Copy link
Copy Markdown
Contributor

@rgo3 rgo3 left a comment

Choose a reason for hiding this comment

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

Otherwise LGTM

@rgo3
Copy link
Copy Markdown
Contributor

rgo3 commented Jan 21, 2026

/test

@nddq nddq force-pushed the nddq/ztunnel-helm branch 2 times, most recently from 3a309cb to 9801114 Compare January 21, 2026 19:14
@ldelossa ldelossa enabled auto-merge January 21, 2026 23:46
@ldelossa
Copy link
Copy Markdown
Contributor

/test

auto-merge was automatically disabled January 22, 2026 18:42

Head branch was pushed to by a user without write access

@nddq nddq force-pushed the nddq/ztunnel-helm branch from 9801114 to d78c17d Compare January 22, 2026 18:42
@nddq nddq requested review from ldelossa, nebril and rgo3 and removed request for rgo3 January 22, 2026 18:45
Move the ztunnel daemonset from being managed by a controller in the
operator to being managed declaratively via Helm templates. This aligns
ztunnel with other components like envoy and node-init that are already
managed via Helm.

Changes:
- Add new Helm templates for ztunnel (daemonset, secret, serviceaccount)
- Add ztunnel configuration under encryption section in values.yaml
- Add ztunnel serviceAccount configuration in values.yaml
- Remove ztunnel daemonset controller from operator (controller.go)
- Remove embedded ztunnel-daemonset.yaml from operator
- Keep ztunnel config cell for enable-ztunnel flag

The ztunnel resources are now conditionally deployed when:
- encryption.enabled=true
- encryption.type=ztunnel

Signed-off-by: Quang Nguyen <nguyenquang@microsoft.com>
@nddq nddq force-pushed the nddq/ztunnel-helm branch from d78c17d to 733441e Compare January 23, 2026 04:13
Copy link
Copy Markdown
Contributor

@rgo3 rgo3 left a comment

Choose a reason for hiding this comment

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

Did you manually request the re-review or does this somehow happen after a force-push now @nddq? From the cilium slack I take it the latest change was just a rebase to get CI green and usually rebasing shouldn't trigger another round of getting all reviews. I'm a bit confused why I need to approve it for the 3rd time.

@nddq
Copy link
Copy Markdown
Member Author

nddq commented Jan 23, 2026

@rgo3 yeah it was a force push for a rebase, but GitHub showed the prompt that I can re-request for a review, so I assumed that a reapproval is needed

@ldelossa
Copy link
Copy Markdown
Contributor

ldelossa commented Jan 23, 2026

@nddq yeah no need for us to re-review on a simple force push to rebase against HEAD. :) this is also the third time I'm approving this PR lol

@ldelossa
Copy link
Copy Markdown
Contributor

/test

@ldelossa ldelossa added this pull request to the merge queue Jan 23, 2026
Merged via the queue into cilium:main with commit f1c9221 Jan 23, 2026
76 checks passed
@nddq nddq added the needs-backport/1.19 This PR / issue needs backporting to the v1.19 branch label Feb 24, 2026
@nebril nebril mentioned this pull request Mar 2, 2026
5 tasks
@nebril nebril added backport-pending/1.19 The backport for Cilium 1.19.x for this PR is in progress. and removed needs-backport/1.19 This PR / issue needs backporting to the v1.19 branch labels Mar 2, 2026
@github-actions github-actions bot added backport-done/1.19 The backport for Cilium 1.19.x for this PR is done. and removed backport-pending/1.19 The backport for Cilium 1.19.x for this PR is in progress. labels Mar 3, 2026
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 backport-done/1.19 The backport for Cilium 1.19.x for this PR is done. feature/ztunnel kind/community-contribution This was a contribution made by a community member. 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.

4 participants