Question

I have the following issue.

I have created the following cloudservice setup.

Azureproject
  Roles
    AruzeWebRole
    AzureWorkerRole

The webrole has two small instances, the workerrole one extrasmall.

When i deploy this to our azure environment, i see correctly three instances:

Name                   Status       Role               Size
---------------------------------------------------------------------
AzureWorkerRole_IN_0   Running      AzureWorkerRole    Extra Small
AruzeWebRole_IN_0      Running      AruzeWebRole       Small
AruzeWebRole_IN_1      Running      AruzeWebRole       Small

Everything works fine. But when i open a RDP connection to my two web-instances, and a third rdp connection to the workerrole-instance, i get kicked out of one of the web-instance. When i get a closer look, when opening the RDP session to the workerrole its just creating an RDP to a Webrole instance.

After a redeploy it is possible that i gt oin the other web-instance.

If i change the size of the workerrole from XS to M, it still opens the RDP to one of my webroles.

I'm not sure what I'm doing wrong. Is my workerrole realy deployed on one of my webrole instances, or is Azure just fooling arround with me.

If anyone had a similar situation, or some good advice to check this out. That would be nice.

Thanks!

Was it helpful?

Solution

I can say it's kind strange behaviour. I've got approximately the same configuration and it works just fine. Just a hint to think about.

The way RDP works in Azure is: there is one public ip or yourapplication.cloudapp.net endpoint. All your instances are behind the load balancer. So that to be able to RDP any of your instances, there should be such rows in the serviceDefinition file.

<Imports>
   <Import moduleName="RemoteAccess" />
   <Import moduleName="RemoteForwarder" />
</Imports>

In your case those rows are under your webrole instance. That means, when you try to connect to yourapplication.cloudapp.net endpoint and RemoreForwarder forwards you to a specific instance based on the information which is stored in the RDP connection file. So that to check this. Go to the azure portal and download rdp connection file for your webrole instance and for your workerrole instance. Open those with notepad and see yourself: the same endpoint and a section which says to the remoteforwader to which instance to connect.

And one thing I forgot to tell you. If you want to connect to your instances manually(not using the RDP connection file from azure portal), means that you omit the instance cookie, most likely you will be connected to the one of your webrole instances, probably to instance 0.

OTHER TIPS

Why would you RDP to the web role and then RDP to the worker role from within the web role? Just RDP directly to the worker role from your local machine. From the portal you can pick the worker role instance from the Instances list and select Connect.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top