-> If you are 100% sure that the processing is local, then it is because all the data is located on the particular impala daemon and thus no parallel execution is needed.
You should check the daemon's UI on the running queries you can see how the job is distributed across the cluster.
When the query runs, you say it's picking one Impala Daemon. Does picking up the Impala daemon can be managed ?
Impala Daemons Load Balancer is configured.
if you are not using loadbalancer, then when you run impala-shell -i <impalad_hostname> then query gets submitted to impalad running on "<impalad_hostname>" -- This host will act as the coordinator for the query.
Extra info that you might be interested, from CDH5.12 onwards, Impala supports dedicated coordinators, so you can setup impala daemon to only does coordinator job, not processing job.
But as Venkat mentioned, once they are behind LB, you will have no control.