Skip to content

Conversation

ScheererJ
Copy link
Member

@ScheererJ ScheererJ commented Mar 4, 2024

How to categorize this PR?

/area networking
/kind enhancement

What this PR does / why we need it:
Replace ingress resources for kube-apiserver with direct istio exposure.

The terminal feature of the gardener dashboard requires kubernetes API servers to be reachable via an ingress domain due to cross-site restrictions in web browsers. In the past, this was handled via an ingress resource, exposed via nginx ingress controller. However, this led to kube-apiserver being exposed via multiple different endpoints, i.e. istio and nginx.

Now, that ingress resources are anyway (indirectly) exposed via istio, it makes a lot of sense to simply get rid of the additional hop for kube-apiserver as its exposure is very similar to the existing one (for shoot clusters).

The seed cluster API server was also exposed via ingress resource. However, this setup was more sophisticated as it used a service resource with externalName pointing to kubernetes.default.svc.cluster.local. Now, istio points directly to kubernetes.default.svc.cluster.local instead of using an additional service.

Which issue(s) this PR fixes:
Fixes #

Special notes for your reviewer:

Release note:

Seed clusters with a wildcard certificate no longer use `Ingress` resources to expose `kube-apiserver`. Instead, `Istio` resources are directly used now.

@gardener-prow gardener-prow bot added area/networking Networking related kind/enhancement Enhancement, improvement, extension cla: yes Indicates the PR's author has signed the cla-assistant.io CLA. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Mar 4, 2024
@gardener-prow gardener-prow bot requested review from acumino and plkokanov March 4, 2024 14:07
@rfranzke
Copy link
Member

rfranzke commented Mar 4, 2024

/assign

Copy link
Member

@rfranzke rfranzke left a comment

Choose a reason for hiding this comment

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

Nice work :)

@rfranzke
Copy link
Member

rfranzke commented Mar 5, 2024

/lgtm

Thank you!

@gardener-prow gardener-prow bot added the lgtm Indicates that a PR is ready to be merged. label Mar 5, 2024
Copy link
Contributor

gardener-prow bot commented Mar 5, 2024

LGTM label has been added.

Git tree hash: 7ec5ae211a3aaab910fa62aa9f710ae834c5a074

@rfranzke rfranzke changed the title Replace ingress resources for kube apiserver with direct istio exposure Replace Ingress resources for kube apiserver with direct Istio exposure Mar 5, 2024
…lity zones.

Due to initialization order the istio ingress gateway responsible for a shoot cluster
cannot be determined when the ingress component is created. This change resolves this
problem by delaying the evaluation of the expression to a point in time when the
information is available. In other words a function is passed instead of the a
function return value.
@gardener-prow gardener-prow bot removed the lgtm Indicates that a PR is ready to be merged. label Mar 5, 2024
@gardener-prow gardener-prow bot requested a review from rfranzke March 5, 2024 15:27
@rfranzke
Copy link
Member

/lgtm
/approve

@gardener-prow gardener-prow bot added the lgtm Indicates that a PR is ready to be merged. label Mar 11, 2024
Copy link
Contributor

gardener-prow bot commented Mar 11, 2024

LGTM label has been added.

Git tree hash: 3d3b250b6c0b6a00ffa233d22309773cb73ee8bf

Copy link
Contributor

gardener-prow bot commented Mar 11, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: rfranzke

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@gardener-prow gardener-prow bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Mar 11, 2024
@gardener-prow gardener-prow bot merged commit d8561d9 into gardener:master Mar 11, 2024
rfranzke added a commit to rfranzke/gardener that referenced this pull request May 31, 2024
rfranzke added a commit to rfranzke/gardener that referenced this pull request May 31, 2024
gardener-prow bot pushed a commit that referenced this pull request Jun 4, 2024
* Remove deprecated fields from `OperatingSystemConfig`

(from #9477, released with `v1.92.0`)

* Remove cleanup of old `kube-apiserver` `Ingress` resource

(from #9300, released with `v1.91.0`)

* Remove Istio zone migration code

(from #9304 and #9457, released with `v1.91.0` and `v1.92.0`)

* Increase removal period of `<name>.ca-cluster` `Secret`

To give users more time to adapt

* Remove PVC migration for `garden` Prometheus

(from #9543, released with `v1.93.0`)

* Remove PVC migration for `longterm` Prometheus

(from #9606, released with `v1.94.0`)

* Drop migration code in `skaffold.yaml` for `core.gardener.cloud/v1` API

(from #9771, released with `v1.96.0`)

* Remove migration code for e2e upgrade tests after `provider-local` VPN fix

(from #9752, released with `v1.96.0`)

* Remove cleanup of old `vali` `VerticalPodAutoscaler`s

(from #9681, released with `v1.94.0`)

* Remove cleanuop code after making `Secret`s of `ManagedResource`s immutable

(from #8116, released with `v1.77.0`)

* Remove cleanup code of resources of legacy `cloud-config-downloader`

(from #8847, released with `v1.85.0`)

* Revert "Remove Istio zone migration code"

This reverts commit 8850346.

* Increase removal period of Istio zone migration code
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. area/networking Networking related cla: yes Indicates the PR's author has signed the cla-assistant.io CLA. kind/enhancement Enhancement, improvement, extension lgtm Indicates that a PR is ready to be merged. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants