mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 19:56:01 +00:00
Swtich nodelifecyclecontroller to coordination/v1
This commit is contained in:
parent
f64c631cd7
commit
cf9203501e
@ -163,7 +163,7 @@ func startNodeIpamController(ctx ControllerContext) (http.Handler, bool, error)
|
|||||||
|
|
||||||
func startNodeLifecycleController(ctx ControllerContext) (http.Handler, bool, error) {
|
func startNodeLifecycleController(ctx ControllerContext) (http.Handler, bool, error) {
|
||||||
lifecycleController, err := lifecyclecontroller.NewNodeLifecycleController(
|
lifecycleController, err := lifecyclecontroller.NewNodeLifecycleController(
|
||||||
ctx.InformerFactory.Coordination().V1beta1().Leases(),
|
ctx.InformerFactory.Coordination().V1().Leases(),
|
||||||
ctx.InformerFactory.Core().V1().Pods(),
|
ctx.InformerFactory.Core().V1().Pods(),
|
||||||
ctx.InformerFactory.Core().V1().Nodes(),
|
ctx.InformerFactory.Core().V1().Nodes(),
|
||||||
ctx.InformerFactory.Apps().V1().DaemonSets(),
|
ctx.InformerFactory.Apps().V1().DaemonSets(),
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
"k8s.io/api/batch/v1beta1",
|
"k8s.io/api/batch/v1beta1",
|
||||||
"k8s.io/api/certificates/v1beta1",
|
"k8s.io/api/certificates/v1beta1",
|
||||||
"k8s.io/api/core/v1",
|
"k8s.io/api/core/v1",
|
||||||
"k8s.io/api/coordination/v1beta1",
|
"k8s.io/api/coordination/v1",
|
||||||
"k8s.io/api/discovery/v1alpha1",
|
"k8s.io/api/discovery/v1alpha1",
|
||||||
"k8s.io/api/extensions/v1beta1",
|
"k8s.io/api/extensions/v1beta1",
|
||||||
"k8s.io/api/policy/v1beta1",
|
"k8s.io/api/policy/v1beta1",
|
||||||
@ -148,7 +148,7 @@
|
|||||||
"k8s.io/client-go/listers/certificates/v1beta1",
|
"k8s.io/client-go/listers/certificates/v1beta1",
|
||||||
"k8s.io/client-go/listers/core/v1",
|
"k8s.io/client-go/listers/core/v1",
|
||||||
"k8s.io/client-go/listers/discovery/v1alpha1",
|
"k8s.io/client-go/listers/discovery/v1alpha1",
|
||||||
"k8s.io/client-go/listers/coordination/v1beta1",
|
"k8s.io/client-go/listers/coordination/v1",
|
||||||
"k8s.io/client-go/listers/extensions/v1beta1",
|
"k8s.io/client-go/listers/extensions/v1beta1",
|
||||||
"k8s.io/client-go/listers/policy/v1beta1",
|
"k8s.io/client-go/listers/policy/v1beta1",
|
||||||
"k8s.io/client-go/listers/rbac/v1",
|
"k8s.io/client-go/listers/rbac/v1",
|
||||||
|
@ -18,7 +18,7 @@ go_library(
|
|||||||
"//pkg/scheduler/api:go_default_library",
|
"//pkg/scheduler/api:go_default_library",
|
||||||
"//pkg/util/node:go_default_library",
|
"//pkg/util/node:go_default_library",
|
||||||
"//pkg/util/taints:go_default_library",
|
"//pkg/util/taints:go_default_library",
|
||||||
"//staging/src/k8s.io/api/coordination/v1beta1:go_default_library",
|
"//staging/src/k8s.io/api/coordination/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
||||||
@ -29,13 +29,13 @@ go_library(
|
|||||||
"//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
||||||
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/informers/apps/v1:go_default_library",
|
"//staging/src/k8s.io/client-go/informers/apps/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/informers/coordination/v1beta1:go_default_library",
|
"//staging/src/k8s.io/client-go/informers/coordination/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/informers/core/v1:go_default_library",
|
"//staging/src/k8s.io/client-go/informers/core/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
|
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/kubernetes/scheme:go_default_library",
|
"//staging/src/k8s.io/client-go/kubernetes/scheme:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/kubernetes/typed/core/v1:go_default_library",
|
"//staging/src/k8s.io/client-go/kubernetes/typed/core/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/listers/apps/v1:go_default_library",
|
"//staging/src/k8s.io/client-go/listers/apps/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/listers/coordination/v1beta1:go_default_library",
|
"//staging/src/k8s.io/client-go/listers/coordination/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/listers/core/v1:go_default_library",
|
"//staging/src/k8s.io/client-go/listers/core/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",
|
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/tools/record:go_default_library",
|
"//staging/src/k8s.io/client-go/tools/record:go_default_library",
|
||||||
@ -63,7 +63,7 @@ go_test(
|
|||||||
"//pkg/util/node:go_default_library",
|
"//pkg/util/node:go_default_library",
|
||||||
"//pkg/util/taints:go_default_library",
|
"//pkg/util/taints:go_default_library",
|
||||||
"//staging/src/k8s.io/api/apps/v1:go_default_library",
|
"//staging/src/k8s.io/api/apps/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/api/coordination/v1beta1:go_default_library",
|
"//staging/src/k8s.io/api/coordination/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
|
||||||
@ -74,7 +74,7 @@ go_test(
|
|||||||
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/informers:go_default_library",
|
"//staging/src/k8s.io/client-go/informers:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/informers/apps/v1:go_default_library",
|
"//staging/src/k8s.io/client-go/informers/apps/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/informers/coordination/v1beta1:go_default_library",
|
"//staging/src/k8s.io/client-go/informers/coordination/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/informers/core/v1:go_default_library",
|
"//staging/src/k8s.io/client-go/informers/core/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
|
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/kubernetes/fake:go_default_library",
|
"//staging/src/k8s.io/client-go/kubernetes/fake:go_default_library",
|
||||||
|
@ -29,7 +29,7 @@ import (
|
|||||||
|
|
||||||
"k8s.io/klog"
|
"k8s.io/klog"
|
||||||
|
|
||||||
coordv1beta1 "k8s.io/api/coordination/v1beta1"
|
coordv1 "k8s.io/api/coordination/v1"
|
||||||
v1 "k8s.io/api/core/v1"
|
v1 "k8s.io/api/core/v1"
|
||||||
apiequality "k8s.io/apimachinery/pkg/api/equality"
|
apiequality "k8s.io/apimachinery/pkg/api/equality"
|
||||||
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
||||||
@ -40,13 +40,13 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||||
appsv1informers "k8s.io/client-go/informers/apps/v1"
|
appsv1informers "k8s.io/client-go/informers/apps/v1"
|
||||||
coordinformers "k8s.io/client-go/informers/coordination/v1beta1"
|
coordinformers "k8s.io/client-go/informers/coordination/v1"
|
||||||
coreinformers "k8s.io/client-go/informers/core/v1"
|
coreinformers "k8s.io/client-go/informers/core/v1"
|
||||||
clientset "k8s.io/client-go/kubernetes"
|
clientset "k8s.io/client-go/kubernetes"
|
||||||
"k8s.io/client-go/kubernetes/scheme"
|
"k8s.io/client-go/kubernetes/scheme"
|
||||||
v1core "k8s.io/client-go/kubernetes/typed/core/v1"
|
v1core "k8s.io/client-go/kubernetes/typed/core/v1"
|
||||||
appsv1listers "k8s.io/client-go/listers/apps/v1"
|
appsv1listers "k8s.io/client-go/listers/apps/v1"
|
||||||
coordlisters "k8s.io/client-go/listers/coordination/v1beta1"
|
coordlisters "k8s.io/client-go/listers/coordination/v1"
|
||||||
corelisters "k8s.io/client-go/listers/core/v1"
|
corelisters "k8s.io/client-go/listers/core/v1"
|
||||||
"k8s.io/client-go/tools/cache"
|
"k8s.io/client-go/tools/cache"
|
||||||
"k8s.io/client-go/tools/record"
|
"k8s.io/client-go/tools/record"
|
||||||
@ -168,7 +168,7 @@ type nodeHealthData struct {
|
|||||||
probeTimestamp metav1.Time
|
probeTimestamp metav1.Time
|
||||||
readyTransitionTimestamp metav1.Time
|
readyTransitionTimestamp metav1.Time
|
||||||
status *v1.NodeStatus
|
status *v1.NodeStatus
|
||||||
lease *coordv1beta1.Lease
|
lease *coordv1.Lease
|
||||||
}
|
}
|
||||||
|
|
||||||
func (n *nodeHealthData) deepCopy() *nodeHealthData {
|
func (n *nodeHealthData) deepCopy() *nodeHealthData {
|
||||||
@ -979,7 +979,7 @@ func (nc *Controller) tryUpdateNodeHealth(node *v1.Node) (time.Duration, v1.Node
|
|||||||
// - currently only correct Ready State transition outside of Node Controller is marking it ready by Kubelet, we don't check
|
// - currently only correct Ready State transition outside of Node Controller is marking it ready by Kubelet, we don't check
|
||||||
// if that's the case, but it does not seem necessary.
|
// if that's the case, but it does not seem necessary.
|
||||||
var savedCondition *v1.NodeCondition
|
var savedCondition *v1.NodeCondition
|
||||||
var savedLease *coordv1beta1.Lease
|
var savedLease *coordv1.Lease
|
||||||
if nodeHealth != nil {
|
if nodeHealth != nil {
|
||||||
_, savedCondition = nodeutil.GetNodeCondition(nodeHealth.status, v1.NodeReady)
|
_, savedCondition = nodeutil.GetNodeCondition(nodeHealth.status, v1.NodeReady)
|
||||||
savedLease = nodeHealth.lease
|
savedLease = nodeHealth.lease
|
||||||
@ -1028,7 +1028,7 @@ func (nc *Controller) tryUpdateNodeHealth(node *v1.Node) (time.Duration, v1.Node
|
|||||||
readyTransitionTimestamp: transitionTime,
|
readyTransitionTimestamp: transitionTime,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var observedLease *coordv1beta1.Lease
|
var observedLease *coordv1.Lease
|
||||||
if utilfeature.DefaultFeatureGate.Enabled(features.NodeLease) {
|
if utilfeature.DefaultFeatureGate.Enabled(features.NodeLease) {
|
||||||
// Always update the probe time if node lease is renewed.
|
// Always update the probe time if node lease is renewed.
|
||||||
// Note: If kubelet never posted the node status, but continues renewing the
|
// Note: If kubelet never posted the node status, but continues renewing the
|
||||||
|
@ -23,7 +23,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
apps "k8s.io/api/apps/v1"
|
apps "k8s.io/api/apps/v1"
|
||||||
coordv1beta1 "k8s.io/api/coordination/v1beta1"
|
coordv1 "k8s.io/api/coordination/v1"
|
||||||
v1 "k8s.io/api/core/v1"
|
v1 "k8s.io/api/core/v1"
|
||||||
apiequality "k8s.io/apimachinery/pkg/api/equality"
|
apiequality "k8s.io/apimachinery/pkg/api/equality"
|
||||||
"k8s.io/apimachinery/pkg/api/resource"
|
"k8s.io/apimachinery/pkg/api/resource"
|
||||||
@ -34,7 +34,7 @@ import (
|
|||||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||||
"k8s.io/client-go/informers"
|
"k8s.io/client-go/informers"
|
||||||
appsinformers "k8s.io/client-go/informers/apps/v1"
|
appsinformers "k8s.io/client-go/informers/apps/v1"
|
||||||
coordinformers "k8s.io/client-go/informers/coordination/v1beta1"
|
coordinformers "k8s.io/client-go/informers/coordination/v1"
|
||||||
coreinformers "k8s.io/client-go/informers/core/v1"
|
coreinformers "k8s.io/client-go/informers/core/v1"
|
||||||
clientset "k8s.io/client-go/kubernetes"
|
clientset "k8s.io/client-go/kubernetes"
|
||||||
"k8s.io/client-go/kubernetes/fake"
|
"k8s.io/client-go/kubernetes/fake"
|
||||||
@ -113,20 +113,20 @@ func (nc *nodeLifecycleController) doEviction(fakeNodeHandler *testutil.FakeNode
|
|||||||
return podEvicted
|
return podEvicted
|
||||||
}
|
}
|
||||||
|
|
||||||
func createNodeLease(nodeName string, renewTime metav1.MicroTime) *coordv1beta1.Lease {
|
func createNodeLease(nodeName string, renewTime metav1.MicroTime) *coordv1.Lease {
|
||||||
return &coordv1beta1.Lease{
|
return &coordv1.Lease{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: nodeName,
|
Name: nodeName,
|
||||||
Namespace: v1.NamespaceNodeLease,
|
Namespace: v1.NamespaceNodeLease,
|
||||||
},
|
},
|
||||||
Spec: coordv1beta1.LeaseSpec{
|
Spec: coordv1.LeaseSpec{
|
||||||
HolderIdentity: pointer.StringPtr(nodeName),
|
HolderIdentity: pointer.StringPtr(nodeName),
|
||||||
RenewTime: &renewTime,
|
RenewTime: &renewTime,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (nc *nodeLifecycleController) syncLeaseStore(lease *coordv1beta1.Lease) error {
|
func (nc *nodeLifecycleController) syncLeaseStore(lease *coordv1.Lease) error {
|
||||||
if lease == nil {
|
if lease == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
@ -162,7 +162,7 @@ func newNodeLifecycleControllerFromClient(
|
|||||||
|
|
||||||
factory := informers.NewSharedInformerFactory(kubeClient, controller.NoResyncPeriodFunc())
|
factory := informers.NewSharedInformerFactory(kubeClient, controller.NoResyncPeriodFunc())
|
||||||
|
|
||||||
leaseInformer := factory.Coordination().V1beta1().Leases()
|
leaseInformer := factory.Coordination().V1().Leases()
|
||||||
nodeInformer := factory.Core().V1().Nodes()
|
nodeInformer := factory.Core().V1().Nodes()
|
||||||
daemonSetInformer := factory.Apps().V1().DaemonSets()
|
daemonSetInformer := factory.Apps().V1().DaemonSets()
|
||||||
|
|
||||||
@ -1698,10 +1698,10 @@ func TestMonitorNodeHealthUpdateNodeAndPodStatusWithLease(t *testing.T) {
|
|||||||
testcases := []struct {
|
testcases := []struct {
|
||||||
description string
|
description string
|
||||||
fakeNodeHandler *testutil.FakeNodeHandler
|
fakeNodeHandler *testutil.FakeNodeHandler
|
||||||
lease *coordv1beta1.Lease
|
lease *coordv1.Lease
|
||||||
timeToPass time.Duration
|
timeToPass time.Duration
|
||||||
newNodeStatus v1.NodeStatus
|
newNodeStatus v1.NodeStatus
|
||||||
newLease *coordv1beta1.Lease
|
newLease *coordv1.Lease
|
||||||
expectedRequestCount int
|
expectedRequestCount int
|
||||||
expectedNodes []*v1.Node
|
expectedNodes []*v1.Node
|
||||||
expectedPodStatusUpdate bool
|
expectedPodStatusUpdate bool
|
||||||
|
@ -95,7 +95,7 @@ func TestTaintNodeByCondition(t *testing.T) {
|
|||||||
|
|
||||||
// Start NodeLifecycleController for taint.
|
// Start NodeLifecycleController for taint.
|
||||||
nc, err := nodelifecycle.NewNodeLifecycleController(
|
nc, err := nodelifecycle.NewNodeLifecycleController(
|
||||||
informers.Coordination().V1beta1().Leases(),
|
informers.Coordination().V1().Leases(),
|
||||||
informers.Core().V1().Pods(),
|
informers.Core().V1().Pods(),
|
||||||
informers.Core().V1().Nodes(),
|
informers.Core().V1().Nodes(),
|
||||||
informers.Apps().V1().DaemonSets(),
|
informers.Apps().V1().DaemonSets(),
|
||||||
@ -674,7 +674,7 @@ func TestTaintBasedEvictions(t *testing.T) {
|
|||||||
|
|
||||||
// Start NodeLifecycleController for taint.
|
// Start NodeLifecycleController for taint.
|
||||||
nc, err := nodelifecycle.NewNodeLifecycleController(
|
nc, err := nodelifecycle.NewNodeLifecycleController(
|
||||||
informers.Coordination().V1beta1().Leases(),
|
informers.Coordination().V1().Leases(),
|
||||||
informers.Core().V1().Pods(),
|
informers.Core().V1().Pods(),
|
||||||
informers.Core().V1().Nodes(),
|
informers.Core().V1().Nodes(),
|
||||||
informers.Apps().V1().DaemonSets(),
|
informers.Apps().V1().DaemonSets(),
|
||||||
|
Loading…
Reference in New Issue
Block a user