treewide: k8s 1.28 and lots related updates

First, this contains a bunch of dependency updates. Important ones in no
particular order:
Kubernetes 1.24.2 -> 1.28.8
etcd 3.5.4 -> 3.5.13
Protobuf 1.32.0 -> 1.33.0
OpenTelemetry 0.20.0 -> 1.20.0
containerd 1.6.6 -> 1.7.15
CoreDNS 1.9.2 -> 1.11.1

With Kubernetes 1.25 PodSecurityPolicies are removed, this replaces them
with a static PodSecurity admission configuration which behaves the same
or is slightly more permissive in most ways. Only known exceptions are
that NET_RAW is no longer an allowed permission and non-standard SELinux
labels are no longer permitted (but these never did anything anyways).
The RBAC policies are intentionally not removed yet as we do not yet
have the capability to actually update these, so they will be removed
when that is available (#288), until then they will stay in-place but
do nothing.

With the containerd upgrade the deprecated option for ignoring
preseeded/pinned images for garbage collection in Kubelet can be
removed.

This change also contains some drive-by fixes to the controller-manager,
like passing the Service IP net and disabling cloud-related control
loops which generate spurious warnings if enabled.

The containerd tracing patch is removed as we can now use OTel v1, thus
that patch is no longer necessary.

An actual upgrade test will be part of a future CL as this one is
already quite large and it works stand-alone.

Co-authored-by: Tim Windelschmidt <tim@monogon.tech>
Change-Id: I8e5f51e6e6240a1b67590458b2f1c24d58c8e91e
Reviewed-on: https://review.monogon.dev/c/monogon/+/2315
Tested-by: Jenkins CI
Reviewed-by: Tim Windelschmidt <tim@monogon.tech>
diff --git a/third_party/go/patches/k8s-removed-block-device-pseudo-locks.patch b/third_party/go/patches/k8s-removed-block-device-pseudo-locks.patch
index 40a9ac6..8ae3140 100644
--- a/third_party/go/patches/k8s-removed-block-device-pseudo-locks.patch
+++ b/third_party/go/patches/k8s-removed-block-device-pseudo-locks.patch
@@ -13,7 +13,7 @@
 limitations under the License.
 
 
-From f0c9fc613c15e30453295beb25bf73763a4a82df Mon Sep 17 00:00:00 2001
+From 83fe2858cbdff277e416f0ea50366811c81e2382 Mon Sep 17 00:00:00 2001
 From: Lorenz Brun <lorenz@brun.one>
 Date: Mon, 29 Mar 2021 13:56:06 +0200
 Subject: [PATCH] Removed questionable block device pseudo-locks
@@ -33,10 +33,10 @@
  1 file changed, 18 deletions(-)
 
 diff --git a/pkg/volume/util/util.go b/pkg/volume/util/util.go
-index 367e05a0d1a..f53f1dcbb4e 100644
+index 601dc646013..5dfdd1ecb02 100644
 --- a/pkg/volume/util/util.go
 +++ b/pkg/volume/util/util.go
-@@ -527,17 +527,6 @@ func MapBlockVolume(
+@@ -511,17 +511,6 @@ func MapBlockVolume(
  		return fmt.Errorf("blkUtil.MapDevice failed. devicePath: %s, podVolumeMapPath:%s, volumeMapName: %s, bindMount: %v: %v",
  			devicePath, podVolumeMapPath, volumeMapName, false, mapErr)
  	}
@@ -53,8 +53,8 @@
 -
  	return nil
  }
- 
-@@ -551,13 +540,6 @@ func UnmapBlockVolume(
+
+@@ -535,13 +524,6 @@ func UnmapBlockVolume(
  	volumeMapName string,
  	podUID utypes.UID,
  ) error {
@@ -68,6 +68,6 @@
  	// unmap devicePath from pod volume path
  	unmapDeviceErr := blkUtil.UnmapDevice(podDeviceUnmapPath, volumeMapName, false /* bindMount */)
  	if unmapDeviceErr != nil {
--- 
-2.25.1
+--
+2.41.0