I am currently writing my thesis about kubernetes and would like to know how the underlying network architecture is implemented.
As a basis for my work I installed kubernetes from scratch. For this I use three nodes and the master. As network model flannel is used. The virtual IP address 172.25.32.7/20 is used as entry point. This is coupled to a domain name and will be passed on to one of the other two nodes by keepalived if the node02 fails in order to maintain the entry point to the cloud network.
A service is now running on the kubernet cluster. This has been assigned the external IP address 172.25.32.7/20. This is the virtual IP address which is passed on by keepalived in case of a failure. Behind the service run several pods which are replicated by a replicaset to several nodes.
The question I am asking myself is, if a client calls the external IP address of the service, which bridges or VXLANs are used to route the network packet from the Node02 with the IP address 172.25.32.7/20 to the target container? What networks are there? What is the basic concept? I don't understand how packets are routed between nodes and their VXLAN.
As an overview I have made a small picture of my infrastructure. The service is stored with its cluster and virtual external IP address (keepalived) as well as the pods with IP addresses distributed among the nodes.