mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-20 10:20:51 +00:00
Merge pull request #112163 from aojea/static_allocation_ga
graduate ServiceIPStaticSubrange to GA
This commit is contained in:
commit
d754183866
@ -699,6 +699,7 @@ const (
|
||||
// kep: https://kep.k8s.io/3070
|
||||
// alpha: v1.24
|
||||
// beta: v1.25
|
||||
// ga: v1.26
|
||||
//
|
||||
// Subdivide the ClusterIP range for dynamic and static IP allocation.
|
||||
ServiceIPStaticSubrange featuregate.Feature = "ServiceIPStaticSubrange"
|
||||
@ -978,7 +979,7 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
||||
|
||||
SeccompDefault: {Default: true, PreRelease: featuregate.Beta},
|
||||
|
||||
ServiceIPStaticSubrange: {Default: true, PreRelease: featuregate.Beta},
|
||||
ServiceIPStaticSubrange: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.28
|
||||
|
||||
ServiceInternalTrafficPolicy: {Default: true, PreRelease: featuregate.Beta},
|
||||
|
||||
|
@ -22,9 +22,7 @@ import (
|
||||
"math/big"
|
||||
"net"
|
||||
|
||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||
api "k8s.io/kubernetes/pkg/apis/core"
|
||||
"k8s.io/kubernetes/pkg/features"
|
||||
"k8s.io/kubernetes/pkg/registry/core/service/allocator"
|
||||
netutils "k8s.io/utils/net"
|
||||
)
|
||||
@ -124,10 +122,7 @@ func New(cidr *net.IPNet, allocatorFactory allocator.AllocatorWithOffsetFactory)
|
||||
metrics: &emptyMetricsRecorder{}, // disabled by default
|
||||
}
|
||||
|
||||
offset := 0
|
||||
if utilfeature.DefaultFeatureGate.Enabled(features.ServiceIPStaticSubrange) {
|
||||
offset = calculateRangeOffset(cidr)
|
||||
}
|
||||
offset := calculateRangeOffset(cidr)
|
||||
|
||||
var err error
|
||||
r.alloc, err = allocatorFactory(r.max, rangeSpec, offset)
|
||||
|
@ -22,11 +22,8 @@ import (
|
||||
"testing"
|
||||
|
||||
"k8s.io/apimachinery/pkg/util/sets"
|
||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||
featuregatetesting "k8s.io/component-base/featuregate/testing"
|
||||
"k8s.io/component-base/metrics/testutil"
|
||||
api "k8s.io/kubernetes/pkg/apis/core"
|
||||
"k8s.io/kubernetes/pkg/features"
|
||||
netutils "k8s.io/utils/net"
|
||||
)
|
||||
|
||||
@ -181,8 +178,6 @@ func TestAllocateTiny(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestAllocateReserved(t *testing.T) {
|
||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.ServiceIPStaticSubrange, true)()
|
||||
|
||||
_, cidr, err := netutils.ParseCIDRSloppy("192.168.1.0/25")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -425,8 +420,6 @@ func TestNewFromSnapshot(t *testing.T) {
|
||||
|
||||
func TestClusterIPMetrics(t *testing.T) {
|
||||
clearMetrics()
|
||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.ServiceIPStaticSubrange, true)()
|
||||
|
||||
// create IPv4 allocator
|
||||
cidrIPv4 := "10.0.0.0/24"
|
||||
_, clusterCIDRv4, _ := netutils.ParseCIDRSloppy(cidrIPv4)
|
||||
@ -539,8 +532,6 @@ func TestClusterIPMetrics(t *testing.T) {
|
||||
|
||||
func TestClusterIPAllocatedMetrics(t *testing.T) {
|
||||
clearMetrics()
|
||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.ServiceIPStaticSubrange, true)()
|
||||
|
||||
// create IPv4 allocator
|
||||
cidrIPv4 := "10.0.0.0/25"
|
||||
_, clusterCIDRv4, _ := netutils.ParseCIDRSloppy(cidrIPv4)
|
||||
|
@ -26,11 +26,8 @@ import (
|
||||
"k8s.io/apiserver/pkg/storage"
|
||||
etcd3testing "k8s.io/apiserver/pkg/storage/etcd3/testing"
|
||||
"k8s.io/apiserver/pkg/storage/storagebackend/factory"
|
||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||
featuregatetesting "k8s.io/component-base/featuregate/testing"
|
||||
api "k8s.io/kubernetes/pkg/apis/core"
|
||||
_ "k8s.io/kubernetes/pkg/apis/core/install"
|
||||
"k8s.io/kubernetes/pkg/features"
|
||||
"k8s.io/kubernetes/pkg/registry/core/service/allocator"
|
||||
allocatorstore "k8s.io/kubernetes/pkg/registry/core/service/allocator/storage"
|
||||
"k8s.io/kubernetes/pkg/registry/core/service/ipallocator"
|
||||
@ -121,8 +118,6 @@ func TestStore(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestAllocateReserved(t *testing.T) {
|
||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.ServiceIPStaticSubrange, true)()
|
||||
|
||||
_, storage, _, si, destroyFunc := newStorage(t)
|
||||
defer destroyFunc()
|
||||
if err := si.Create(context.TODO(), key(), validNewRangeAllocation(), nil, 0); err != nil {
|
||||
@ -169,8 +164,6 @@ func TestAllocateReserved(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestAllocateReservedDynamicBlockExhausted(t *testing.T) {
|
||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.ServiceIPStaticSubrange, true)()
|
||||
|
||||
_, storage, _, si, destroyFunc := newStorage(t)
|
||||
defer destroyFunc()
|
||||
if err := si.Create(context.TODO(), key(), validNewRangeAllocation(), nil, 0); err != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user