diff --git a/CHANGELOG.md b/CHANGELOG.md index 1d31652861..362c33b548 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +# v1.5.5 + +* Bug fix - [Revert "Return delete success for pods that never got scheduled"](https://github.com/aws/amazon-vpc-cni-k8s/pull/672/commits/474479d7455f41c514ffcd58390a2a3ebae26de5) (#672, @mogren) +* Improvement - [Add support for r5dn instance family](https://github.com/aws/amazon-vpc-cni-k8s/pull/656) (#656, @mogren) +* Improvement - [Add support for m5n/m5dn/r5n instances](https://github.com/aws/amazon-vpc-cni-k8s/pull/657) (#657, @Jeffwan) +* Improvement - [Update cni-metrics-helper to v1.5.5](https://github.com/aws/amazon-vpc-cni-k8s/pull/672) (#672, @mogren) + + ## v1.5.4 * Improvement - [Add support for g4dn instance family](https://github.com/aws/amazon-vpc-cni-k8s/pull/621) (#621, @mogren) @@ -15,6 +23,7 @@ * Improvement - [Exit early if MAC address doesn't match](https://github.com/aws/amazon-vpc-cni-k8s/pull/582) (#582, @mogren) ## v1.5.2 + * Bug fix - [Fix formatting flag](https://github.com/aws/amazon-vpc-cni-k8s/pull/521) (#521, @uthark) * Bug fix - [Fix formatting issue](https://github.com/aws/amazon-vpc-cni-k8s/pull/524) (#524, @uthark) * Bug fix - [Detach ENI before deleting](https://github.com/aws/amazon-vpc-cni-k8s/pull/538) (#538, @uthark) diff --git a/config/v1.5/aws-k8s-cni-1.10.yaml b/config/v1.5/aws-k8s-cni-1.10.yaml index 24cb280bcb..d8eb58a1b6 100644 --- a/config/v1.5/aws-k8s-cni-1.10.yaml +++ b/config/v1.5/aws-k8s-cni-1.10.yaml @@ -69,7 +69,7 @@ spec: tolerations: - operator: Exists containers: - - image: 602401143452.dkr.ecr.us-west-2.amazonaws.com/amazon-k8s-cni:v1.5.4 + - image: 602401143452.dkr.ecr.us-west-2.amazonaws.com/amazon-k8s-cni:v1.5.5-rc1 imagePullPolicy: Always ports: - containerPort: 61678 diff --git a/config/v1.5/aws-k8s-cni.yaml b/config/v1.5/aws-k8s-cni.yaml index 402b115d71..c1c9b40e72 100644 --- a/config/v1.5/aws-k8s-cni.yaml +++ b/config/v1.5/aws-k8s-cni.yaml @@ -81,20 +81,12 @@ spec: tolerations: - operator: Exists containers: - - image: 602401143452.dkr.ecr.us-west-2.amazonaws.com/amazon-k8s-cni:v1.5.4 + - image: 602401143452.dkr.ecr.us-west-2.amazonaws.com/amazon-k8s-cni:v1.5.5-rc1 imagePullPolicy: Always ports: - containerPort: 61678 name: metrics name: aws-node - #readinessProbe: - # exec: - # command: ["/app/grpc_health_probe", "-addr=:50051"] - # initialDelaySeconds: 25 - #livenessProbe: - # exec: - # command: ["/app/grpc_health_probe", "-addr=:50051"] - # initialDelaySeconds: 25 env: - name: AWS_VPC_K8S_CNI_LOGLEVEL value: DEBUG diff --git a/config/v1.5/cni-metrics-helper.yaml b/config/v1.5/cni-metrics-helper.yaml index 3ffbca2a5e..a4334c0248 100644 --- a/config/v1.5/cni-metrics-helper.yaml +++ b/config/v1.5/cni-metrics-helper.yaml @@ -77,7 +77,7 @@ spec: spec: serviceAccountName: cni-metrics-helper containers: - - image: 602401143452.dkr.ecr.us-west-2.amazonaws.com/cni-metrics-helper:v1.5.0 + - image: 602401143452.dkr.ecr.us-west-2.amazonaws.com/cni-metrics-helper:v1.5.5-rc1 imagePullPolicy: Always name: cni-metrics-helper env: diff --git a/ipamd/rpc_handler.go b/ipamd/rpc_handler.go index 6ab997a69d..1afa7c2f13 100644 --- a/ipamd/rpc_handler.go +++ b/ipamd/rpc_handler.go @@ -93,14 +93,7 @@ func (s *server) DelNetwork(ctx context.Context, in *pb.DelNetworkRequest) (*pb. } log.Infof("Send DelNetworkReply: IPv4Addr %s, DeviceNumber: %d, err: %v", ip, deviceNumber, err) - // Plugins should generally complete a DEL action without error even if some resources are missing. For example, - // an IPAM plugin should generally release an IP allocation and return success even if the container network - // namespace no longer exists, unless that network namespace is critical for IPAM management - success := true - if err != nil && err != datastore.ErrUnknownPod { - success = false - } - return &pb.DelNetworkReply{Success: success, IPv4Addr: ip, DeviceNumber: int32(deviceNumber)}, nil + return &pb.DelNetworkReply{Success: err == nil, IPv4Addr: ip, DeviceNumber: int32(deviceNumber)}, nil } // RunRPCHandler handles request from gRPC diff --git a/pkg/awsutils/vpc_ip_resource_limit.go b/pkg/awsutils/vpc_ip_resource_limit.go index 9b71efc025..1bb5582a0c 100644 --- a/pkg/awsutils/vpc_ip_resource_limit.go +++ b/pkg/awsutils/vpc_ip_resource_limit.go @@ -41,6 +41,7 @@ var InstanceENIsAvailable = map[string]int{ "c5.12xlarge": 8, "c5.18xlarge": 15, "c5.24xlarge": 15, + "c5.metal": 15, "c5d.large": 3, "c5d.xlarge": 4, "c5d.2xlarge": 4, @@ -123,6 +124,7 @@ var InstanceENIsAvailable = map[string]int{ "m5.12xlarge": 8, "m5.16xlarge": 15, "m5.24xlarge": 15, + "m5.metal": 15, "m5a.large": 3, "m5a.xlarge": 4, "m5a.2xlarge": 4, @@ -145,6 +147,23 @@ var InstanceENIsAvailable = map[string]int{ "m5d.12xlarge": 8, "m5d.16xlarge": 15, "m5d.24xlarge": 15, + "m5d.metal": 15, + "m5dn.large": 3, + "m5dn.xlarge": 4, + "m5dn.2xlarge": 4, + "m5dn.4xlarge": 8, + "m5dn.8xlarge": 8, + "m5dn.12xlarge": 8, + "m5dn.16xlarge": 15, + "m5dn.24xlarge": 15, + "m5n.large": 3, + "m5n.xlarge": 4, + "m5n.2xlarge": 4, + "m5n.4xlarge": 8, + "m5n.8xlarge": 8, + "m5n.12xlarge": 8, + "m5n.16xlarge": 15, + "m5n.24xlarge": 15, "p2.xlarge": 4, "p2.8xlarge": 8, "p2.16xlarge": 8, @@ -171,6 +190,7 @@ var InstanceENIsAvailable = map[string]int{ "r5.12xlarge": 8, "r5.16xlarge": 15, "r5.24xlarge": 15, + "r5.metal": 15, "r5a.large": 3, "r5a.xlarge": 4, "r5a.2xlarge": 4, @@ -193,6 +213,23 @@ var InstanceENIsAvailable = map[string]int{ "r5d.12xlarge": 8, "r5d.16xlarge": 15, "r5d.24xlarge": 15, + "r5d.metal": 15, + "r5dn.large": 3, + "r5dn.xlarge": 4, + "r5dn.2xlarge": 4, + "r5dn.4xlarge": 8, + "r5dn.8xlarge": 8, + "r5dn.12xlarge": 8, + "r5dn.16xlarge": 15, + "r5dn.24xlarge": 15, + "r5n.large": 3, + "r5n.xlarge": 4, + "r5n.2xlarge": 4, + "r5n.4xlarge": 8, + "r5n.8xlarge": 8, + "r5n.12xlarge": 8, + "r5n.16xlarge": 15, + "r5n.24xlarge": 15, "t1.micro": 2, "t2.nano": 2, "t2.micro": 2, @@ -232,6 +269,7 @@ var InstanceENIsAvailable = map[string]int{ "z1d.3xlarge": 8, "z1d.6xlarge": 8, "z1d.12xlarge": 15, + "z1d.metal": 15, } // InstanceIPsAvailable contains a mapping of instance types to the number of IPs per ENI @@ -262,6 +300,7 @@ var InstanceIPsAvailable = map[string]int{ "c5.12xlarge": 30, "c5.18xlarge": 50, "c5.24xlarge": 50, + "c5.metal": 50, "c5d.large": 10, "c5d.xlarge": 15, "c5d.2xlarge": 15, @@ -311,7 +350,7 @@ var InstanceIPsAvailable = map[string]int{ "i3.4xlarge": 30, "i3.8xlarge": 30, "i3.16xlarge": 31, - "i3.metal": 31, + "i3.metal": 50, "i3en.large": 10, "i3en.xlarge": 15, "i3en.2xlarge": 15, @@ -344,6 +383,7 @@ var InstanceIPsAvailable = map[string]int{ "m5.12xlarge": 30, "m5.16xlarge": 50, "m5.24xlarge": 50, + "m5.metal": 50, "m5a.large": 10, "m5a.xlarge": 15, "m5a.2xlarge": 15, @@ -366,6 +406,23 @@ var InstanceIPsAvailable = map[string]int{ "m5d.12xlarge": 30, "m5d.16xlarge": 50, "m5d.24xlarge": 50, + "m5dn.large": 10, + "m5dn.xlarge": 15, + "m5dn.2xlarge": 15, + "m5dn.4xlarge": 30, + "m5dn.8xlarge": 30, + "m5dn.12xlarge": 30, + "m5dn.16xlarge": 50, + "m5dn.24xlarge": 50, + "m5n.large": 10, + "m5n.xlarge": 15, + "m5n.2xlarge": 15, + "m5n.4xlarge": 30, + "m5n.8xlarge": 30, + "m5n.12xlarge": 30, + "m5n.16xlarge": 50, + "m5n.24xlarge": 50, + "m5d.metal": 50, "p2.xlarge": 15, "p2.8xlarge": 30, "p2.16xlarge": 30, @@ -392,6 +449,7 @@ var InstanceIPsAvailable = map[string]int{ "r5.12xlarge": 30, "r5.16xlarge": 50, "r5.24xlarge": 50, + "r5.metal": 50, "r5a.large": 10, "r5a.xlarge": 15, "r5a.2xlarge": 15, @@ -414,6 +472,23 @@ var InstanceIPsAvailable = map[string]int{ "r5d.12xlarge": 30, "r5d.16xlarge": 50, "r5d.24xlarge": 50, + "r5d.metal": 50, + "r5dn.large": 10, + "r5dn.xlarge": 15, + "r5dn.2xlarge": 15, + "r5dn.4xlarge": 30, + "r5dn.8xlarge": 30, + "r5dn.12xlarge": 30, + "r5dn.16xlarge": 50, + "r5dn.24xlarge": 50, + "r5n.large": 10, + "r5n.xlarge": 15, + "r5n.2xlarge": 15, + "r5n.4xlarge": 30, + "r5n.8xlarge": 30, + "r5n.12xlarge": 30, + "r5n.16xlarge": 50, + "r5n.24xlarge": 50, "t1.micro": 2, "t2.nano": 2, "t2.micro": 2, @@ -453,4 +528,5 @@ var InstanceIPsAvailable = map[string]int{ "z1d.3xlarge": 30, "z1d.6xlarge": 30, "z1d.12xlarge": 50, + "z1d.metal": 50, }