Azure is one of the rapidly adopted cloud computing services today, although it came later in the market than AWS or Google Cloud. At the core, all cloud providers provide similar functionality around compute, storage, networking and security. However, Microsoft Azure has become a top choice with C-Level executives due to their trust and compatibility with the vendor.
Well like any technology, Azure comes with its pros and cons too.
For instance, Azure is built using the same programming languages in which the Windows Operating system is written. This makes it easy and familiar for developers to work with. Also, it integrates and works well with Apps like Office365, Salesforce, Twitter and with the rest of the Microsoft family. Moreover, it provides greater protection against data loss. Lastly, it offers good scalability without the need to purchase additional data packets.
However, there are a few cons to it too. Firstly, data migration is difficult, i.e. it is hard to move from a different cloud provider to Azure. Next, Azure is vulnerable to certain security threats that crop up because of the underlying Microsoft software. Also, hackers are aware of the vulnerability of Windows OS and can use this to attack the cloud infrastructure. While it does provide solid data protection, you need to pay extra for this.
Based on the above pros and cons, enterprises can finalise which cloud suits their needs. And as Azure is becoming the preferred choice for many companies, there is an increasing demand for professionals skilled in this space. Filling in this need-gap, we have compiled a list of the most frequently asked Azure Interview Questions.
Azure DevOps Questions
1. What is API management? How does it work?
Azure API management service enables its end-users to create, document, publish and monitor API. Applications can test the APIs to ensure they are usable and secure in the public domain.
How API management works:
- The administrators create and publish the APIs containing a set of operations.
- Developers create products that use these API to call specific operations.
- The API portal sets up the APIs and manages the policies for the developers.
2. What are Azure API management concepts?
- APIs and operations: APIs are the basis of API management instance and each API represents a back-end operation.
- Products: Every product can call one or more APIs in Azure, meaning that developers can access the APIs through these products.
- Groups: API management has system groups to govern the visibility of products to developers. There are 3 groups:
- Administrators: Have the highest access rights. They can manage service instances, create APIs, operations, and products that developers require.
- Developers: Have access to the APIs to build their applications.
- Guests: They are like trial customers who first gauge the system. Next, they analyze the APIs and make a decision based on their experience.
- Policies: Enables the publisher to change the API behaviour through configuration.
3. What is Azure DevOps and what are its various components?
Azure DevOps is Microsoft Azure’s SaaS (software as a service) platform that facilitates the support team to plan tasks, collaborate on the development of code, build and deploy the applications. It integrates with prominent tools in the market making the orchestration of the DevOps toolchain easier.
Below are the main Azure DevOps Components:
Azure Boards: Helps to create work items, plan, manage and track them. It can also create custom reports for these work items based on requirements.
Azure DevOps Pipeline: A Continuous integration/continuous delivery (CI/CD) platform for deployment and testing of the code, which can connect to any Git repository.
Azure Repos: Cloud-hosted private Git repository service to store the code.
Azure Test Plans: A testing solution containing manual test cases, automated test cases, as well as exploratory testing to capture defects.
Azure Artifacts: A hosting facility for common dependencies required for the code. e.g. Maven, Node Package Manager, and Nuget Packages.
The below image summarises what is Azure DevOps and its components:
4. What is the difference between Azure DevOps Services and Azure DevOps Server?
|DevOps Service||DevOps Server|
|Cloud-based service that provides developmental tools building an application.||The on-premise counterpart of DevOps service.|
|Apt for usage that requires high scalability, reliability and availability.||Build on SQL server and is used for reporting and when applications need data to be in the network.
|Globally hosted service, monitored by Azure support team.||Hosted locally on end users’ infrastructure
6. Which container platforms does Azure DevOps support?
- Kubernetes Service (AKS) to simplify deployment, management, and operations in Kubernetes.
- App Service to easily create versatile cloud apps for the web and mobile.
- Container Instances: Easily run containers on the Azure platform without server management.
- Batch: Job scheduling and computing within a cloud.
- Service Fabric: Microservices development and orchestration of containers on Windows or Linux
- Container Registry: Manage and store container images across varied Azure deployments
- Azure Red Hat OpenShift: Run fully managed OpenShift clusters in collaboration with Red Hat.
7. What is Azure Pipelines?
Azure Pipelines are a service that provides continuous integration and continuous delivery (CI/CD). One can use the Pipelines to configure, automate and build in collaboration with the Git provider. The Azure DevOps Pipelines can then deploy the code to any of the cloud services.
8. What is the recommended best practice in securing a YAML pipeline?
To secure YAML (Yet Another Markup Language) pipeline you should create an empty template and then incrementally apply security practices. This way the end-users can access the pipeline features through a Markup file. The YAML file also extends the template to all pipelines and implements the security practices efficiently.
9. What might be the potential causes that a pipeline won’t trigger?
- YAML trigger settings could be overridden in the UI console
- A PR (Pull Request) trigger is not supported in Azure Repos.
- Scheduled triggers are not set in the correct time zone. Time settings could prohibit the trigger from firing.
- Branch filters are not configured in CI and PR triggers.
- UI settings take over the YAML trigger settings.
10. What are the necessary components for integrating Azure DevOps and Bitbucket?
You require Azure pipelines(GitLab CI/CD) to access the Bitbucket repositories during the build, while CI triggers run the pipelines to access the Bitbucket server.
11. During a code review, you discover plenty of unused variables and empty catch blocks. What steps would you take to improve the quality of the code?
Select ‘Run PM’ in a Maven build task. The Apache Maven PMD plugin enables the automatic execution of the analysis tool on the source code. This analysis generates a site report to find out unused variables and empty catch blocks.
12. Through which way scan you continuously introduce security validation to existing pipelines?
Continuous security validation is added at every stage of the development cycle to ensure security is maintained throughout. Here are the possible ways to do it:
- Static code analysis in the IDE before you add the code to the repository
- Git source control for ensuring that you have enabled the branch policies in the repository.
- Using tools like Visual studio code analysis and Roslyn Security Analyzers to review the code.
- Use Checkmarx scan for static application security testing.
- Use tools like WhiteSource Software to identify any security lapses in third party packages.
13. Which programming languages does Azure Web Apps use to support a web application?
You can build a web application in Microsoft Azure through PHP, ASP.NET, PYTHON, and Node.js. Moreover, Microsoft has released Software Development Kits(SDKs) for Java and Ruby platforms. So any application that is written in these languages can access the Azure cloud service.
Currently, there are two ways to deploy the application in Microsoft Azure:
- Azure resource manager
- Classic deployment model
14. What is Azure Content Delivery Network? How does it work?
Content Delivery Network(CDN) in Azure is a distributed network of servers that enables the delivery of content over the web. The CDN is a high-performance solution that successfully delivers high bandwidth content to its users. It does this by strategically placing its cached content to various physical nodes across the globe.
This is how the Azure CDN works:
- The user requests a file with a special domain name.
- DNS optimizes the request to route to the nearest and the best performing POP location.
- If there is no content in the cache, it is requested from the server and then cached. After this, the content is delivered to the user.
- Additional users can also request the content using the same URL and the content will be delivered from the cache for subsequent requests.
- This continues until the TTL for the content file hasn’t expired. This ensures rapid delivery of content.
16. What are the features of Azure CDN?
Dynamic site acceleration – Optimizes its servers to meet the high scaling demands of the content when users increase rapidly.
CDN caching rules – Caches the content after the first request; the CDN caching rules determine the content delivery method.
HTTPS custom domain support – Azure supports HTTPS on a CDN endpoint to ensure secure domain to the web applications.
Azure diagnostics logs – The developer team uses analytics and usage logs to troubleshoot failures.
File compression – Compress large files to reduce bandwidth costs and view content with a rapid response time.
Geo-filtering – Azure CDN delivers or blocks content depending on geographical rules which make the user’s viewing experience more customized.
Azure Interview Questions in Compute
17. What is an availability set?
An availability set is a logical grouping solution that keeps VMs from the same group isolated from each other. It is a robust system that ensures minimal outage occurrence in an event of hardware/software failure or maintenance operation.
18. Can you create a Virtual Machine through Azure Resource Manager(ARM)?
No. You can’t create a VM using ARM.
19. What are the important things to consider when creating a new Virtual Machine?
You need to consider the following aspects before creating a Virtual Machine:
- The names of your application resources
- The storage location for the resources
- The size of the VM
- The maximum number of VMs that you can create
- The operating system that the VM will run on
- The VM configuration after it starts
- The related resources that the VM will require
20. What are the different power states of a Virtual Machine?
- Starting: VM is getting started
- Running: VM is running
- Stopping: VM is about to be stopped
- Stopped: VM has stopped
- Deallocating: VM is being deallocated
- Deallocated: VM is deallocated yet available in the control plane
21. How much storage is available to use on a virtual machine?
Data disks on the VM can have storage up to 32,767 gibibytes (GiB) or 35 TB. However, the VM size determines how many data disks it can use.
22. What are the potential causes of some common allocation failures and what would be the workaround to it?
|Resizing a VM or adding VMs to an existing availability set||Create a VM in a different availability set and then add it on the same virtual network as the existing one.|
|Restart a partially stopped VM||Stop all VMs in the availability set and then start each one. The allocation of the resources will be managed steadily.|
|Restart fully stopped VMs||Try using newer versions of VM sizes or deploy the VM to an availability zone in the same geo with available capacity.|
|Allocation failures for older VMs||Move to the equivalent new VMs as per the recommendations to avoid allocation failures for the old legacy series.|
|Allocation failures for large deployments.||Bring down the instances of the VM size that was requested. Try using Azure VM scale sets to manage the large demand.|
Storage and Governance
23. What is Azure Cosmos DB?
Azure Cosmos DB is a fully managed, NoSQL database service for app development. It has high availability and scalability and can be globally replicated without any schema definitions. This Azure storage service is designed for web, mobile, and gaming applications.
24. What is Databricks in Azure?
Azure Databricks is a Data Analytics platform built in collaboration with Apache® Spark™. It provides two development environments for creating data-centric applications: Databricks SQL Analytics & Databricks Workspace.
It offers seamless integration with native Azure services like SQL Data Warehouse, Power BI, Cosmos DB and other security, compute, storage, and AI services.
25. Does Azure Cosmos DB support different data models and how?
Yes. Azure Cosmos DB has a schema-free design, which means that it can ingest any format of data without the need for a schema definition. It is built on atoms, records, and sequences, and therefore it supports all data models intrinsically.
26. Explain indexing in Azure Cosmos DB
Each property in Azure Cosmos DB is indexed by default. Since it does not need a schema definition, it indexes every property in the container. Additionally, it persists every item in the container as a JSON document. These documents are structured as a tree and each item in the property is the node in the tree. When the item is written in the container, every property path and value is indexed. You can accomplish indexing through range index, spatial index and composite indexes.
27. What is table storage in Microsoft Azure?
Table storage in Azure is a service that stores data in a NoSQL structured format. It stores the data in the cloud with a key/attribute store in a schema-less design. It can store large amounts of data and can easily adapt to the changing needs of the application.
28. Differentiate between Table Storage and SQL Azure Table?
SQL Azure tables are used for relational data with indexes and structures and have a defined schema.
|Table Storage||SQL Azure Table|
|Used for large amounts of structured data that is not relational but is high in volume.
|Used for relational data with indexes and structures and have a defined schema.
|Uses access rights according to SQL-standard||Access rights according to the private key authentication or shared signatures.|
29. List the different types of Azure blobs and their differences?
|Block Blobs||Append Blobs||Page Blobs|
|Made up of blocks with an identifiable Block ID||Similar to Block blobs but are made for append operations||Page blobs are a collection of pages optimized for reading and writing|
|Used for streaming sequential data like Videos||Used for Logging||Used for non-sequential read and write|
|Stores up to 4MB of data per block||Stores up to 4MB of data per block||Stores up to 512 bytes per page|
|The capacity of 50,000 blocks||The capacity of 50,000 blocks||No limits on the number of pages created|
|Maximum Size of block blob: 195 GB||Maximum size of page blob: 195GB||Maximum size of page blob: 1TB|
30. What is Azure Backup? What are its benefits?
Azure Backup is a cloud-based service used for backup and data restore. It is a reliable, safe, and competitive cloud back-up solution that can replace on-premises or off-site backup solutions. It offers the following benefits:
- Scalability: Offers real-time scaling of resources.
- Unlimited data transfer: Sets no limit on the inbound and outbound data volume used for the transfer.
- Data encryption: Despite encryption being a major point in cloud computing, Azure Backup has inbuilt encryption for all data.
- Pricing: Priced at a pay-as-you-go model. This makes it affordable and practical.
- Specific backups: When you restore data from VMs file or SQL servers, there is no need for additional fixes.
- Centralized monitoring and maintenance: You require no additional infrastructure for monitoring activities in Azure Backup.
31. How can I recover a dropped Azure SQL database?
You can use automated database backups to restore a database from Azure storage. This can be done in the following ways:
- Create a new database on the same server on which you deleted the table. Recover it to a specific time which is within the retention period.
- Create a database on the same server and recover it to the time of deletion of the database.
- On any server in the same region, create a new database. Then recover it to the most recent backup.
- On any server anywhere, create a fresh database. Recover it to the most recent backups that were replicated.
Security & Privacy
32. What is Azure Active Directory and what is its purpose?
Azure’s Active Directory is a cloud-based directory and identity management service. It combines identity governance, directory services and access management.
When developers use Azure services like Machine learning service, SQL database, Azure container services, etc., the admin gives them separate user id and password for each of them. This causes a lot of hassle for users to remember so many passwords and ids. This is where the Active directory plays its role. Through the Active Directory, admins can assign a single user-id and password and handle multiple logins conveniently.
33. What are the benefits of Azure Active Directory Domain Services?
- Customize data as per the company requirements
- Manage Active Directory Domain Services (AD DS) from any network
- AD DS has built-in redundancy and replication in case of any DC failures.
- Manage network access rights centrally through AD DS
34. How are Windows Active Directory and Azure Active Directory different?
|Windows AD||Azure AD|
|Is On-Premise||Is based on Cloud|
|Allows users to authorize multiple file resources like files, printers, applications, etc.
|Provides users with a centralized directory for all the cloud applications and servers.|
|Group Policy centralizes the OS and application management and configuration of user settings.||Once users register on a cloud application, they automatically become Azure AD tenants. This helps manage users’ permissions and passwords from a central place.|
|Does not completely support multiple platforms.||Supports web-based services through REST API.|
35. Define the Azure Security Policies
A security policy in Azure is a service that outlines how you want your workloads to be configured and guarantees that you’re meeting your company’s or regulators’ security requirements. They define, enforce and control properties of the available resources.
More than 90% of Fortune 500 companies across the globe use Microsoft Azure to build, deploy, and manage applications in the cloud. Since Azure provides easy integration with several programming languages, operating systems, databases, framework and applications, enterprises can leverage the latest and smartest technologies.