Ingress internal between VM and Namespace


I currently use Ingress-Nginx for external access via a domain name to access my applications.

I use namespaces to separate my clients, I’d like to make network policies to add a layer of security.

The problem is that I’m using VMs inside the subnet used by my workers. I would need my vm to access a particular port on a particular namespace. I don’t want one VM to access all namespaces.

My pods are currently using the ClusterIP type, so I was thinking of putting in a NodePort, except that I’m limited to accessing only one of my workers.

Any ideas?

Cluster information:

Kubernetes version: v1.24.16
Installation method:
Host OS: Rhel8
CNI and version: WeaveNET
CRI and version:
Version: 0.1.0
RuntimeName: containerd
RuntimeVersion: 1.6.21
RuntimeApiVersion: v1