-
Notifications
You must be signed in to change notification settings - Fork 71
Description
If the user use k8s Service to refer some pods and use ServiceExport to create lattice Target Group for it, if Pod IPs addresses change, The controller can NOT register new and deregister stale ip addresses in the VPC Lattice target group
How to reproduce it:
kubectl apply -f examples/inventory-ver2.yaml(which includes aDeploymentand aService)kubectl apply -f examples/inventory-ver2-export.yaml(which includes aServiceExport)- VPC Lattice target group and its targets created as expected
- do
kubectl get endpoints inventory-ver2, allendpointsIP addresses === target group's targets IP addresses - do
kubectl rollout restart deployment inventory-ver2to re-create all pods ofinventory-ver2 - do
kubectl get endpoints inventory-ver2, allendpointsIP addresses change to new ones - However, this IPs change did not reflect to target group's targets IPs change, that is controller bug
Pod IPs mutation for k8s Service could work (i.e., a route's targetref's Service created target group), because the controller Watches Endpoints here
However, don't work for ServiceExport ( i.e, a ServiceExport created target group) probably because the controller MISSES to Watches Endpoints at serviceexport_controller.go
That could be the root cause of this customer facing issue:
#476
Restarted the deployment 1. Looks like it is taking forever for the controller to detect the new IPs and update the target group with those IPs, as a result targets stay unhealthy.