Continuing with myprevious article,
today I am going to share my one more experience with HPC. Nowadays, there are lots of links available on net, which tell, how to submit a job to Azure HPC Scheduler.
I also explored most of them, and found that almost all are talking about job submission from cloud premise(Front or Head node). But nowhere was it mentioned how to submit
a job from outside of cloud vicinity. I came across this issue, while working on one of my assignments.
After hitting my head, finally I found a way to do this. When we are talking about interaction between cloud and on-premise,
then first thing come into our mind is network. Here definitely, TCP won’t work. There are few transport schemes available in Azure HPC framework.
After exploring them, I found one as WebAPI and wow, that suits my requirement. I just used WebAPI as transport scheme, by modifying the name of the headnode to complete host name
(i.e., <headNodeName>.cloudapp.net) and get my issue resolved. Sample code is as:
string headNodeName = "myhpchost.cloudapp.net";
SessionStartInfo info=new SessionStartInfo(headNodeName, serviceName);
info.TransportScheme=TransportScheme.WebAPI;
Note: If everything (service name, head node, etc...) is configured properly, even then you are getting exception like,
‘Fail to get the cluster name’. Then just redeploy the HPC scheduler package and try it again. I know, this is painful but this is the only solution,
I came across. And believe me, this was just clicked for me.
Hope it will be helpful, for those who get stuck with a similar kind of issue.