Kong ingress controller does not use Services to route traffic to the pods. Instead, it uses the Endpoints API to bypass kube-proxy to allow Kong features like session affinity and custom load balancing algorithms. It also removes overhead such as conntrack entries for iptables DNAT.
From version 0.5.0 onwards, Kong Ingress Controller tags each entity that it manages inside Kong's database and only manages the entities that it creates. This means that if consumers and credentials are created dynamically, they won't be deleted by the Ingress Controller.