The problem is, whenever i am creating an instance, the space is not being taken from the external storage attached to the blade. But is being taken from the controller node's local storage. Don't know how to map the storage to consider external storage.

If you use LVM as Cinder backend, the LVM volume is on the host where cinder-volume runs. It may well be on the controller in your case. On the compute node, you should see the corresponding iscsi LUN. There are no mount points involved.

This is actually related to the question. I am able to successfully deploy an instance of smaller size where the space is considered from the controller node's "/" storage. But an instance of larger size(larger than / size of controller node), it fails as said in the question.

The instance boots from a volume. If the volume service is implemented on the controller, and you use the LVM backend, it's normal that storage is allocated on the controller. If you want storage to be on the compute node, don't boot from a volume.

If you expect storage to be on some external disk array, and it is allocated in the controller's filesystem instead, your volume driver or LVM is misconfigured. In this case, check cinder.conf and the output of pvs, vgs and lvs (or share it here).