Skip to content

Commit 09517c2

Browse files
committed
kubelet: podresources: pack parameters in a struct
To enable rate limiting, needed for GA graduation, we need to pass more parameters to the already crowded `ListenAndServePodresources` function. To tidy up a bit, pack the parameters in a helper struct, with no intended changes in behavior. Signed-off-by: Francesco Romani <[email protected]>
1 parent 08fbe92 commit 09517c2

File tree

2 files changed

+21
-4
lines changed

2 files changed

+21
-4
lines changed

pkg/kubelet/kubelet.go

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2720,7 +2720,15 @@ func (kl *Kubelet) ListenAndServePodResources() {
27202720
klog.V(2).InfoS("Failed to get local endpoint for PodResources endpoint", "err", err)
27212721
return
27222722
}
2723-
server.ListenAndServePodResources(socket, kl.podManager, kl.containerManager, kl.containerManager, kl.containerManager)
2723+
2724+
providers := server.PodResourcesProviders{
2725+
Pods: kl.podManager,
2726+
Devices: kl.containerManager,
2727+
Cpus: kl.containerManager,
2728+
Memory: kl.containerManager,
2729+
}
2730+
2731+
server.ListenAndServePodResources(socket, providers)
27242732
}
27252733

27262734
// Delete the eligible dead container instances in a pod. Depending on the configuration, the latest dead containers may be kept around.

pkg/kubelet/server/server.go

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -209,11 +209,20 @@ func ListenAndServeKubeletReadOnlyServer(
209209
}
210210
}
211211

212+
type PodResourcesProviders struct {
213+
Pods podresources.PodsProvider
214+
Devices podresources.DevicesProvider
215+
Cpus podresources.CPUsProvider
216+
Memory podresources.MemoryProvider
217+
}
218+
212219
// ListenAndServePodResources initializes a gRPC server to serve the PodResources service
213-
func ListenAndServePodResources(socket string, podsProvider podresources.PodsProvider, devicesProvider podresources.DevicesProvider, cpusProvider podresources.CPUsProvider, memoryProvider podresources.MemoryProvider) {
220+
func ListenAndServePodResources(socket string, providers PodResourcesProviders) {
214221
server := grpc.NewServer()
215-
podresourcesapiv1alpha1.RegisterPodResourcesListerServer(server, podresources.NewV1alpha1PodResourcesServer(podsProvider, devicesProvider))
216-
podresourcesapi.RegisterPodResourcesListerServer(server, podresources.NewV1PodResourcesServer(podsProvider, devicesProvider, cpusProvider, memoryProvider))
222+
223+
podresourcesapiv1alpha1.RegisterPodResourcesListerServer(server, podresources.NewV1alpha1PodResourcesServer(providers.Pods, providers.Devices))
224+
podresourcesapi.RegisterPodResourcesListerServer(server, podresources.NewV1PodResourcesServer(providers.Pods, providers.Devices, providers.Cpus, providers.Memory))
225+
217226
l, err := util.CreateListener(socket)
218227
if err != nil {
219228
klog.ErrorS(err, "Failed to create listener for podResources endpoint")

0 commit comments

Comments
 (0)