Kubernetes concept for traffic delegation or something similar?

4/20/2020

In general I want to migrate old services into kubernetes, but I'm not sure about the possibilities. The old services and the kubernetes cluster are running in two different data centers. I have old vm's/services that I'm migrating to be kubernetes-ready (creating docker-images, etc.), but this is an ongoing job and takes time.

My goal:

  • Seamless partial migration of all services and deploy them to kubernetes.
  • An ingress controller running in the cluster to add https (nginx,certbot).
  • Old services running outside of the "clusters operating data center" should be (anyhow in a secure way) addressable by the ingress controller.

My ideas:

  • Some kind of network bridge to route traffic to the other data center.
  • Configure (anyhow) Kubernetes Federation with multiple ingress controllers to archive this goal.

I don't know:

  • How to route or manage the traffic of the ingress controller (in k8s) to reach the correct data center.

Questions:

  • Are there already concepts for such problems?
  • How can I setup a secure bridge to the other data center?
  • Which approaches of ingress traffic routing would you suggest?

Thank you very much!

-- proKress
devops
kubernetes
networking
nginx-ingress

1 Answer

4/20/2020

You could connect the data centers via private network or public network with a VPN(IPsec Tunnel). Both the datacenter will have ingress exposed by a local loadbalancer. Finally you can have a Global DNS based load balancer to route traffic incrementally (10 %...20%.....100%) from loadbalancer of old data center to loadbalancer of new data center and perform the migration over a period of time.

-- Arghya Sadhu
Source: StackOverflow