- Does this mean that my roles run in separate virtual machines? If so what is the available RAM in each (small = 1,75 GB correct?)
This means that your solution has a Web Role and Worker Role project configured in it. The Web Role will provide you with IIS functionality (ASP .NET, WebAPI, etc.) and your Worker Role will work as a backend processor.
- Or do they run in same virtual machine?
Each Instance is its own virtual machine. All Web Role instances in your project will be identical and all Worker Role projects will be identical. Azure hosts a load balancer behind the scenes that will direct traffic properly to each.
- Whichever is the case: what does instances number mean?
The number of instances corresponds to how many active VMs you have for your Web and Worker Roles. Note that your Web Roles can have a different number of instances than your Worker Roles. You use instances to "scale out" your application when you have increased load.
- And finally if I increase instance number for each role will this influence pricing?
Yes, you will be charged for each instance you have deployed (whether it is running or not). Note, to get Azure's SLA, they require you to run two instances of each role.
For more information on pricing, check here.