kubectl port-forward って pod に対してだけしかできないと思っていたが Service に対してもできたみたい。
$ kubectl port-forward svc/my-service 5000
このとき、ポートフォワードを開始するタイミングでだけ k8s の名前解決が行われて、フォワードする先を決定する。 サービスに対してフォワードしているわけではないので、フォワードしたポートに何度リクエストを送ってもロードバランスされない。
Issue にもコメントがあるが port-forward はもともとがそういう用途ではなく 1 つの pod に対してフォワードするので、サービスに対して完全にフォワードするには pod がいなくなったときに再接続したりバランスするようにしたりなんだり、多くの機能追加になるので、別にしようやという話がある。
追記: Deployment も対象にできたのしらなかった、ドキュメントをみてくれ!!
Use Port Forwarding to Access Applications in a Cluster - Kubernetes