You just used a load-balancer (an AWS one preferably) with a few machines behind it, optionally an auto-scale group. AWS has multi-region support built in.
Re: file descriptors -- that's not something handled by kubernetes, if anything you just have more layers now.
You don't need service discovery, you never did, Host your services at a private zone {service-name}.{env}.company.com zones which points to the loadbalancer.
You need monitoring and should use an observability solution for that, has 0 to do with kubernetes.
You're just taking a bunch of random entirely solved problems and for some reason suggesting kubernetes is somehow helpful for them.