Hi Tim,
Thanks for your reply. I'll explain our uses case below.
Our uses case is that we provide a service as a Linux VM so that user can SSH and VNC into that VM.
Each VM is run as a stateful set in GKE cluster.
For each user, we need to provide expose 2 ports via a service (1 for VNC and one for SSH).
We do not use LoadBalancer service, because the price of 1 forwarding rule is ~4-6 USD, that will increase our cost per user to 4-6USD/month.
Therefore, we use nodePort service. Because the port range is 30000-32767, it means 1 cluster can only serve about ~1400 users. Currently, our user base is ~500 so it might not be a problem, but it might be in the future.
My naive solution is to increase the port range so a cluster might be able to serve more users. If the number of users becomes big enough, maybe we can consider creating another cluster.
Thanks.