Regarding Istio-gateway service deployment

I had deployed Istio-gateway separately through helm charts on EKS Cluster and the deployment is successful. But the SVC type Loadbalancer got created on Private Subnet instead of Public Subnet. I had re-deployed the deployment by adding “Internet-facing” annotations to the service yaml. But still LoadBalancer got created on Private-subnet.

How can i alter the deployment so that SVC type LoadBalancer will get created on Public Subnet to access the web-application.

Do we have any other way to access the application even when it got created on PrivateSubnet ( Without another LB/Ingress ahead of the Gateway)