From 9f910d79ff308476367775606874d1c43139a5ba Mon Sep 17 00:00:00 2001 From: Jay Deokar <23660509+jaydeokar@users.noreply.github.com> Date: Thu, 7 Nov 2024 08:47:47 -0800 Subject: [PATCH 01/14] Update to Changelog, config and scripts. (#3095) (#3107) * Update to Changelog, config and scripts. * Add Version in Changelog. Co-authored-by: Senthil Kumaran --- CHANGELOG.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7f6e0bc2e3..815ef7352e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,24 @@ ## v1.18.5 +### What's Changed + +* Improvement - Add byobject filter on nodes #2888 +* Improvement - Move KUBE_CONFIG_PATH variable to KUBECONFIG variable #3015 +* Improvement - Update Limits and Add New Instance Types. #3077 + +* Dependency - Bump google.golang.org/grpc from 1.62.0 to 1.67.1 #3056 +* Dependency - Bump github.com/prometheus/common from 0.53.0 to 0.60.0 #3057 +* Dependency - Bump golang.org/x/sys from 0.24.0 to 0.25.0 in /test/agent #3052 +* Dependency - update upstream cni to 1.5.1 #3065 +* Dependency - Bump k8s.io/client-go from 0.30.3 to 0.31.1 #3036 +* Dependency - Bump github.com/vishvananda/netlink from 1.2.1-beta.2 to 1.3.0 #3054 +* Docs - Document the limitation of SGP with kube-proxy IPVS mode. #3064 +* Bugfix - https://github.com/aws/amazon-vpc-cni-k8s/pull/3088 +* Bugfix - Fix the SCRIPT_DIR reference in integration tests. #3090 + +## v1.18.5 + ## What's Changed * Improvement - Filter out interfaces with no ip info by @Pavani-Panakanti in https://github.com/aws/amazon-vpc-cni-k8s/pull/3047 From 9c8cd7f268ffcaf60816d98be3d11eafdd09efcb Mon Sep 17 00:00:00 2001 From: pavanipt Date: Wed, 27 Nov 2024 07:06:56 -0800 Subject: [PATCH 02/14] Update NP strict mode doc (#3125) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 57113f8198..cff797a55d 100644 --- a/README.md +++ b/README.md @@ -741,7 +741,7 @@ Type: String Default: `standard` -Network Policy agent now supports two modes for Network Policy enforcement - Strict and Standard. By default, the Amazon VPC CNI plugin for Kubernetes configures network policies for pods in parallel with the pod provisioning. In the `standard` mode, until all of the policies are configured for the new pod, containers in the new pod will start with a default allow policy. A default allow policy means that all ingress and egress traffic is allowed to and from the new pods. However, in the `strict` mode, a new pod will be blocked from Egress and Ingress connections till a qualifying Network Policy is applied. In Strict Mode, you must have a network policy defined for every pod in your cluster. Host Networking pods are exempted from this requirement. +Network Policy agent now supports two modes for Network Policy enforcement - Strict and Standard. By default, the Amazon VPC CNI plugin for Kubernetes configures network policies for pods in parallel with the pod provisioning. In the `standard` mode, until all of the policies are configured for the new pod, containers in the new pod will start with a default allow policy. A default allow policy means that all ingress and egress traffic is allowed to and from the new pods. However, in the `strict` mode, a new pod will start with a default deny policy and all Egress and Ingress connections will be blocked till Network Policies are configured. In Strict Mode, you must have a network policy defined for every pod in your cluster. Host Networking pods are exempted from this requirement. ### VPC CNI Feature Matrix From a6fe0bfa1b469c4a1b0f52201db8f5809915eddf Mon Sep 17 00:00:00 2001 From: Yash Thakkar Date: Mon, 2 Dec 2024 09:08:51 -0800 Subject: [PATCH 03/14] adding email to send log bundle (#3134) --- docs/troubleshooting.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md index 17e79f1239..0fe3b9f11e 100644 --- a/docs/troubleshooting.md +++ b/docs/troubleshooting.md @@ -79,6 +79,7 @@ ipamd.log.2018-05-16-01 ipamd.log.2018-05-16-06 ipamd.log.2018-05-16-11 ipamd // download /var/log/eks_i-01111ad54b6cfaa19_2020-03-11_0103-UTC_0.6.0.tar.gz ``` +You can share log bundle with cni team on this email k8s-awscni-triage@amazon.com. ### ipamD debugging commands From fdec8570216acaa7f915917acfddf4df2e17f6a7 Mon Sep 17 00:00:00 2001 From: Gavin Bunney <409207+gavinbunney@users.noreply.github.com> Date: Tue, 3 Dec 2024 09:39:54 -0800 Subject: [PATCH 04/14] Fix issues handling unmanaged ENIs with IPv6 only (#3122) --- pkg/awsutils/awsutils.go | 57 +++++++++++++++++++++-------------- pkg/awsutils/awsutils_test.go | 20 ++++++++++++ 2 files changed, 54 insertions(+), 23 deletions(-) diff --git a/pkg/awsutils/awsutils.go b/pkg/awsutils/awsutils.go index 3fea1e189d..c037622ad8 100644 --- a/pkg/awsutils/awsutils.go +++ b/pkg/awsutils/awsutils.go @@ -610,7 +610,9 @@ func (cache *EC2InstanceMetadataCache) getENIMetadata(eniMAC string) (ENIMetadat awsAPIErrInc("GetMACImdsFields", err) return ENIMetadata{}, err } - ipInfoAvailable := false + + ipv4Available := false + ipv6Available := false // Efa-only interfaces do not have any ipv4s or ipv6s associated with it. If we don't find any local-ipv4 or ipv6 info in imds we assume it to be efa-only interface and validate this later via ec2 call for _, field := range macImdsFields { if field == "local-ipv4s" { @@ -620,7 +622,7 @@ func (cache *EC2InstanceMetadataCache) getENIMetadata(eniMAC string) (ENIMetadat return ENIMetadata{}, err } if len(imdsIPv4s) > 0 { - ipInfoAvailable = true + ipv4Available = true log.Debugf("Found IPv4 addresses associated with interface. This is not efa-only interface") break } @@ -630,14 +632,14 @@ func (cache *EC2InstanceMetadataCache) getENIMetadata(eniMAC string) (ENIMetadat if err != nil { awsAPIErrInc("GetIPv6s", err) } else if len(imdsIPv6s) > 0 { - ipInfoAvailable = true + ipv6Available = true log.Debugf("Found IPv6 addresses associated with interface. This is not efa-only interface") break } } } - if !ipInfoAvailable { + if !ipv4Available && !ipv6Available { return ENIMetadata{ ENIID: eniID, MAC: eniMAC, @@ -652,23 +654,29 @@ func (cache *EC2InstanceMetadataCache) getENIMetadata(eniMAC string) (ENIMetadat } // Get IPv4 and IPv6 addresses assigned to interface - cidr, err := cache.imds.GetSubnetIPv4CIDRBlock(ctx, eniMAC) - if err != nil { - awsAPIErrInc("GetSubnetIPv4CIDRBlock", err) - return ENIMetadata{}, err - } + var ec2ip4s []*ec2.NetworkInterfacePrivateIpAddress + var subnetV4Cidr string + if ipv4Available { + cidr, err := cache.imds.GetSubnetIPv4CIDRBlock(ctx, eniMAC) + if err != nil { + awsAPIErrInc("GetSubnetIPv4CIDRBlock", err) + return ENIMetadata{}, err + } - imdsIPv4s, err := cache.imds.GetLocalIPv4s(ctx, eniMAC) - if err != nil { - awsAPIErrInc("GetLocalIPv4s", err) - return ENIMetadata{}, err - } + subnetV4Cidr = cidr.String() + + imdsIPv4s, err := cache.imds.GetLocalIPv4s(ctx, eniMAC) + if err != nil { + awsAPIErrInc("GetLocalIPv4s", err) + return ENIMetadata{}, err + } - ec2ip4s := make([]*ec2.NetworkInterfacePrivateIpAddress, len(imdsIPv4s)) - for i, ip4 := range imdsIPv4s { - ec2ip4s[i] = &ec2.NetworkInterfacePrivateIpAddress{ - Primary: aws.Bool(i == 0), - PrivateIpAddress: aws.String(ip4.String()), + ec2ip4s = make([]*ec2.NetworkInterfacePrivateIpAddress, len(imdsIPv4s)) + for i, ip4 := range imdsIPv4s { + ec2ip4s[i] = &ec2.NetworkInterfacePrivateIpAddress{ + Primary: aws.Bool(i == 0), + PrivateIpAddress: aws.String(ip4.String()), + } } } @@ -732,7 +740,7 @@ func (cache *EC2InstanceMetadataCache) getENIMetadata(eniMAC string) (ENIMetadat ENIID: eniID, MAC: eniMAC, DeviceNumber: deviceNum, - SubnetIPv4CIDR: cidr.String(), + SubnetIPv4CIDR: subnetV4Cidr, IPv4Addresses: ec2ip4s, IPv4Prefixes: ec2ipv4Prefixes, SubnetIPv6CIDR: subnetV6Cidr, @@ -1407,14 +1415,17 @@ func (cache *EC2InstanceMetadataCache) DescribeAllENIs() (DescribeAllENIsResult, efaENIs[eniID] = true } if interfaceType != "efa-only" { - if len(eniMetadata.IPv4Addresses) == 0 { + if len(eniMetadata.IPv4Addresses) == 0 && len(eniMetadata.IPv6Addresses) == 0 { log.Errorf("Missing IP addresses from IMDS. Non efa-only interface should have IP address associated with it %s", eniID) - outOfSyncErr := errors.New("DescribeAllENIs: No IPv4 address found") + outOfSyncErr := errors.New("DescribeAllENIs: No IPv4 and IPv6 addresses found") return DescribeAllENIsResult{}, outOfSyncErr } } + // Check IPv4 addresses - logOutOfSyncState(eniID, eniMetadata.IPv4Addresses, ec2res.PrivateIpAddresses) + if len(eniMetadata.IPv4Addresses) > 0 { + logOutOfSyncState(eniID, eniMetadata.IPv4Addresses, ec2res.PrivateIpAddresses) + } tagMap[eniMetadata.ENIID] = convertSDKTagsToTags(ec2res.TagSet) } return DescribeAllENIsResult{ diff --git a/pkg/awsutils/awsutils_test.go b/pkg/awsutils/awsutils_test.go index 65bf4ee7d1..897c451d0b 100644 --- a/pkg/awsutils/awsutils_test.go +++ b/pkg/awsutils/awsutils_test.go @@ -56,6 +56,7 @@ const ( metadataSubnetCIDR = "/subnet-ipv4-cidr-block" metadataIPv4s = "/local-ipv4s" metadataIPv4Prefixes = "/ipv4-prefix" + metadataIPv6s = "/ipv6s" metadataIPv6Prefixes = "/ipv6-prefix" az = "us-east-1a" @@ -79,12 +80,14 @@ const ( eni2Device = "1" eni2PrivateIP = "10.0.0.2" eni2Prefix = "10.0.2.0/28" + eni2v6IP = "2001:db8:8:4::2" eni2v6Prefix = "2001:db8::/64" eni2ID = "eni-12341234" metadataVPCIPv4CIDRs = "192.168.0.0/16 100.66.0.0/1" myNodeName = "testNodeName" imdsMACFields = "security-group-ids subnet-id vpc-id vpc-ipv4-cidr-blocks device-number interface-id subnet-ipv4-cidr-block local-ipv4s ipv4-prefix ipv6-prefix" imdsMACFieldsEfaOnly = "security-group-ids subnet-id vpc-id vpc-ipv4-cidr-blocks device-number interface-id subnet-ipv4-cidr-block ipv4-prefix ipv6-prefix" + imdsMACFieldsV6Only = "security-group-ids subnet-id vpc-id vpc-ipv4-cidr-blocks device-number interface-id subnet-ipv6-cidr-blocks ipv6s ipv6-prefix" ) func testMetadata(overrides map[string]interface{}) FakeIMDS { @@ -241,6 +244,23 @@ func TestGetAttachedENIsWithEfaOnly(t *testing.T) { } } +func TestGetAttachedENIsWithIPv6Only(t *testing.T) { + mockMetadata := testMetadata(map[string]interface{}{ + metadataMACPath: primaryMAC + " " + eni2MAC, + metadataMACPath + eni2MAC: imdsMACFieldsV6Only, + metadataMACPath + eni2MAC + metadataDeviceNum: eni2Device, + metadataMACPath + eni2MAC + metadataInterface: eni2ID, + metadataMACPath + eni2MAC + metadataIPv6s: eni2v6IP, + metadataMACPath + eni2MAC + metadataIPv6Prefixes: eni2v6Prefix, + }) + + cache := &EC2InstanceMetadataCache{imds: TypedIMDS{mockMetadata}} + ens, err := cache.GetAttachedENIs() + if assert.NoError(t, err) { + assert.Equal(t, len(ens), 2) + } +} + func TestGetAttachedENIsWithPrefixes(t *testing.T) { mockMetadata := testMetadata(map[string]interface{}{ metadataMACPath: primaryMAC + " " + eni2MAC, From 9d32b89f6714b4dd133ec2befa2e76294961f7e0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 1 Dec 2024 10:39:51 +0000 Subject: [PATCH 05/14] Bump go.uber.org/zap from 1.26.0 to 1.27.0 Bumps [go.uber.org/zap](https://github.com/uber-go/zap) from 1.26.0 to 1.27.0. - [Release notes](https://github.com/uber-go/zap/releases) - [Changelog](https://github.com/uber-go/zap/blob/master/CHANGELOG.md) - [Commits](https://github.com/uber-go/zap/compare/v1.26.0...v1.27.0) --- updated-dependencies: - dependency-name: go.uber.org/zap dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 57ec4cc60d..e1e83b990d 100644 --- a/go.mod +++ b/go.mod @@ -24,7 +24,7 @@ require ( github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.9.0 github.com/vishvananda/netlink v1.3.0 - go.uber.org/zap v1.26.0 + go.uber.org/zap v1.27.0 golang.org/x/net v0.30.0 golang.org/x/sys v0.26.0 google.golang.org/grpc v1.67.1 diff --git a/go.sum b/go.sum index 6691195368..7052c95f1a 100644 --- a/go.sum +++ b/go.sum @@ -448,8 +448,8 @@ go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= -go.uber.org/zap v1.26.0 h1:sI7k6L95XOKS281NhVKOFCUNIvv9e0w4BF8N3u+tCRo= -go.uber.org/zap v1.26.0/go.mod h1:dtElttAiwGvoJ/vj4IwHBS/gXsEu/pZ50mUIRWuG0so= +go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8= +go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k= golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= From 28f666b0db3b6633f2164e9490210268a45b7baf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 1 Dec 2024 10:39:54 +0000 Subject: [PATCH 06/14] Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.9.0 to 1.10.0. - [Release notes](https://github.com/stretchr/testify/releases) - [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0) --- updated-dependencies: - dependency-name: github.com/stretchr/testify dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index e1e83b990d..0f1cd61948 100644 --- a/go.mod +++ b/go.mod @@ -22,7 +22,7 @@ require ( github.com/samber/lo v1.39.0 github.com/sirupsen/logrus v1.9.3 github.com/spf13/pflag v1.0.5 - github.com/stretchr/testify v1.9.0 + github.com/stretchr/testify v1.10.0 github.com/vishvananda/netlink v1.3.0 go.uber.org/zap v1.27.0 golang.org/x/net v0.30.0 diff --git a/go.sum b/go.sum index 7052c95f1a..0f4f416776 100644 --- a/go.sum +++ b/go.sum @@ -405,8 +405,8 @@ github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= -github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/vishvananda/netlink v1.3.0 h1:X7l42GfcV4S6E4vHTsw48qbrV+9PVojNfIhZcwQdrZk= github.com/vishvananda/netlink v1.3.0/go.mod h1:i6NetklAujEcC6fK0JPjT8qSwWyO0HLn4UKG+hGqeJs= github.com/vishvananda/netns v0.0.4 h1:Oeaw1EM2JMxD51g9uhtC0D7erkIjgmj8+JZc26m1YX8= From ac23b96a216c7e24733c6eceaa73124d4b2a2113 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 1 Dec 2024 10:39:57 +0000 Subject: [PATCH 07/14] Bump github.com/onsi/gomega from 1.35.1 to 1.36.0 Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.35.1 to 1.36.0. - [Release notes](https://github.com/onsi/gomega/releases) - [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md) - [Commits](https://github.com/onsi/gomega/compare/v1.35.1...v1.36.0) --- updated-dependencies: - dependency-name: github.com/onsi/gomega dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 0f1cd61948..21f2507ea6 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/golang/mock v1.6.0 github.com/google/go-cmp v0.6.0 github.com/onsi/ginkgo/v2 v2.20.1 - github.com/onsi/gomega v1.35.1 + github.com/onsi/gomega v1.36.0 github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.20.4 github.com/prometheus/client_model v0.6.1 diff --git a/go.sum b/go.sum index 0f4f416776..b717462860 100644 --- a/go.sum +++ b/go.sum @@ -330,8 +330,8 @@ github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f h1:y5//uYreIhSUg3J github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/onsi/ginkgo/v2 v2.20.1 h1:YlVIbqct+ZmnEph770q9Q7NVAz4wwIiVNahee6JyUzo= github.com/onsi/ginkgo/v2 v2.20.1/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI= -github.com/onsi/gomega v1.35.1 h1:Cwbd75ZBPxFSuZ6T+rN/WCb/gOc6YgFBXLlZLhC7Ds4= -github.com/onsi/gomega v1.35.1/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog= +github.com/onsi/gomega v1.36.0 h1:Pb12RlruUtj4XUuPUqeEWc6j5DkVVVA49Uf6YLfC95Y= +github.com/onsi/gomega v1.36.0/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opencontainers/image-spec v1.1.0-rc6 h1:XDqvyKsJEbRtATzkgItUqBA7QHk58yxX1Ov9HERHNqU= From 15095455d6188b99b18abc3b6c106f6e82457ac3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 1 Dec 2024 10:40:01 +0000 Subject: [PATCH 08/14] Bump github.com/prometheus/common from 0.60.0 to 0.60.1 Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.60.0 to 0.60.1. - [Release notes](https://github.com/prometheus/common/releases) - [Changelog](https://github.com/prometheus/common/blob/main/RELEASE.md) - [Commits](https://github.com/prometheus/common/compare/v0.60.0...v0.60.1) --- updated-dependencies: - dependency-name: github.com/prometheus/common dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 21f2507ea6..0c27aac786 100644 --- a/go.mod +++ b/go.mod @@ -18,7 +18,7 @@ require ( github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.20.4 github.com/prometheus/client_model v0.6.1 - github.com/prometheus/common v0.60.0 + github.com/prometheus/common v0.60.1 github.com/samber/lo v1.39.0 github.com/sirupsen/logrus v1.9.3 github.com/spf13/pflag v1.0.5 diff --git a/go.sum b/go.sum index b717462860..66622c2b2d 100644 --- a/go.sum +++ b/go.sum @@ -360,8 +360,8 @@ github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= -github.com/prometheus/common v0.60.0 h1:+V9PAREWNvJMAuJ1x1BaWl9dewMW4YrHZQbx0sJNllA= -github.com/prometheus/common v0.60.0/go.mod h1:h0LYf1R1deLSKtD4Vdg8gy4RuOvENW2J/h19V5NADQw= +github.com/prometheus/common v0.60.1 h1:FUas6GcOw66yB/73KC+BOZoFJmbo/1pojoILArPAaSc= +github.com/prometheus/common v0.60.1/go.mod h1:h0LYf1R1deLSKtD4Vdg8gy4RuOvENW2J/h19V5NADQw= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= From 95c9d569fd49c56e44c86f9411778ec28c192620 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Dec 2024 01:14:40 +0000 Subject: [PATCH 09/14] Bump github.com/onsi/ginkgo/v2 from 2.20.1 to 2.22.0 Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.20.1 to 2.22.0. - [Release notes](https://github.com/onsi/ginkgo/releases) - [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md) - [Commits](https://github.com/onsi/ginkgo/compare/v2.20.1...v2.22.0) --- updated-dependencies: - dependency-name: github.com/onsi/ginkgo/v2 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- go.mod | 6 +++--- go.sum | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/go.mod b/go.mod index 0c27aac786..c715537b3c 100644 --- a/go.mod +++ b/go.mod @@ -13,7 +13,7 @@ require ( github.com/go-logr/logr v1.4.2 github.com/golang/mock v1.6.0 github.com/google/go-cmp v0.6.0 - github.com/onsi/ginkgo/v2 v2.20.1 + github.com/onsi/ginkgo/v2 v2.22.0 github.com/onsi/gomega v1.36.0 github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.20.4 @@ -88,7 +88,7 @@ require ( github.com/google/btree v1.0.1 // indirect github.com/google/gnostic-models v0.6.9-0.20230804172637-c7be7c783f49 // indirect github.com/google/gofuzz v1.2.0 // indirect - github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5 // indirect + github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db // indirect github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect github.com/google/uuid v1.6.0 // indirect github.com/gorilla/mux v1.8.0 // indirect @@ -155,7 +155,7 @@ require ( golang.org/x/term v0.21.0 // indirect golang.org/x/text v0.19.0 // indirect golang.org/x/time v0.5.0 // indirect - golang.org/x/tools v0.24.0 // indirect + golang.org/x/tools v0.26.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect diff --git a/go.sum b/go.sum index 66622c2b2d..ebaeb78073 100644 --- a/go.sum +++ b/go.sum @@ -203,8 +203,8 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5 h1:5iH8iuqE5apketRbSFBy+X1V0o+l+8NF1avt4HWl7cA= -github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -328,8 +328,8 @@ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8m github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f h1:y5//uYreIhSUg3J1GEMiLbxo1LJaP8RfCpH6pymGZus= github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= -github.com/onsi/ginkgo/v2 v2.20.1 h1:YlVIbqct+ZmnEph770q9Q7NVAz4wwIiVNahee6JyUzo= -github.com/onsi/ginkgo/v2 v2.20.1/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI= +github.com/onsi/ginkgo/v2 v2.22.0 h1:Yed107/8DjTr0lKCNt7Dn8yQ6ybuDRQoMGrNFKzMfHg= +github.com/onsi/ginkgo/v2 v2.22.0/go.mod h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo= github.com/onsi/gomega v1.36.0 h1:Pb12RlruUtj4XUuPUqeEWc6j5DkVVVA49Uf6YLfC95Y= github.com/onsi/gomega v1.36.0/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= @@ -524,8 +524,8 @@ golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= -golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= -golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= +golang.org/x/tools v0.26.0 h1:v/60pFQmzmT9ExmjDv2gGIfi3OqfKoEP6I5+umXlbnQ= +golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= From b752204df3ea0e4f8029201daa8c4b71b6aa8afa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Dec 2024 01:18:00 +0000 Subject: [PATCH 10/14] Bump golang.org/x/sys from 0.26.0 to 0.27.0 in /test/agent Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.26.0 to 0.27.0. - [Commits](https://github.com/golang/sys/compare/v0.26.0...v0.27.0) --- updated-dependencies: - dependency-name: golang.org/x/sys dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- test/agent/go.mod | 2 +- test/agent/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/agent/go.mod b/test/agent/go.mod index 0f54d85029..ff275ad30a 100644 --- a/test/agent/go.mod +++ b/test/agent/go.mod @@ -5,7 +5,7 @@ go 1.22.3 require ( github.com/coreos/go-iptables v0.8.0 github.com/vishvananda/netlink v1.3.0 - golang.org/x/sys v0.26.0 + golang.org/x/sys v0.27.0 ) require github.com/vishvananda/netns v0.0.4 // indirect diff --git a/test/agent/go.sum b/test/agent/go.sum index 11a4ccbf71..25ea15f1b6 100644 --- a/test/agent/go.sum +++ b/test/agent/go.sum @@ -6,5 +6,5 @@ github.com/vishvananda/netns v0.0.4 h1:Oeaw1EM2JMxD51g9uhtC0D7erkIjgmj8+JZc26m1Y github.com/vishvananda/netns v0.0.4/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo= -golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s= +golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= From eb4a7ab70650a8d7c7ddfb76667b69720ca246b4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Dec 2024 19:56:42 +0000 Subject: [PATCH 11/14] Bump golang.org/x/sys from 0.27.0 to 0.28.0 in /test/agent Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.27.0 to 0.28.0. - [Commits](https://github.com/golang/sys/compare/v0.27.0...v0.28.0) --- updated-dependencies: - dependency-name: golang.org/x/sys dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- test/agent/go.mod | 2 +- test/agent/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/agent/go.mod b/test/agent/go.mod index ff275ad30a..6f2eeb23d4 100644 --- a/test/agent/go.mod +++ b/test/agent/go.mod @@ -5,7 +5,7 @@ go 1.22.3 require ( github.com/coreos/go-iptables v0.8.0 github.com/vishvananda/netlink v1.3.0 - golang.org/x/sys v0.27.0 + golang.org/x/sys v0.28.0 ) require github.com/vishvananda/netns v0.0.4 // indirect diff --git a/test/agent/go.sum b/test/agent/go.sum index 25ea15f1b6..823171d3fc 100644 --- a/test/agent/go.sum +++ b/test/agent/go.sum @@ -6,5 +6,5 @@ github.com/vishvananda/netns v0.0.4 h1:Oeaw1EM2JMxD51g9uhtC0D7erkIjgmj8+JZc26m1Y github.com/vishvananda/netns v0.0.4/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s= -golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= +golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= From bfd070543697a7fc25639c96693e0adb8e0027b7 Mon Sep 17 00:00:00 2001 From: Shehbaj Dhillon Date: Sat, 7 Dec 2024 11:22:31 -0800 Subject: [PATCH 12/14] Fix KOps Integration Test (#3140) * scripts lib integration: add more logging steps * scripts lib cluster: increase kops control plane node size --- scripts/lib/cluster.sh | 3 ++ scripts/lib/integration.sh | 85 +++++++++++++++++++++++++++++--------- 2 files changed, 69 insertions(+), 19 deletions(-) diff --git a/scripts/lib/cluster.sh b/scripts/lib/cluster.sh index 0c375ce569..ee151f7c94 100644 --- a/scripts/lib/cluster.sh +++ b/scripts/lib/cluster.sh @@ -96,6 +96,9 @@ function up-kops-cluster { --networking amazonvpc \ --node-count 2 \ --node-size c5.xlarge \ + --control-plane-count 3 \ + --control-plane-size c5.xlarge \ + --control-plane-zones ${AWS_DEFAULT_REGION}a,${AWS_DEFAULT_REGION}b \ --ssh-public-key=~/.ssh/devopsinuse.pub \ --kubernetes-version ${K8S_VERSION} \ --image ${HOST_IMAGE_SSM_PARAMETER} \ diff --git a/scripts/lib/integration.sh b/scripts/lib/integration.sh index 7045a6aef9..53a1d75f89 100644 --- a/scripts/lib/integration.sh +++ b/scripts/lib/integration.sh @@ -1,32 +1,79 @@ function run_kops_conformance() { - START=$SECONDS + START=$SECONDS + + export KUBECONFIG=~/.kube/config + + echo "=== Setting up test environment ===" + echo "Current directory: $(pwd)" + echo "KUBECONFIG path: $KUBECONFIG" + echo "K8S_VERSION: $K8S_VERSION" - export KUBECONFIG=~/.kube/config - kubectl apply -f "$TEST_CONFIG_PATH" + # Download e2e test binary + echo "=== Downloading e2e test binary ===" + wget -qO- https://dl.k8s.io/v$K8S_VERSION/kubernetes-test-linux-amd64.tar.gz | tar -zxvf - --strip-components=3 -C /tmp kubernetes/test/bin/e2e.test + + # Apply CNI config and wait for daemonset + echo "=== Applying CNI configuration ===" + kubectl apply -f "$TEST_CONFIG_PATH" + echo "Waiting for aws-node daemonset to be ready..." + sleep 5 + while [[ $(kubectl describe ds aws-node -n=kube-system | grep "Available Pods: 0") ]]; do sleep 5 - while [[ $(kubectl describe ds aws-node -n=kube-system | grep "Available Pods: 0") ]] - do - sleep 5 - echo "Waiting for daemonset update" - done - echo "Updated!" + echo "Still waiting for daemonset update..." + kubectl get ds aws-node -n kube-system + done + echo "CNI DaemonSet is ready!" + + # Show cluster state before tests + echo "=== Cluster State Before Tests ===" + echo "Nodes:" + kubectl get nodes -o wide + echo "Pods in kube-system:" + kubectl get pods -n kube-system + echo "CNI DaemonSet status:" + kubectl describe ds aws-node -n=kube-system + + # Run the focused set of tests with detailed logging + TEST_START=$SECONDS + set -o pipefail # Ensure we catch test failures + + /tmp/e2e.test --ginkgo.focus="Conformance" --ginkgo.timeout=120m --kubeconfig=$KUBECONFIG --ginkgo.v --ginkgo.trace --ginkgo.flake-attempts 8 \ + --ginkgo.skip="(works for CRD with validation schema)|(ServiceAccountIssuerDiscovery should support OIDC discovery of service account issuer)|(should support remote command execution over websockets)|(should support retrieving logs from the container over websockets)|(Basic StatefulSet functionality [StatefulSetBasic])|\[Slow\]|\[Serial\]" + + /tmp/e2e.test --ginkgo.focus="\[Serial\].*Conformance" --ginkgo.timeout=120m --kubeconfig=$KUBECONFIG --ginkgo.v --ginkgo.trace --ginkgo.flake-attempts 8 \ + --ginkgo.skip="(ServiceAccountIssuerDiscovery should support OIDC discovery of service account issuer)|(should support remote command execution over websockets)|(should support retrieving logs from the container over websockets)|\[Slow\]" + echo "Kops conformance tests ran successfully!" + + TEST_EXIT_CODE=$? + TEST_DURATION=$((SECONDS - TEST_START)) - wget -qO- https://dl.k8s.io/v$K8S_VERSION/kubernetes-test-linux-amd64.tar.gz | tar -zxvf - --strip-components=3 -C /tmp kubernetes/test/bin/e2e.test + echo "=== Test Results ===" + echo "Test duration: $TEST_DURATION seconds" + echo "Exit code: $TEST_EXIT_CODE" - /tmp/e2e.test --ginkgo.focus="Conformance" --ginkgo.timeout 120m --kubeconfig=$KUBECONFIG --ginkgo.v --ginkgo.fail-fast --ginkgo.flake-attempts 2 \ - --ginkgo.skip="(works for CRD with validation schema)|(ServiceAccountIssuerDiscovery should support OIDC discovery of service account issuer)|(should support remote command execution over websockets)|(should support retrieving logs from the container over websockets)|(Basic StatefulSet functionality [StatefulSetBasic])|\[Slow\]|\[Serial\]" + # Show cluster state after tests + echo "=== Cluster State After Tests ===" + echo "Nodes:" + kubectl get nodes -o wide + echo "Pods in kube-system:" + kubectl get pods -n kube-system + echo "CNI DaemonSet status:" + kubectl describe ds aws-node -n=kube-system - /tmp/e2e.test --ginkgo.focus="\[Serial\].*Conformance" --kubeconfig=$KUBECONFIG --ginkgo.v --ginkgo.fail-fast --ginkgo.flake-attempts 2 \ - --ginkgo.skip="(ServiceAccountIssuerDiscovery should support OIDC discovery of service account issuer)|(should support remote command execution over websockets)|(should support retrieving logs from the container over websockets)|\[Slow\]" - echo "Kops conformance tests ran successfully!" + KOPS_TEST_DURATION=$((SECONDS - START)) + echo "=== Test Run Complete ===" + echo "TIMELINE: KOPS tests took $KOPS_TEST_DURATION seconds" - KOPS_TEST_DURATION=$((SECONDS - START)) - echo "TIMELINE: KOPS tests took $KOPS_TEST_DURATION seconds." + # Workaround to avoid ENI leakage during cluster deletion + # See: https://github.com/aws/amazon-vpc-cni-k8s/issues/1223 + echo "Waiting for 240 seconds to avoid ENI leakage..." + sleep 240 - sleep 240 #Workaround to avoid ENI leakage during cluster deletion: https://github.com/aws/amazon-vpc-cni-k8s/issues/1223 + # Exit with the test exit code + return $TEST_EXIT_CODE } -function build_and_push_image(){ +function build_and_push_image() { command=$1 args=$2 START=$SECONDS From e04e55952223279b7b505b41514e167c72e12160 Mon Sep 17 00:00:00 2001 From: Todd Neal Date: Sun, 8 Dec 2024 12:41:59 -0600 Subject: [PATCH 13/14] run make generate-limits to update the max pods file (#3141) --- misc/eni-max-pods.txt | 24 +- pkg/vpc/vpc_ip_resource_limit.go | 486 +++++++++++++++++++++++++++---- 2 files changed, 450 insertions(+), 60 deletions(-) diff --git a/misc/eni-max-pods.txt b/misc/eni-max-pods.txt index 92a8fcbcfe..a0cec0f5c2 100644 --- a/misc/eni-max-pods.txt +++ b/misc/eni-max-pods.txt @@ -256,10 +256,6 @@ dl2q.24xlarge 737 f1.16xlarge 394 f1.2xlarge 58 f1.4xlarge 234 -g3.16xlarge 737 -g3.4xlarge 234 -g3.8xlarge 234 -g3s.xlarge 58 g4ad.16xlarge 234 g4ad.2xlarge 8 g4ad.4xlarge 29 @@ -353,6 +349,24 @@ i4i.8xlarge 234 i4i.large 29 i4i.metal 737 i4i.xlarge 58 +i7ie.12xlarge 394 +i7ie.18xlarge 737 +i7ie.24xlarge 737 +i7ie.2xlarge 58 +i7ie.3xlarge 58 +i7ie.48xlarge 737 +i7ie.6xlarge 234 +i7ie.large 29 +i7ie.xlarge 58 +i8g.12xlarge 234 +i8g.16xlarge 737 +i8g.24xlarge 737 +i8g.2xlarge 58 +i8g.4xlarge 234 +i8g.8xlarge 234 +i8g.large 29 +i8g.metal-24xl 737 +i8g.xlarge 58 im4gn.16xlarge 737 im4gn.2xlarge 58 im4gn.4xlarge 234 @@ -592,6 +606,7 @@ p4d.24xlarge 737 p4de.24xlarge 737 p5.48xlarge 100 p5e.48xlarge 100 +p5en.48xlarge 198 r3.2xlarge 58 r3.4xlarge 234 r3.8xlarge 234 @@ -828,6 +843,7 @@ t4g.xlarge 58 trn1.2xlarge 58 trn1.32xlarge 247 trn1n.32xlarge 247 +trn2.48xlarge 100 u-12tb1.112xlarge 737 u-12tb1.metal 147 u-18tb1.112xlarge 737 diff --git a/pkg/vpc/vpc_ip_resource_limit.go b/pkg/vpc/vpc_ip_resource_limit.go index 86a56659fc..42f2e0cc3f 100644 --- a/pkg/vpc/vpc_ip_resource_limit.go +++ b/pkg/vpc/vpc_ip_resource_limit.go @@ -3060,62 +3060,6 @@ var instanceNetworkingLimits = map[string]InstanceTypeLimits{ HypervisorType: "xen", IsBareMetal: false, }, - "g3.16xlarge": { - ENILimit: 15, - IPv4Limit: 50, - DefaultNetworkCardIndex: 0, - NetworkCards: []NetworkCard{ - { - MaximumNetworkInterfaces: 15, - NetworkCardIndex: 0, - }, - - }, - HypervisorType: "xen", - IsBareMetal: false, - }, - "g3.4xlarge": { - ENILimit: 8, - IPv4Limit: 30, - DefaultNetworkCardIndex: 0, - NetworkCards: []NetworkCard{ - { - MaximumNetworkInterfaces: 8, - NetworkCardIndex: 0, - }, - - }, - HypervisorType: "xen", - IsBareMetal: false, - }, - "g3.8xlarge": { - ENILimit: 8, - IPv4Limit: 30, - DefaultNetworkCardIndex: 0, - NetworkCards: []NetworkCard{ - { - MaximumNetworkInterfaces: 8, - NetworkCardIndex: 0, - }, - - }, - HypervisorType: "xen", - IsBareMetal: false, - }, - "g3s.xlarge": { - ENILimit: 4, - IPv4Limit: 15, - DefaultNetworkCardIndex: 0, - NetworkCards: []NetworkCard{ - { - MaximumNetworkInterfaces: 4, - NetworkCardIndex: 0, - }, - - }, - HypervisorType: "xen", - IsBareMetal: false, - }, "g4ad.16xlarge": { ENILimit: 8, IPv4Limit: 30, @@ -4458,6 +4402,258 @@ var instanceNetworkingLimits = map[string]InstanceTypeLimits{ HypervisorType: "nitro", IsBareMetal: false, }, + "i7ie.12xlarge": { + ENILimit: 8, + IPv4Limit: 50, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 8, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i7ie.18xlarge": { + ENILimit: 15, + IPv4Limit: 50, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 15, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i7ie.24xlarge": { + ENILimit: 15, + IPv4Limit: 50, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 15, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i7ie.2xlarge": { + ENILimit: 4, + IPv4Limit: 15, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i7ie.3xlarge": { + ENILimit: 4, + IPv4Limit: 15, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i7ie.48xlarge": { + ENILimit: 15, + IPv4Limit: 50, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 15, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i7ie.6xlarge": { + ENILimit: 8, + IPv4Limit: 30, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 8, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i7ie.large": { + ENILimit: 3, + IPv4Limit: 10, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 3, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i7ie.xlarge": { + ENILimit: 4, + IPv4Limit: 15, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i8g.12xlarge": { + ENILimit: 8, + IPv4Limit: 30, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 8, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i8g.16xlarge": { + ENILimit: 15, + IPv4Limit: 50, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 15, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i8g.24xlarge": { + ENILimit: 15, + IPv4Limit: 50, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 15, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i8g.2xlarge": { + ENILimit: 4, + IPv4Limit: 15, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i8g.4xlarge": { + ENILimit: 8, + IPv4Limit: 30, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 8, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i8g.8xlarge": { + ENILimit: 8, + IPv4Limit: 30, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 8, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i8g.large": { + ENILimit: 3, + IPv4Limit: 10, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 3, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, + "i8g.metal-24xl": { + ENILimit: 15, + IPv4Limit: 50, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 15, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "unknown", + IsBareMetal: true, + }, + "i8g.xlarge": { + ENILimit: 4, + IPv4Limit: 15, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 0, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, "im4gn.16xlarge": { ENILimit: 15, IPv4Limit: 50, @@ -8144,6 +8340,95 @@ var instanceNetworkingLimits = map[string]InstanceTypeLimits{ HypervisorType: "nitro", IsBareMetal: false, }, + "p5en.48xlarge": { + ENILimit: 4, + IPv4Limit: 50, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 0, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 1, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 2, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 3, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 4, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 5, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 6, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 7, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 8, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 9, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 10, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 11, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 12, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 13, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 14, + }, + + { + MaximumNetworkInterfaces: 4, + NetworkCardIndex: 15, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, "r3.2xlarge": { ENILimit: 4, IPv4Limit: 15, @@ -11578,6 +11863,95 @@ var instanceNetworkingLimits = map[string]InstanceTypeLimits{ HypervisorType: "nitro", IsBareMetal: false, }, + "trn2.48xlarge": { + ENILimit: 2, + IPv4Limit: 50, + DefaultNetworkCardIndex: 0, + NetworkCards: []NetworkCard{ + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 0, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 1, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 2, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 3, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 4, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 5, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 6, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 7, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 8, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 9, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 10, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 11, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 12, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 13, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 14, + }, + + { + MaximumNetworkInterfaces: 2, + NetworkCardIndex: 15, + }, + + }, + HypervisorType: "nitro", + IsBareMetal: false, + }, "u-12tb1.112xlarge": { ENILimit: 15, IPv4Limit: 50, From ba32db6b37eb731df679298667b9ebd40ddfc928 Mon Sep 17 00:00:00 2001 From: Senthil Kumaran Date: Tue, 10 Dec 2024 20:37:18 +0000 Subject: [PATCH 14/14] Fix the CHANGELOG.md duplication. --- CHANGELOG.md | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 815ef7352e..7f6e0bc2e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,24 +24,6 @@ ## v1.18.5 -### What's Changed - -* Improvement - Add byobject filter on nodes #2888 -* Improvement - Move KUBE_CONFIG_PATH variable to KUBECONFIG variable #3015 -* Improvement - Update Limits and Add New Instance Types. #3077 - -* Dependency - Bump google.golang.org/grpc from 1.62.0 to 1.67.1 #3056 -* Dependency - Bump github.com/prometheus/common from 0.53.0 to 0.60.0 #3057 -* Dependency - Bump golang.org/x/sys from 0.24.0 to 0.25.0 in /test/agent #3052 -* Dependency - update upstream cni to 1.5.1 #3065 -* Dependency - Bump k8s.io/client-go from 0.30.3 to 0.31.1 #3036 -* Dependency - Bump github.com/vishvananda/netlink from 1.2.1-beta.2 to 1.3.0 #3054 -* Docs - Document the limitation of SGP with kube-proxy IPVS mode. #3064 -* Bugfix - https://github.com/aws/amazon-vpc-cni-k8s/pull/3088 -* Bugfix - Fix the SCRIPT_DIR reference in integration tests. #3090 - -## v1.18.5 - ## What's Changed * Improvement - Filter out interfaces with no ip info by @Pavani-Panakanti in https://github.com/aws/amazon-vpc-cni-k8s/pull/3047