I am a quality assurance analyst working in cloud application testing. I would like to know more about the "worker...
role" and the "web role" for applications hosted in the Microsoft Azure platform. What do I need to know about how to test the worker role and the web role?
When working with the Microsoft Azure cloud platform, there are particular roles on which an application can be installed within their cloud services. These roles are either worker roles or web roles.
Before we get into these roles, it's important to understand a little bit about Microsoft's Azure Cloud Services. This service is a platform as a service (PaaS), which is not to be confused with infrastructure as a service. Azure Cloud Services allows customers to deploy, manage and run scalable applications in the cloud without having to worry about managing the servers themselves. Within this service, a server can be deployed as either a web role or a worker role.
Now it's time to decide which role these servers will use within the cloud environment. The web role is essentially a Microsoft server running Internet Information Services (IIS) for web applications. A worker role is a Microsoft server that is not running IIS. That's the most elementary description for these two install types.
Which role to use within an architecture depends on the application and how it's being utilized. If this is in quality assurance (QA), it's possible the system doesn't need the additional resources and can run the web role function and application on the same system. This isn't recommended for security, but is possible in QA environments.
If the front-end application needs its own application server, then you need to put the systems to support the web role in the worker role. All of the application servers run in the same cloud instances, but they are utilized with a different function. Since Azure Cloud Services is a PaaS offering, you have to select a mode in which to run it, and that decision should be based only on the application, not the operating system.
If you need more resources from a web or worker role, just add additional virtual machines and systems toward which to deploy the application. This will depend on what you're using the system for and how you want to manage security and functionality. QA might be a bit different than a production environment, and it's something you need to decided when deploying the application.
With these roles, you're not installing operating systems, you're installing applications. Taking advantage of the staging environment would also be something to review while in QA. It's here that you can decide within the staging environment if the application is working as expected before deploying it into production. This is a useful feature when reviewing quality assurance with application releases.
These roles are selected during install and can be adjusted or added during the process. Understanding them is important because you'll have to create your architecture around them in QA when deploying the application. It's easy to remember; web has IIS installed and workers run the application. Knowing this will hopefully give you a better understanding of the roles and when they're used.
Ask the Expert:
Want to ask Matt Pascucci a question about security? Submit your question now via email. (All questions are anonymous.)
Take a closer look at Microsoft Azure's security features for enterprises
Find out whether Microsoft Azure Container Service can help enterprise security
Learn how to use Microsoft Azure Security Center
Dig Deeper on Cloud Patch Management and Cloud Configuration Management
Related Q&A from Matthew Pascucci
While there are no set rules, there are some security recommendations when it comes to virtual machines running on one host. Learn the best practices... Continue Reading
Poisoned search results have spread the Zeus Panda banking Trojan throughout Google. Learn what this means, how search engine poisoning works and ... Continue Reading
A report from CrowdStrike highlights the growth of malware-less attacks using certain command-line tools. Learn how to handle these growing attacks ... Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.