Background: I have created private link to access RDS MySQL present in one AWS Account (Account-B) from another AWS Account (Account-A).
so, in AWS account (Account-B), I have created a target group with IP target type and added IP address of RDS MySQL Instance. and attached that target group with a network load balancer and endpoint services.
Issue: I am able to access the RDS MySQL from another AWS Account(Account-A), in the AWS Account-B target group, to check the target health it is sending requests to RDS MySQL instance and somehow the MySQL captures all the request as invalid and increasing count in the table performance_schema.host_cache for the fields 'COUNT_HANDSHAKE_ERRORS' and 'SUM_CONNECT_ERRORS'.
once the value in the field SUM_CONNECT_ERRORS reaches 100 then MySQL is blocking the request from Account-A.
My Observation: If a request to MySQL goes through python mysql.connector package then MySQL is not creating any issue, but if request goes to MySQL from Target group's health check process, then MySQL considered that as 'COUNT_HANDSHAKE_ERRORS'.
I am able to make the health check alone to point wrong port and work, but i am curious to find the root cause for this issue or is it AWS fault on the health check process? Kindly help me to resolve this issue.