The Kubernetes Service doc shows the below explanation of how Node security groups are updated for each NLB Service.
Unfortunately, I have a VPC that has 3 different CIDRs. This means that for every port on a Service, 4 new rules are added to the Nodes' security group. There is a team that has a NLB Service with 5 ports, which means it results in 20 new rules added to the Nodes' security group. Other teams normally have 2 Ports, which results in 8 rules added to the Nodes' security group. The end result is we sometimes reach the max amount of 64 Rules allowed on one Security Group.
What are ideas to design around this so that teams can create as many NLB Services with as many ports as they want?
The EKS documentation says something about this.
If none of those options work for you, and you have also ALBs, you can minimize the rules for those ALB forcing them to use a specific security group instead of adding their rules to the node's security group. The annotation is
service.beta.kubernetes.io/aws-load-balancer-security-groups
. Doing so, you replace several rules for just one, leaving more space for NLBs rules.