Skip to content

Commit 1ce20b2

Browse files
authored
Merge pull request kubernetes#126336 from HirazawaUi/remove-runonce-mode
Kubelet: Remove runonce mode
2 parents 847be85 + ecf2b40 commit 1ce20b2

File tree

7 files changed

+10
-378
lines changed

7 files changed

+10
-378
lines changed

cmd/kubelet/app/server.go

+5-16
Original file line numberDiff line numberDiff line change
@@ -901,7 +901,7 @@ func run(ctx context.Context, s *options.KubeletServer, kubeDeps *kubelet.Depend
901901
klog.InfoS("Failed to ApplyOOMScoreAdj", "err", err)
902902
}
903903

904-
if err := RunKubelet(ctx, s, kubeDeps, s.RunOnce); err != nil {
904+
if err := RunKubelet(ctx, s, kubeDeps); err != nil {
905905
return err
906906
}
907907

@@ -916,10 +916,6 @@ func run(ctx context.Context, s *options.KubeletServer, kubeDeps *kubelet.Depend
916916
}, 5*time.Second, wait.NeverStop)
917917
}
918918

919-
if s.RunOnce {
920-
return nil
921-
}
922-
923919
// If systemd is used, notify it that we have started
924920
go daemon.SdNotify(false, "READY=1")
925921

@@ -1232,7 +1228,7 @@ func setContentTypeForClient(cfg *restclient.Config, contentType string) {
12321228
// 3 Standalone 'kubernetes' binary
12331229
//
12341230
// Eventually, #2 will be replaced with instances of #3
1235-
func RunKubelet(ctx context.Context, kubeServer *options.KubeletServer, kubeDeps *kubelet.Dependencies, runOnce bool) error {
1231+
func RunKubelet(ctx context.Context, kubeServer *options.KubeletServer, kubeDeps *kubelet.Dependencies) error {
12361232
hostname, err := nodeutil.GetHostname(kubeServer.HostnameOverride)
12371233
if err != nil {
12381234
return err
@@ -1286,16 +1282,9 @@ func RunKubelet(ctx context.Context, kubeServer *options.KubeletServer, kubeDeps
12861282
klog.ErrorS(err, "Failed to set rlimit on max file handles")
12871283
}
12881284

1289-
// process pods and exit.
1290-
if runOnce {
1291-
if _, err := k.RunOnce(podCfg.Updates()); err != nil {
1292-
return fmt.Errorf("runonce failed: %w", err)
1293-
}
1294-
klog.InfoS("Started kubelet as runonce")
1295-
} else {
1296-
startKubelet(k, podCfg, &kubeServer.KubeletConfiguration, kubeDeps, kubeServer.EnableServer)
1297-
klog.InfoS("Started kubelet")
1298-
}
1285+
startKubelet(k, podCfg, &kubeServer.KubeletConfiguration, kubeDeps, kubeServer.EnableServer)
1286+
klog.InfoS("Started kubelet")
1287+
12991288
return nil
13001289
}
13011290

pkg/kubelet/apis/config/types.go

+1
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,7 @@ type KubeletConfiguration struct {
285285
ResolverConfig string
286286
// RunOnce causes the Kubelet to check the API server once for pods,
287287
// run those in addition to the pods specified by static pod files, and exit.
288+
// Deprecated: no longer has any effect.
288289
RunOnce bool
289290
// cpuCFSQuota enables CPU CFS quota enforcement for containers that
290291
// specify CPU limits

pkg/kubelet/apis/config/validation/validation.go

+3
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,9 @@ func ValidateKubeletConfiguration(kc *kubeletconfig.KubeletConfiguration, featur
140140
if kc.ServerTLSBootstrap && !localFeatureGate.Enabled(features.RotateKubeletServerCertificate) {
141141
allErrors = append(allErrors, fmt.Errorf("invalid configuration: serverTLSBootstrap %v requires feature gate RotateKubeletServerCertificate", kc.ServerTLSBootstrap))
142142
}
143+
if kc.RunOnce {
144+
allErrors = append(allErrors, fmt.Errorf("invalid configuration: runOnce (--runOnce) %v, Runonce mode has been deprecated and should not be set", kc.RunOnce))
145+
}
143146

144147
for _, nodeTaint := range kc.RegisterWithTaints {
145148
if err := utiltaints.CheckTaintValidation(nodeTaint); err != nil {

pkg/kubelet/kubelet.go

-1
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,6 @@ type Bootstrap interface {
278278
ListenAndServeReadOnly(address net.IP, port uint, tp trace.TracerProvider)
279279
ListenAndServePodResources()
280280
Run(<-chan kubetypes.PodUpdate)
281-
RunOnce(<-chan kubetypes.PodUpdate) ([]RunPodResult, error)
282281
}
283282

284283
// Dependencies is a bin for things we might consider "injected dependencies" -- objects constructed

pkg/kubelet/runonce.go

-176
This file was deleted.

0 commit comments

Comments
 (0)