Question 1: What is Cloud Computing?
Cloud computing is internet-based computing whereby shared resources, software, and information are provided to computers and other devices on-demand, like the electricity grid.
Cloud computing is a culmination of numerous attempts at large-scale computing with seamless access to virtually limitless resources.
Cloud Computing = Software as a Service + Platform as a Service + Infrastructure as a Service.
A number of characteristics define cloud data, applications services, and infrastructure:
- Remotely hosted: Services or data are hosted on a remote infrastructure.
- Ubiquitous: Services or data are available from anywhere.
- Commodified: The result is a utility computing model similar to traditional utilities, like gas and electricity; you pay for what you need!
Cloud computing can be categorized into three parts:
- Platform as a Service (PaaS)
- Infrastructure as a Service (IaaS)
- Software as a Service (SaaS)
For more details go to the following link:
Question 2: What are the components of Cloud Computing?
Components in a cloud refer to the platforms, like front end, back end, and cloud-based delivery and the network used. All together it forms an architecture for cloud computing. With the main components like SAAS, PAAS and IAAS there are 11 more major categories in cloud computing that are:
- Storage-as-a-Service: This is the component where we can use or request storage. It is also called disk space on demand.
- Database-as-a-Service: This component acts as a live database from remote.
- Information-as-a-Service: Information that can be accessed remotely from anywhere is called Information-as-a-Service.
- Process-as-a-Service: This component combines various resources such as data and services. This happens either hosted within the same cloud computing resource or remote.
- Application-as-a-Service: Application-as-a-Service (also known as SAAS) is the complete application built ready for use by the client.
- Platform-as-a-Service: This is the component where the app is being developed and the database is being created, implemented, stored and tested.
- Integration-as-a-Service: Integration-as-a-Service deals with the components of an application that has been built but must be integrated with other applications.
- Security-as-a-Service: This is the main component many customers require. There are three-dimensional securities found in cloud platforms.
- Management-as-a-service: This is a component that is mainly useful for management of the clouds, like resource utilization, virtualization and server up and down time management.
- Testing-as-a-Service: Testing-as-a-Service refers to the testing of the applications that are hosted remotely.
- Infrastructure-as-a-Service: This is called as nearly as possible the taking of all the hardware, software, servers and networking that is completely virtual.
For more details visit the following link:
Question 3: What is the Service Model in Cloud Computing?
This is the service model on which you will host your application(s), for example IaaS, PaaS or SaaS. Each of these service models requires various levels of support and responsibilities once a system is deployed to the platform. To resolve the future challenges that you might encounter you need to understand the models carefully. Other than the service model, the second, you need to decide whether you want a Private or On-Premise cloud, or you want your application to be deployed on a Public Cloud.
Every service model offers you some kind of resource required to operate the most web-enabled systems imaginable.
For more details visit the following link:
Question 4: What are the kind of cloud storage and why is cloud computing is so popular?
Data is centrally stored in the cloud and available across the internet. There are various storage options available or we can classify them broadly in the following three categories:
Public Cloud
In this model a service provider makes resources, such as application and storage, available to the general public over the internet. Public cloud services may be free or offered on a pay-per-usage model.
Private Cloud
A private cloud provides more control over the company's data and under the control of the company's IT department.
Hybrid Cloud
A hybrid cloud is a combination of public cloud storage and private cloud storage, where some critical data resides in the enterprise's private cloud and other data is stored and accessible from a public cloud storage provider.
Benefits of a cloud:
- Lower costs, “Pay as you use”
- Software updates
- Backups
- Data hosted centrally
- Scalability
- Fail over
- Monitoring services
- Data storage
There are many reasons why cloud computing is so widely popular:
- Reduction of costs
- Universal access
- Software updates
- Scalability
- Flexibility
For more details visit the following on link:
Question 5: What is the Windows Azure Platform?
The Windows
Azure Platform lays the foundation for running applications and keeping data on the cloud. It contains computer services, storage services and the fabric. Windows Azure affords a wide range of capabilities in the form of computing services to run applications, storage services and creating a framework that supports several applications, as well as host services and manage them centrally. This platform readily stipulates an internet infrastructure for deploying distributed applications and services since we can develop a cloud service in Visual Studio .NET and deploy it into the Azure cloud right from on-premise tools. The Azure platform is a group of three cloud technologies as in the following:
For more details visit the following link:
Question 6: What is Windows Azure and explain its services?
Windows Azure is created by Microsoft, it is a cloud computing infrastructure and platform. It is designed for working on the global network of Microsoft. It is for building, managing and deploying services and applications. Windows Azure supports various programming languages, tools, and frameworks. It can be included in both Microsoft specific and third party systems and software. It provides an infrastructure of services and platforms as services. It is also an open and flexible cloud platform that makes it easy to work on the global network. It helps us to quickly create, manage and deploy applications on the global network.
Features of Windows Azure
Windows Azure runs and stores the data on Microsoft datacenters. There are many features that are specified here:
- Websites allows the developers to build the sites using ASP.NET, PHP, etc and deploy these websites using FTP, Git etc.
- SQL Database, formally known as Azure database creates, extends and scales the application into the cloud using Microsoft SQL Server.
- This is Microsoft's platform as a service that supports the Multi-tier applications and automated deployment.
Windows Azure Services
There are various types of services that are provided by Windows Azure:
- Web Sites
- Cloud services
- Virtual Machine
- Data Management
SQL Database.
Tables.
- Business Analytics
SQL Reporting.
Data Marketplace.
For more details visit the following link:
Question 7: What are the roles available in Windows Azure?
Roles are an important concept in Windows Azure and learning them is the base for further programming. There are mainly three roles in Windows Azure.
- Web Role
- Worker Role
- VM Role
Web Role
It provides a web front-end solution. This is similar to an ASP.NET application. While under hosting Azure provides IIS and required services.
Worker Role
It provides a background service solution. This can be thought as a windows service application. We can use this role to run background operations like database management tasks, report generation, etc. It can run lengthy operations.
According to MSDN, the Web Role can be considered as a Worker role loaded with IIS. Similarly the worker role can be used to host other application platforms.
VM Role (Virtual Machine Role)
The Web Role and Worker Role are executed on virtual machines. The Virtual Machine Roles provides the user the ability to customize the virtual machine on which the web and worker roles are running. The VM role runs a virtual hard disk (VHD) image which can be created and uploaded by the user. Through the VM role the customers can run scheduled tasks and other windows services.
For more details visit the following link:
Question 8: What is Windows Azure Portal and also explain the Azure Fabric?
Windows Azure Portal:To run an application, a developer accesses the Windows Azure portal through her Web browser, signing in with a Windows Live ID. She then chooses whether to create a hosting account for running applications, a storage account for storing data, or both.
Once the developer has a hosting account, the developer can use a Windows Azure portal to submit applications to Windows Azure.
When the user sends a request to an application hosted on Azure (that can be passed by protocols like HTTP, HTTPS or TCP), the request will be received from the load balancer. The Load balancer balances the load across all the instances of the role (Web, Worker, and VM).
Azure Fabric
The Azure fabric is the main core concept over here. It provides a service called the Azure Fabric Controller. It is called as OS for the Azure. Because it handles/manages:
- All roles (computing) and resources.
- Deployment and activating services.
- Health monitoring for all services.
- Allocating, releasing of resources.
- Provisioning VM, terminating etc.
- Updating patches for installed OS on VM automatically.
So there would be better to have two instances of roles and also no need to worry about software updates for user.
For more details visit the following link:
Question 9: What are the three main components of Windows Azure Platform?
Windows Azure provides platform and infrastructure by providing a scalable and cost-effective computing, storage, and networking resources on demand.
Windows Azure has three main components in Azure: Compute, Storage and Fabric.
1. Windows Azure Compute
Windows Azure provides a hosting environment for managed code. It provides computation service through roles. Windows azure supports 3 types of roles:
- Web roles used for web application programming and supported by IIS7.
- Worker roles used for background processing of web roles.
- Virtual Machine (VM) roles used for migrating windows server applications to Windows azure in an easy way.
2. Windows Azure Storage
Windows azure provides storage in cloud. It provides 4 types of storage services:
- Queues for messaging between web roles and worker roles.
- Tables for storing structural data.
- BLOBs (Binary Large Objects) to store text, files or large data.
- Windows Azure Drives (VHD) to mount a page blob. These can be uploaded and downloaded via blobs.
3. Windows Azure AppFabric
AppFabric provides infrastructure services for developing, deploying and managing Windows azure application. It provides 5 services:
- Service bus
- Access
- Caching
- Integration
- Composite
For more details visit the following link:
Question 10: What are the differences between a public cloud and a private cloud?
Private clouds are those that are built exclusively for an individual enterprise. They allow the firm to host applications in the cloud, while addressing concerns regarding data security and control that is often lacking in a public cloud environment. It is also known as an internal or enterprise cloud and resides on the company's intranet or hosted data center where all of your data is protected behind a firewall.
Public Cloud
- Pay for whatever resource you need at whatever time period.
- These are provided commercially.
- Supports heavy workloads without disturbing any functionality.
- It is very cheap for the consumers, since the hardware, application and other costs are handled by the providers.
- There is no wasted resource because consumers are charged for what they use.
- Scalability is always met here.
Private Cloud
- It is owned by a specific private group for their own use of employed, partners and their own customers.
- Highly controlled and not accessible by anyone other than allowed.
- Security, governance and compliance is highly automated.
- Similarly, the features are like a Public Cloud irrespective of security and maintenance.
- The cost is very high.
For more details visit the following link:
Question 11: What do you understand about Hybrid Cloud? Explain in detail.
A hybrid cloud is a mixture of internal and external cloud services, a combination of a private cloud combined with the use of public cloud services. This type of cloud is most suitable when you want to keep the confidential data at your premise (private cloud) and consume the other services from a public cloud.
Pros of Hybrid Cloud
- Scalability
Usually the Private Cloud services will have a lesser scalability due to its security, cost and compliance whereas the Public Cloud has a high scalability and moving non-sensitive data from the private to the public will free up resources in the data centers in the Private Cloud and that increases a very high scalability for a Hybrid Cloud.
- Cost effective
Similarly the Public Cloud is very cost effective rather than Private Cloud and here the Hybrid Cloud provides cost effectiveness with the data and other sensitive operations secured.
- Security
Since there is a Private Cloud used; the data and sensitive operations are secured highly in the Hybrid Cloud.
- Flexibility
We can easilyove out m the non-sensitive data and manage large scalability using a Public Cloud service along with the Private Cloud. So with the availability of a large scalability using Public Cloud and security using Private Cloud an enterprise has a vast opportunity in developing for new needs.
Cons of Hybrid Cloud
- Infrastructure dependency
- Networking
- Security compliance
For more details visit the following link:
Question 12: What is Diagnostics in Windows Azure?
Windows Azure diagnostics provides facility to store diagnostics data. Some diagnostics data is stored in a table, while some is stored in a blob. For collecting diagnostics data, we must initialize the Windows Azure diagnostic monitor. The Windows Azure diagnostic monitor runs in Windows Azure and in the computer's emulator and collects diagnostic data for a role instance.
Following diagnostics data is stored in table storage:
Data Source |
Table name in Azure Storage |
Detail |
Windows Azure Logs |
WADLogsTable |
These are the application logs dumped from the application. |
Windows Azure Diagnostics Infrastructure Logs |
WADDiagnosticInfrastructureLogsTable |
These are the logs about running of diagnostics service. |
Windows Event logs |
WADWindowsEventLogsTable |
These are the logs generated on the instance where logs are running. |
Performance counters |
WADPerformanceCountersTable |
These are the performance matrices like memory utilization, processor utilization, response time etc. |
Following diagnostics data is stored in blob storage:
Data Source |
Container name in azure storage |
Detail |
IIS Logs |
wad-iis-logfiles |
These are the IIS logs generated by role instances. |
Failed Request Logs |
wad-iis-failedreqlogfiles |
These are the IIS failed requests logs generated by role instances. |
Crash Dumps |
wad-crash-dumps |
These are the logs generated on the application crash. |
For more details visit the following link:
Question 13: What is Azure Queues?
The main reason for using queues is to provide loose connectivity among various components. For example, we have two components of an application to exchange data. Here one of them is on-premise and one exists in the cloud. Here if we use a web service to exchange data we have the following issues:
- Both components should be online simultaneously; if one partner is down, then the communication will not work.
- It’s difficult to scale up if more work is present.
In Azure Queues you have a queue as mediator that connects the two components, so when the receiver is down, the sender can still insert messages into the queue, once a receiver comes online it can receive message from that queue. And for scale up we just need to add more receivers and your queue is processed in parallel.
The following are the drawbacks of using a queue:
- Queues has some charges, however these are minimal.
- Your queue is doing mediator work here. If your queue is down, devices will not able to communicate with each other.
For more details visit the following link:
Question 13: What is the difference between Windows Azure Queues and Windows Azure Service Bus Queues?
Windows Azure Queues
Windows Azure Queue Storage is a service for storing a large number of messages that can be accessed from anywhere using HTTP or HTTPS. A single message can be up to 64KB in size. So, a queue may contain millions of messages. It is basically a part of Windows Azure Storage and enabled with a REST based architecture.
Service Bus Queues
- Service Bus queues support brokered messaging communication.
- Queues provide First In, First Out (FIFO) message delivery, in other words messages are received and processed by the receivers in the order they were added to the queue.
- Each message is received and processed by only one message receiver.
For more details visit the following link:
Question 14: How can you create a Queue in storage account?
Queue is a one type of Azure Storage, where you can store your data as storage. Blobs are stored in container, Entity in table and Message in Queue.
Following are the key concepts in queue.
- FIFO implementation
- Messages are added to end of the Queue and processed from the front
- Queues provides a good way of Front end and Back end decoupling
In the real world example the user can queue a job through the web role (front end) and the job can be processed by a worker role (back end). This gives an opportunity to decouple the web role and worker role.
- Place a new label control on the aspx page and add the following code in the page load event.
- protected void Page_Load(object sender, EventArgs e)
- {
- StorageCredentialsAccountAndKey accountAndKey = newStorageCredentialsAccountAndKey("account", "key");
- CloudStorageAccount account = new CloudStorageAccount(accountAndKey, true);
- CloudQueueClient client = account.CreateCloudQueueClient();
- CloudQueue queue = client.GetQueueReference("workitems");
- queue.CreateIfNotExist();
- CloudQueueMessage message = new CloudQueueMessage("Test Work Item");
- queue.AddMessage(message);
-
- message = queue.GetMessage();
- if (message != null) Label1.Text = "Message in Queue: " + message.AsString;
- }
For more details visit the following link:
Question 15: What is a Storage keys?
Storage keys or Access Keys are used as an authentication mode for accessing the storage services account to manipulate information based on our requirements. In Windows Azure we have an option to provide a Primary Access Key and a Secondary Access Key, even though we will use a single access key to authenticate our application to the storage. The main reason to provide the secondary access key is to avoid downtime to the application. If we need to change the application access key by regenerating the access key it takes quite some time to take effect; this provides a downtime.
To avoid this type of situation, a secondary access key is provided so that if the primary needs to be changed or regenerated we can map the secondary temporarily to the storage and regenerate the primary. Let us see step by step of how to get the Access Keys using Windows Azure Management Portal.
For more details visit the following link:
Question 16: What is the concept of the table in Windows Azure?
Table is a one type of Azure Storage, where you can store your data as storage. Blobs are stored in container and Entity in table.
Following are the key concepts in table.
- Tables allow structure data storage
- There can be 0..n tables in a storage account
- Table store data as a collection of entities
- Entity have a primary key and properties as key value pair
For more details visit the following link:
Question 17: How to send messages to a Queue and how to receive messages from a Queue?
Send Messages to a Queue
The code below demonstrates how to create a QueueClient object for the "TestQueue" queue created above using the CreateFromConnectionString API call:
- string connectionString =
- CloudConfigurationManager.GetSetting("Microsoft.ServiceBus.ConnectionString");
- QueueClient Client =
- QueueClient.CreateFromConnectionString(connectionString, "TestQueue");
- Client.Send(new BrokeredMessage());
Messages sent to (and received from) Service Bus queues are instances of the BrokeredMessage class.BrokeredMessage objects have a set of standard properties (such as Label and TimeToLive), a dictionary that is used to hold custom application specific properties, and a body of arbitrary application data. An application can set the body of the message by passing any serializable object into the constructor of the BrokeredMessage, and the appropriate DataContractSerializer will then be used to serialize the object. Alternatively, a System.IO.Stream can be provided.
Receive Messages from a Queue
The easiest way to receive messages from a queue is to use a QueueClient object. These objects can work in two different modes: ReceiveAndDelete and PeekLock.
When using the ReceiveAndDelete mode, reception is a single-shot operation; that is, when the Service Bus receives a read request for a message in a queue, it marks the message as consumed, and returns it to the application.
The ReceiveAndDelete mode is the simplest model and works best for scenarios in which an application can tolerate not processing a message in the event of a failure. To understand this, consider a scenario in which the consumer issues the receive request and then crashes before processing it. Because the Service Bus will have marked the message as being consumed, when the application restarts and begins consuming messages again, it will have missed the message that was consumed prior to the crash.
This example creates an infinite loop and processes messages as they arrive in the "TestQueue":
- Client.Receive();
-
- while (true)
- {
- BrokeredMessage message = Client.Receive();
- if (message != null)
- {
- try
- {
- Console.WriteLine("Body: " + message.GetBody < string > ());
- Console.WriteLine("MessageID: " + message.MessageId);
- Console.WriteLine("Test Property: " + message.Properties["TestProperty"]);
-
- message.Complete();
- }
- catch (Exception)
- {
-
- message.Abandon();
- }
- }
- }
For more details visit the following link:
Question 18: What are the Storages in Windows Azure?
Windows Azure data storage enables users to store, access, analyze and protect their data while making it available from anywhere and at any time. Windows Azure provides various services from storing data in SQL databases in the cloud for analysis and reporting to meet the needs of your business. Windows Azure ensures data security with high throughput of application data in the cloud. Windows Azure typically offers the following three types of storage in the cloud atmosphere.
- BLOB: BLOBs offer a mechanism for storing large amounts of text or binary data, such as images, audio and visual files. It can scale up to 200 terabytes and can be accessed using REST APIs. We can move BLOB data as a single volume between private and public clouds using Windows Azure Drive.
- Table: Tables represent storage locations across machines for data that reside in the form of entities and properties on the cloud. Tables store large amounts of unstructured data that can be accessed either using REST APIs from within a service running in Windows Azure or directly over the Internet using HTTP/HTTPS.
- Queue: The sole objective of a Queue is to enable communication between Web and Worker Role instances. They aid in storing messages that may be accessed by a client. Web Role instances can initiate user requests that need to be processed in the background. On the other side a Worker Role observers the queue to process the request and respond back via queue to the Web Role instance.
For more details visit the following link:
Question 19: What is Federation in SQL Azure?
Federation is introduced in SQL Azure for scalability. Federation helps both administrators and developers to scale data. It helps administrators by making repartitioning and redistributing of data easier. It helps developers in the routing layer and sharding of data. It helps in routing without application downtime.
Federation does basic scaling of objects in a SQL Azure Database. Federations are the partitioned data. There can be multiple Federations within a database. And each Federation represents a different distribution scheme.
We create a Federation with a different distribution scheme and requirement. Student and Grades tables of a School Database may have a different distribution requirement so they are put into different Federations.
Each Federation object scales out data to many system managed nodes. A Federation object contains:
For more details visit the following link:
Question 20: What is SQL Azure Database?
SQL Azure database is simply a way to get connected in Cloud Services where we can store our database into Cloud. Microsoft SQL Services and Microsoft SQL Data Services are now known as Microsoft SQL Azure and SQL Azure Database. Microsoft Azure is the best way to use PAAS (Platform as a Service) where we can host multiple databases on the same Account.
Microsoft SQL Azure has the same feature of SQL Server, i.e. high availability, scalability and security in the core.
Microsoft Azure SQL Database have a feature, it automatically creates backups of every active database. Every hour a backup is taken and geo-replicated to enable the 1 hour recovery point objective (RPO) for Geo-Restore. Additionally, transaction log backups are taken every 5 minutes to enable Point in Time Restore.
For more details visit the following link:
Question 21: What are SQL Azure firewall rules?
SQL Azure firewall rules are provided to protect the data and to prevent access restrictions to the SQL Azure database. Firewall grants access to the originating IP's from which we are trying to access the database. In order to configure the firewall we need to configure a range of acceptable IP addresses upon which we try to connect to the SQL Azure server using the Management Portal or with the SQL Server Management Studio. Let us see the step by step process of adding and deleting rules as per our IP configurations.
All access to SQL azure is blocked by firewall.
By default Database created in SQL Azure is blocked by firewall for security reasons. Any attempt from external access or access from any azure application is blocked by firewall.
For more details visit the following link:
Question 22: What is Windows Azure Traffic Manager? What are its benefits?
Traffic Manager Name is itself self-explanatory. It allows users to control the distribution of user traffic of deployed Azure cloud services, Azure websites or any other endpoint. In this the distribution of traffic includes Azure cloud services, Azure web sites and other endpoints. There are 3 different load balancing methods provided by Azure. The Traffic Manager works by applying an intelligent routing policy engine to the Domain Name Service (DNS) queries on your domain names and maps the DNS routes to the appropriate instances of your applications.
Benefits of Azure Traffic Manager
- Increase Performance: Can increase performance of your application that includes faster page loading and better user experience. This applies to the serving of users with the hosted service closest to them.
- High Availability: You can use the Traffic Manager to improve application availability by enabling automatic customer traffic fail-over scenarios in the event of issues with one of your application instances.
- No Downtime Required for Upgrade / Maintenance: Once you have configured the Traffic Manager you don't need downtime for application maintenance, patch purgation or complete new package deployment.
- Easy to configure (Quick Setup): It's very easy to configure Azure Traffic Manager on Widows Azure portal. If you have already hosted your application on Windows Azure (a cloud service, Azure website) you can easily configure this Traffic Manager with a simple procedure (setting routing policy).
For more details visit the following link:
Question 22: What are the data synchronize services in Azure?
Sync Services is provided by Microsoft Azure where you can keep a SQL Azure database synchronized with another database. You can take a backup of a database from one region to another region. There is a simple procedure you need to follow to configure this service. If not a complete database then you can at least keep selected tables or selected rows of tables synchronized.
This service provides the following two ways to synchronize:
- Synchronize a SQL Azure database from one SQL Azure server to another SQL Azure server.
- Synchronize a SQL Azure Database from an Azure Server to a Local Server database.
For more details visit the following link:
Question 23: How can you manage SQL Azure security?
SQL Azure also has a security management system very similar to the SQL on-premises versions. It basically consists of the following:
- Logins: Server level.
- Users: Database level, mapped to server logins.
- Schemas: Database level, authorized/owned by a user or another schema.
- Roles: Database level, authorized/owned by a user or another role.
- Permissions: Database level, permission like SELECT, DELETE, ALTER and so on for objects/schemas granted to users/roles.
When you create a server in SQL Azure, it asks you to create a login at the same time. That login acts as the administrative login that has access to all the databases in that server. However, you might want to create other logins with less privilege. As of now, the SQL Azure portal doesn't have any UI to create these extra logins. So you'll need to resort to running T-SQL statements.
Note: All of the following procedures are done using the administrative login mentioned above.
Creating Logins
Login to the master database and run the following T-SQL statement.
- CREATE LOGIN MyServerLogin WITH password='My#Password123'
This statement creates a login ID in the server. This a a normal login ID that doesn't have access to any of the databases in that server. So if you try to login to the Azure server with this account (either from SQL Server Management Studio 2008 R2 - SSMS or from Azure Portal) you would get an error saying this user doesn't have access to the master database. So the next step is to map this login to the required databases, not necessarily to the master db.
For more details visit the following link:
Question 24: What are the different types of databases in SQL Azure?
In the SQL Azure there are two types of databases:
- Web Edition
- Business Edition
The Web Edition Relational Database includes:
- Up to 5 GB of a T-SQL based relational database*
- Self-managed DB, auto high availability and fault tolerance
- Supported by existing tools like Visual Studio, SSMS, SSIS, BCP
- Best suited for Web application, Departmental custom applications.
Business Edition DB includes:
- Up to 50 GB of T-SQL based relational database*
- Self-managed DB, auto high availability and fault tolerance
- Additional features in the future like auto-partition, CLR, fanouts etc
- Supported by existing tools like Visual Studio, SSMS, SSIS, BCP
- Best suited for Saas ISV applications, custom Web application, Departmental applications.
For more details visit the following link:
Question 25: What is TFS build system in Azure?
A Build is nothing but the output of a solution. In the case of Azure projects, you generally get the file with a .cspkg extension that means a Cloud Service Package is used for the deployment of your cloud services.
Build Servers
In layman's terms a build server acts as the machine where you put your deployment packages.
To use Team Foundation Build, you must have at least one build machine. This machine can be a physical machine or a virtual machine.
Build Controllers
Build Controllers are the element in the build system that accepts the build requests from any project inside the team project collection. Each build controller is dedicated to a single-team project collection. So there is a one-to-one relationship between a team project collection and a build controller.
Build Agents
Build agents are elements in the build system that does more processor-intensive work.
Build Definitions
A Build definition is nothing but the process that the build controller using to deploy your packages to a target site. Using Team Explorer you should be able to create a new build definition where you will need to associate the build controller and define process as well as trigger a point for the definition.
Once the build definition is in place, you will be able to queue new builds using it.
Typical Build System Topology
For more details visit the following link:
Question 26: What is the difference between IaaS and PaaS in Cloud?
Infrastructure as a Service (IaaS): is in effect much like building a set of services and virtual machines and networks in a Cloud as the user would On-Premises.
Platform as a Service ( PaaS): A Platform is a cloud that gives the user various frameworks, tools and services on the cloud and the user are building the application in the cloud leveraging these various tools, services and components within the application.
|
IaaS |
PaaS |
Granularity of Control of Virtual Machines |
The user can remote into virtual machine running in the cloud using IDP. The user has the same level of control as the user would with a virtual machine on-premises. This means the user can get into the registry, install custom software the user want to install on that virtual machine. |
The PaaS provider takes care of running the application. It means that the user doesn't get access to registry and neither can the user install custom software necessarily in that application or in the location where it runs.
PaaS providers provide the infrastructure and the platforms. |
Control over the environment configuration |
The user can choose a certain number of virtual cores, virtual CPUs, RAM, networking set up, how many different networks, virtual VPNs, separate subnets, extensions to on-premises networks and load-balancing across multiple VMs. |
PaaS can be thought of as the next step of IaaS where the configurations is also done for the user by the provider. |
Maintenance |
The user is responsible for the O/S, patching, firewall management, security, data, runtime, applications, middleware and everything that's running inside of the VM because the user is responsible for that virtual machine. The only difference is the location of the VM; instead of on-premise it is in the cloud. The user still gets to do all the configurations but the user is relieved of doing the physical hardware things. |
The provider is responsible for application/services on PaaS. The user is just managing the various services. |
Scalability |
The user is responsible for scalability. |
Scalability is the responsibility of the PaaS provider. |
Pricing |
Subscription Model. |
Subscription Model, but it includes the cost of hardware for the installation of PaaS. |
Both IaaS and PaaS help organizations to minimize operational costs and increase their productivity as they get faster time to market and require no up-front investments.
For more details visit the following link:
Question 27: What is the Azure App Service? What are the advantages of App Service over Mobile Service?
Azure App Service is a fully managed Platform as a Service (PaaS) offering for professional developers that brings a rich set of capabilities to web, mobile and integration scenarios. Mobile Apps in Azure App Service offer a highly scalable, globally available mobile application development platform for Enterprise Developers and System Integrators that brings a rich set of capabilities to mobile developers.
Advantages of App Service
- Simpler, easier and more cost effective offering for apps that include both web and mobile clients.
- New host features including Web Jobs, custom CNames, better monitoring.
- Turnkey integration with Office 365, Dynamics CRM, Salesforce, and other vital SaaS APIs.
- Support for Java and PHP backend code, in addition to Node.js and .NET.
- Turnkey integration with Traffic Manager.
- Connectivity to your on-premise resources and VPNs using VNet in addition to Hybrid Connections.
- Monitoring and troubleshooting for your app using NewRelic or AppInsights, as well as alerts.
- Richer spectrum of the underlying compute resources, e.g. VM sizes.
- Built-in auto scale, load balancing, and performance monitoring.
- Built-in staging, backup, roll-back, and testing-in-production capabilities.
For more details visit the following link:
Question 28: How can you demonstrate between Azure mobile service and Web API?
Web API: Web API is used only for that client who uses HTTP enabled services. There is a problem with Web API, if you want to create a Web API service, then you need knowledge of ASP.NET solution and you need to be familiar with .Net.
There are more benefits of Web API over Node.js. Web API uses HTTP request and process them using the HTTP verbs. Actually, Web API is fully REST service. As per my thinking Web API is better approach to create APIs.
Azure Mobile Services: Windows Azure Mobile Service is a tool that can integrated with the Windows Azure cloud. This tool will help you to connect a cloud backend to your Windows 8 application. The goal of the Windows Azure Mobile Service is to make Windows Azure the obvious choice for the Windows 8 Metro style application developer. Currently we can only use the Windows Azure Mobile Service in Metro style applications but in the near future the mobile service can also work with iOS, Android and Windows Phone.
Mobile services can only be run on demand or you can schedule the service when it will start and when it will stop.
To use Windows Azure Mobile Services, you need to use any Source Control where you can take the backup.
For more detail visit the following link:
Question 29: What is Google Cloud Platform?
Google Cloud Platform is a new way to use cloud computing platform in real time. It is developed by Google and offers every developer the chance to host their Web API’s and Cloud Storage and many more things on the same supporting infrastructure that is used by Google itself internally in their products, such as Google Search, Google Play Store, Gmail and YouTube. Also for every product by Google, Google Cloud Platform provides developer products to build application and a range of programs from simple websites to complex applications. Google use Load Balancer technique that allows distributing cloud data into multiple data centers all over the world. With the help of Google Cloud BigQuery we can execute billions of queries per second.
Google Cloud Platform is specially designed for enterprise solutions from Google for Work and provides a set of modular cloud-based services with a host of development tools, test, and deploy applications on Google's highly-scalable and reliable infrastructure for your web, mobile and backend solutions. For example:
- Hosting and computing
- Cloud storage
- BigData
- Services
For more details visit the following link:
Question 30: What is the VM (Role) and VM (Pass)?
VM Role: VM role is a kind of role in the Azure platform which helps to maintain service packs, patches, updates and applications already installed, to Windows Azure automatically.
We can use a VM Role in the case of:
- Long-Running Setup: If the application requires a long-running setup.
- Error-Prone Application: Application in which you expect more errors/risks while installing it.
VM (IaaS): These are literally VMs as we understood then from the On-Premise running in the Azure Microsoft Data Center.
Advantages of VM over VM role
- VM is durable.
- IaaS VMs is that you can take just about any on-premises application, whether it makes changes to the local file system or not (even if the OS is one of the supported Linux distributions) and deploy it to the cloud for a few cents per hour.
Disadvantages
- Provisioning time will be increased.
- Automatic OS/software updates will be there in the (IaaS) VM.
For more detail visit the following link:
Question 31: What is Virtual Machine in Azure?
Google Cloud Platform Compute Engine is Google's Infrastructure-as-a-Service (IaaS), which is used to run large-scale workloads on virtual machines hosted on Google's infrastructure. It is used by Google itself for their end user products, such as Google search, YouTube and for all products of Google. Allows you to choose a VM with a specific requirement of hardware configurations with a list of server operating systems and now it also allow Windows Server.
Azure Virtual Machines could be your choice if you want frequent modifications and changes in your web server environment. It provides you rich set of features; however, correctly configuring, securing and maintaining VMs require much more time and more IT expertise compared to Azure Cloud Services and Azure Websites. You will need to make more effort on frequent maintenance and update patches to manage the VM environment.
For more detail visit the following link:
Question 32: How to create a Virtual Machine in Azure?
Here are following steps to create a Virtual Machine in Cloud:
Step 1: Log in to your Azure management portal.
Step 2: Click New.
Step 3: Select "Compute" -> "Virtual Machine" -> "From Gallery".
Step 4: Select the Operating System that you would like to install on the VM. In this scenario we will install a Ubuntu server 13.04 because then it will be easy for me to continue with the later posts on creating a PHP app on our new VM.
Step 5: The next window will ask you about user details, VM RAM and number of cores and a name for the VM. Fill them in as you wish. I will use a password instead of a SSH key.
Step 6: Next window ask you about cloud configuration (DNS Setting) and Storage account and Region. Except for region leave the rest as it is unless you know what you are doing.
Step 7: Now we will need to create end points for us to access the VM. For now let's keep SSH access only.
Step 8: Then the VM will be created and will be running after a few minutes. You can see it in your Azure portal.
For more details visit the following link:
Question 33: What is Autoscaling in Azure?
Autoscaling Application Blocks can automatically scale the Windows Azure application based on the rules defined specifically for the application.
The Autoscaling Application Block supports two autoscaling mechanisms:
- Instance Autoscaling, where the block changes the number of role instances based on constraint and reactive rules.
- Throttling, where the application modifies its own behavior to change its resource utilization based on a set of reactive rules. For example switching off non-essential features, or gracefully degrading its UI.
So, there are two types of rules:
- Constraint rules: Constraint rules set the upper and lower bounds on the number of instances. For example, in the evening between 6:00 and 8:00, you need a minimum of 3 instances and a maximum of 7 instances, then use the constraint rule.
- Reactive rules: Reactive rules enable the number of role instances to change in response to unpredictable changes in demand. For example, if the workload increases then increase the number of role instances by 1. The reactive rules can use a variety of techniques like performance counters, or the Windows Azure queue length to monitor and control the application's workload. A reactive rule makes changes to the number of role instances only if a constraint rule applies at the same time. It is easy to create a default constraint rule that always applies.
For more details visit the following link:
Question 34: What is AWS Cloud Formation?
AWS Cloud Formation is a cloud builder service that helps you model and set up your Amazon Web Services resources so that you can spend less time managing those resources and more time focusing on your applications that run in AWS. For this you need to create a template that describes all the AWS resources that you want, like Amazon EC2 instances that you want, Amazon VPC and subnet details and so on. AWS CloudFormation takes care of provisioning and configuring those resources for you. You don't need to individually create and configure AWS resources and figure out what's dependent on what, AWS CloudFormation handles all of that.
AWS CloudFormation is available at no additional charge. You will be billed only the normal rates for the AWS resources like EC2, RDS, LB and so on that AWS CloudFormation creates and your application and resources use.
For more details visit the following link:
Question 35: What is profiling in Azure?
Profiling is nothing but a process of measuring the performance analysis of an application. It is usually done to ensure that the application is stable enough and can sustain heavy traffic.
Visual Studio provides us various tools to do it by gathering the performance data from the application that also helps in the troubleshooting issues.
Once the profiling wizard is run, it establishes the performance session and collects the sampling data, then generates report files that can be opened and analyzed in Visual Studio.
The profiling reports can help us to:
- Determine the longest running methods within the application.
- Measure the execution time of each method in the call stack.
- Evaluate memory allocation.
- Analyze concurrency issues (usually for multi-threaded code).
For more details visit the following link:
Question 36: How can you connect an Azure Hosted website to FTP?
Here are some steps:
- Stop: Stopping the virtual server.
- Restart: It will restart the server if something gone wrong.
- Mange Domains: If upgrade from free account to basic or standard account you can manage your domains here.
- Delete: It will delete entire website.
- WebMatrix: To link website to WebMatrix.
If you click on website you will be taken in dashboard where different operations are available,
- Monitor: Graphical representation of request, cuptime, data in, data out.
- Configure: Change the language setting version used.
- WebJobs: Automatic task that are scheduled will be discussed in upcoming articles.
- Scaling: More than one instance of website can be created to balance load.
Linked Resources
This will show how the resources are attached. You will see the cleardb database if you click on it will redirect you to cleardb website and you will be automatically logged into account created by azure for you. You can view performance and other configurations of your database.
Connecting FTP
If we want to view files of our WordPress in order to change configuration setting, upload content or to make backup.
For this we have to set some deployment credentials in Microsoft Azure so that Azure verifies that we are authorized to make changes.
For this go to Management portal select website. Dashboard of app will be opened. If not, click on setup deployment credentials.
For more details visit the following link:
Question 37: What is Cmdlet in Azure?
A cmdlet is a lightweight command that is used in the Microsoft PowerShell environment. The Windows PowerShell runtime invokes these cmdlets within the context of automation scripts that are provided at the command line. The Windows PowerShell runtime also invokes them programmatically through Windows PowerShell APIs.
A cmdlet is a compiled piece of .NET code. Cmdlets handle object input and output as well as usually playing nice and well with the (object-based) pipeline. Cmdlets have no direct representation in the file system, as they are not programs or similar. They exist solely within PowerShell. You can use the Get-Command Cmdlet to query all available Cmdlets, functions, etc.
How to Start with Windows Azure Automation using Cmdlets:
- Go to Microsoft Azure home page.
- Click the Downloads link on the page (See at the very bottom of the page)
- Click the link for Command Line Tools
- The installation can take several minutes because there is a dependency on the Microsoft Azure SDK, which has its own set of dependencies.
For more details visit the following link:
Question 38: What is Azure Explorer?
Azure Explorer is a free Microsoft Azure storage tool; in this we can manage all our Microsoft Azure blobs at a common place or one place. Azure Storage Explorer is a useful GUI tool for inspecting and altering the data.
In Azure Explorer, we have “Azure Storage Account”, and in the Azure Storage Account, we can manage more than one Blob Container, in Blob Container we can create page blob as well as new folders to store our files.
Step 1: For the installation of Azure Explorer we need go to its download link, After going to above link, you will see the following window. Click “DOWNLOAD AZURE EXPLORER”.
For more details visit the following link:
Question 39: What is Service Fabric in Azure?
Azure Service Fabric is a next-generation middleware cloud platform to build scalable, reliable, and managed enterprise applications. Microsoft is already using Service Fabric powers in many of its products, including Azure SQL Database, Azure DocumentDB, Cortana, and Power BI.
- Develop massively scalable applications that are self-healing.
- Develop with a "datacenter on your machine" approach. The local development environment is the same code that runs in the Azure datacenters.
- Develop applications composed of microservices, executables, and other application frameworks of your choice, such as ASP.NET, Node.js, etc.
- Develop stateless and stateful (micro)services and make these highly reliable.
- Simplify the design of your application by using stateful (micro)services in place of caches and queues.
- Deploy applications in seconds.
- Deploy to Azure or to on-premises clouds running Windows Server with zero code changes. Write once and then deploy to any Service Fabric cluster.
- Deploy applications at higher density than virtual machines, deploying hundreds or thousands of applications per machine.
- Deploy different versions of the same application side by side, each independently upgradable.
- Manage the lifecycle of your stateful applications without any downtime, including breaking and nonbreaking upgrades.
For More details visit on following link:
Question 40: What is Windows Azure Scheduler?
Windows Azure Scheduler allow you to invoke actions – such as calling HTTP/S endpoints or posting a message to a storage queue on any schedule. With Scheduler, you create jobs in the cloud that reliably call services both inside and outside of Windows Azure and run those jobs on demand, on a regularly recurring schedule, or designate them for a future date.
Scheduling is the history details of your apps in the cloud; it gives information of the particular application, means its status, its start time and its end time.
For more details visit the following link:
Question 41: What is Blob Storage in Azure?
Windows Azure Blob Storage can store hundreds of terabytes data in one account. As you know you can create multiple blob storage accounts, so definitely you can store multiple hundreds of terabytes data with Windows Azure Blob Storage.
We don’t require taking tension about the backup of the data which is stored on blob storage. It is because it automatically takes the backed up data. You can increase your storage as per requirement and you need to pay only which you have used and what you have used.
One more thing, that you don’t need to take headache about how to manage your data, your VM or any other things; actually Windows Azure manages everything automatically.
You can use Blob Storage as REST API and can use with any language like Java, .NET, etc. Actually technology doesn’t matter with blob storage. It means all kinds of client can be accessible to this storage.
For more details visit the following link:
Question 42: Why do you go with Microsoft Windows Azure?
There are many regions that people want to go with Microsoft Windows Azure:
- Flexibility: Windows Azure supports wide range of Operating System that makes it reachable to wide range of customers. It also supports different kinds of programming language like PHP, .NET, JAVA, etc. You can use different kinds of frameworks and tools for building your Apps. So, basically it provides us flexibility to choose existing one which will help us to create variety of applications with Windows Azure.
- Extendable: Windows Azure easily integrates with your existing environment using largest network with secure private connectivity. It also provides database, storage which is extendable on demand. Windows Azure can run with your data center.
- Scalable: You can scale up and down your services as per your demand. Services, storage and performance also will be same if you scale up or down. So, small client can take benefit of Windows Azure and their services.
- Protection: Everyone is worried about their data. They need protection for their data, nobody can rely on some vendor for their data. Windows Azure has launched Azure Government for believing you that your data is secure with Windows Azure. It commits for securing, protecting and privacy of your data.
- Trusted: Today Windows Azure is used by top clients worldwide. They are using Windows Azure Services for a long time and they believe in it.
For more details visit the following link:
Question 43: What is Azure Mobile Service?
Microsoft Azure Mobile Service gives you the power to create a cloud service mobile application. This will make your work more flexible and gives your application more portability in an efficient way. This is a short introduction of Azure Mobile service. You will get to know, how to create and integrate new mobile service in your new or existing application. So let’s get crack in Azure Mobile Service with Universal Windows Platform.
For more details visit the following link:
Question 44: What is the difference between Table, Queue, and Blob storage?
To use Azure Storage, you just need to have an Azure Storage Account. Using this account you can access the service of the Azure Storage. Actually Azure Storage provides two types of the storage account.
- Standard Storage Account: It is for Blob, Table, and Queue Storage.
- Premium Storage Account: It is for Azure Virtual Machine Disks Only.
BLOB STORAGE: It can store any type of data; data can be a document file, media file, exe or dll, images, text file or any other data file. So, basically it is used for storing the objects. So, as the definition says, we can store large amount of the unstructured data into the blob storage.
TABLE STORAGE: It is like a table inside the SQL Server. So, it is used to store the structured data. Table storage is a NoSQL key-attribute data store. It means every data stored into the table is stored with typed property name. It is very fast when you are working with large number of data. It doesn’t use schema for developing the table.
QUEUE STORAGE: Sometimes, it is required to transfer the data in the format of the message over the internet between the two cloud services. In that scenario we prefer to use the queue storage. You can create large number of the queues to process your data. Every queue contains large number of the message and every message size may be up to 64 KB.
For more details visit the following link:
Question 45: What is the Migration Assistant tool in Azure Websites?
The migration Assistant tool will help to analyze your IIS installation and identify which sites can be migrated to the cloud, highlighting any elements which cannot be migrated or are unsupported on the platform.
Once analyzed this tool will also create websites and databases provided under given azure subscription.
Automated Assessment and Migration
- This tool will provide a high level readiness assessment.
- The report outlines sites which are ready to move, elements which may need changes and highlights unsupported features.
- The detailed report offers expert guidance and advice tailored to your environment.
- The tool creates any Website(s) and associated database(s), if applicable, automatically and synchronizes your content.
For more details visit the following link:
Question 46: What is Azure Mobile Engagement?
Azure Mobile Engagement is a SaaS-delivered, data-driven user engagement platform that enables real-time fine-grain user segmentation, app user analytics, and contextually-aware smart push notifications and in-app messaging across all connected devices.
With Azure Mobile Engagement, Application publishers and marketing professionals can create cutting edge interactions like the following,
- Real Time actionable analytics to increase app usage.
- Push Notification and Communication Platform.
- Open API's and Ease of integration.
- Data Protection & Privacy across globe.
Azure Mobile Engagement is available across all major mobile platforms including Android, iOS and Windows.
For more details visit the following link:
Question 47: What is WordPress in Microsoft Azure?
WordPress is Web software you can use to create a Web sites, blog, or apps. The core software is built by hundreds of community volunteers, and when you’re ready for more, there are thousands of plugins and themes available to transform your site into almost anything you can imagine.
We can install WordPress on our local computers to develop Web sites, blogs, or theme plugins; or we can install it on the cloud where everyone can access our Web sites.
Installing and Running WordPress.
- Login to manage.windowsazure.com to access you Azure portal.
- Click on CREATE A WEB APP or +NEW button in the portal.
- You can select QUICK CREATE and then upload it from your computer.
On clicking Gallery the model window will appear where you can find WordPress by scrolling (or navigating to BLOGS, then WordPress).
- Select the WordPress and click next. Fill the required Information.
- Fill the URL, database, region and deployment setting details.
- Click on Next: Fill in information about MySQL database. Azure will choose the unique name of your database and region to place the database physically.
For more details visit the following link:
Question 48: What is Azure HDInsight?
Azure HDInsight deploys and provisions Apache Hadoop clusters in the cloud, providing a software framework designed to manage, analyze, and report on big data.
With the September 2015 release of HDInsight, now customers configure these clusters to run using both a Windows Server Operating System as well as an Ubuntu based Linux Operating System.
HDInsight on Linux enables even broader support for Hadoop ecosystem users to run in HDInsight providing you even greater choice of preferred tools and applications for running Hadoop workloads.
Both Linux and Windows clusters in HDInsight are built on the same standard Hadoop distribution and offer the same set of rich capabilities.
For more details visit the following link:
Question 49: How can you create a HDInsight Cluster in Azure?
To create an Azure HDInsight Cluster, open the Azure portal then click on New, Data Services, then HDInsight.
The following options are available:
- Hadoop is the default and native implementation of Apache Hadoop.
- HBase is an Apache open-source NoSQL database built on Hadoop that provides random access and strong consistency for large amounts of unstructured data.
- Storm is a distributed, fault-tolerant, open-source computation system that allows you to process data in real time.
The next step is to add a cluster name, select the cluster size, add a password, select a storage and click on create HDInsight cluster.
Enable Remote Desktop on the Cluster
Once the cluster has been created, its jobs and contents can be viewed by remote connection. To enable remote connection to the cluster, use the following procedure:
- Click HDINSIGHT on the left pane. You will see a list of deployed HDInsight clusters.
- Click the HDInsight cluster that you want to connect to.
- From the top of the page, click CONFIGURATION.
- From the bottom of the page, click ENABLE REMOTE.
In the Configure Remote Desktop wizard, enter a user name and password for the remote desktop. Note that the user name must be different from the one used to create the cluster (admin by default with the Quick Create option). Enter an expiration date in the EXPIRES ON box.
For more details visit the following link:
Question 50: What is Text Analytics API in Azure Machine?
Text Analytics API is a suite of text analytics web services built with Azure Machine Learning. The API can be used to analyze unstructured text for tasks such as sentiment analysis and key phrase extraction.
The API returns a numeric score between 0 & 1. Scores close to 1 indicate positive sentiment, while scores close to 0 indicate negative sentiment.
The advantage of this API is that a new model need not be designed and trained, the user only needs to bring the data and call the service to get the sentiment results.
However, because this is only the initial release of this service only English is supported right now.
How it works
Text Analytics API does not simply use a lexicon approach to map words such as “good or bad” to return the results.
Instead, it uses advanced natural language processing techniques under the hood.
For more details visit the following link:
Thanks for reading this article and stay connected with me for more information about AZURE and other technologies.
Download my new EBook “.NET interview Questions and Answer”.
Read more articles on Microsoft Azure: