In this Microsoft Azure tutorial, we will learn about Cloud Computing, Azure Cloud, Azure Marketplace, Azure DevOps, Continuous Integration, etc:
Microsoft Azure is a cloud computing platform. It provides a set of services that you can use while developing your application and gives the best solutions to business users with real-time automation techniques. We can consider these primary services of Azure, for example, building, testing, deploying.
Azure also offers a different range of services that can host simple web services in the cloud and new capabilities like AI and the Internet of Things (IoT).
=> SCROLL DOWN to See the List of In-Depth Azure Tutorials in this Series
Table of Contents:
Microsoft Azure: A Complete Guide
Azure Tutorial Series
Tutorial #1: Microsoft Azure Tutorial: What Is Microsoft Azure (This Tutorial)
Tutorial #2: Azure DevOps Services: What is Azure DevOps?
Tutorial #3: Azure DevOps Repos and Pipelines Guide
Tutorial #4: Azure DevOps Test Planning and Management Tutorial
Tutorial #5: Microsoft’s Visual Studio and Azure DevOps: Load Testing Replacement
Tutorial #6: Microsoft Azure SQL Database Tutorial For Beginners
Tutorial #7: Microsoft Azure Certifications: A Complete Guide
Tutorial #8: Best Azure Monitoring Tools
Tutorial #9: Best Azure Cost Monitoring Tools
Tutorial #10: Top Azure Cost Management Tools
Tutorial #11: BEST Azure Scheduler Alternatives
Tutorial #12: Top Azure Test Plan or TFS Interview Questions
Tutorial #13: Top Azure Interview Questions and Answers
What is Cloud Computing?
In a simple definition, we can define cloud computing as the storage location on the Internet where you can store your information or data and can access it anytime wherever you are in just a single UI (user interface) portal instead of your computer’s hard drive.
It provides faster access when you access it with the help of plenty of cloud resource services, for example, storage, servers, networking, databases, software. It also offers smooth development, the fastest deployment with the help of cloud DevOps pipeline, and scalability techniques to the developers.
Here are the essential features of the computing services.
- Pricing model (Pay-as-you-go)
- Maintain the infrastructure more excellently.
- Reduce the operating costs.
- A high-speed solution to solve the toughest business challenges.
Recommended Reading => Cloud Computing: Beginner’s Guide
Advantage of Cloud Computing
The advantages are listed below:
- Reliability: Provides the best continuous user experience in fast deliverables without downtime in a challenging event.
- Scalability: Provides vertically and horizontally scalable solutions to the application in the cloud.
- Elasticity: Provides the best configuration methods to the application.
- Agility: Allows a faster deployment experience to the application if in case of business requirement change.
- Geo-distribution: Using the Geo-distribution innovation application, we can deploy it to the different regional data centers across the globe with the best performance result.
- Disaster recovery: If anything goes incorrect or fails with the help of a disaster recovery technique, we can secure the application.
What are Cloud Service Models
Cloud computing models develop these below service models:
IaaS: It is the Infrastructure as a Service model that maintains the physical servers and renders your hardware up to date on the cloud platform. IaaS provides the capability of pay only as per your usage and can instantly scale up and down as per your requirement. It saves the additional cost and the complexity of purchasing and maintaining the physical servers.
PaaS: It is the Platform as a Service model that provides the hosting environment for your applications or websites. It controls the virtual machines and networking resources very well.
We can host the Azure app services applications, and developers can easily publish their applications directly from their local host (visual studio easily connects to the Azure cloud and can publish the apps directly to the Azure cloud with the settings.)
SaaS: It is the Software as a Service model. It enables the features of the application environment, for example, virtual machines, networking resources, data storage, and applications with the uses and requirements of the cloud tenant.
For example, Office 365 performs a complete working version of Microsoft Office that runs in the cloud. We just need to create the content, rest all the background functionality office 265 handles.
The below image shows the different cloud-service model structures:
What are public, private, and hybrid clouds?
Here we have three types of deployment models for cloud computing no matter what you are using like AWS, Google Cloud, or Azure. These three types of cloud models will be helpful to understand the concepts of the cloud.
Each deployment model has numerous features that we should consider. These models are explained below:
Public cloud: Here, it offers the services as publically on the Internet as per the purchase plan and business or the organization’s needs by the cloud service provider. Cloud sources like servers and storage are controlled and managed by a third-party cloud service provider and impersonated over the Internet.
Private cloud: Here, computing resources can be controlled and used, particularly by users from one business or organization. A private cloud can be physically established at your organization’s on-site data center hosted by a third-party service provider.
Hybrid cloud: This computing environment joins a public cloud and a private cloud by providing data and applications to be shared between them.
Understanding Azure Cloud
Azure is a cloud service that constantly grows the various cloud services that support the organization and complete the current and future business requirements and challenges. It provides the liberty to develop, maintain, and deploy applications on a comprehensive global network using plenty of preferred tools and frameworks.
What can I do with Azure?
Azure implements more than 100 services that enable you to create, develop, publish and use these services as per your requirements.
For example, we can develop smart and innovative bots with the help of Azure cognitive services, NLP, and AI services. It also provides the below platforms:
- Azure machine-learning platform: Here you can create your experiment and model using deep learning.
- Azure Artificial Intelligence: Here you can create your artificial intelligence models using custom AI cognitive services.
Microsoft Azure Portal
Azure portal is a cloud platform that renders the capabilities of the compute, storage, and networking resources for building cloud-hosted applications. Using Azure portal as a new user you can build, develop and manage your Azure resources as per your requirements.
For example, you can create a new database, improve the computing power of your virtual machines, and control your monthly costs. It has a great GUI interface with the user guide wizards which can help and guide the user.
Further Reading => Most Popular Azure Cost Monitoring Tools
What is the Azure portal?
It is a powerful tool that we can use in our daily work activities. It is a public GUI interface that we can access from any web browser. After signing in with your Azure account, you can build, maintain, and monitor any available Azure services and can also deploy, manage, and delete.
The Azure portal also provides astonishing wizards, UI interface, and tooltips with the help of users who can easily access and manage their applications in one consolidated hub which includes the Visual Studio team projects, web apps, virtual networks, databases, storage. It also has the capability of integrated command-line experience presented by Cloud Shell.
We can sign into the Azure portal, which is a web-based administration web UI.
An azure portal has the capability of the configuration option where users can use as a dashboard and can do their activities. The dashboard view presents high-level details about your Azure environment. It can be customizable by moving and resizing tiles and displays plenty of services.
The above image shows the Azure resources list. This is the default layout view and in the Azure portal, it has the option of the customize Dashboard from Settings.
What is Azure Marketplace
Azure Marketplace helps to connect users with the following services:
- Startups
- Microsoft partners
- Independent software vendors
These services offer the most suitable solutions and astounding services we can run on the Azure cloud. In Azure Marketplace customers can simply try, purchase, examine the applications and services from various service providers.
The below image is the example of Azure Marketplace:
What is DevOps
- DevOps is the connection of people, processes, and products to allow continuous delivery of value to the users with the best customer support and satisfaction.
- DevOps is a cultural and professional journey that emphasizes communication, collaboration, and integration between software developers and IT operations using a set of automated resources to deliver value to the business.
- It is a variation in the operating model where the developer is allowed to deliver the code to production and not rely on various shared teams and tickets for every step in this process.
- It allows IT organizations to deliver software faster, better, and cheaper through a continuous delivery method.
Four features of DevOps speed up software delivery are:
- Continuous Integration: Small frequent releases and automated builds execute immediate feedback to developers.
- Test-Driven Development: Potential defects are classified earlier in the life cycle.
- Continuous Deployment: Modernized deployment processes occur more frequently.
- Single-click Environment: A single constant build process for all environments.
Suggested Reading =>> DevOps for CI/CD to an Azure Web App
CICD Level Cycle
The above CICD level cycle image shows the traditional ways from Level 1 to advanced enhancement with Level 3.
Let us understand the level below:
CICD Level 1:
- It has the lowest maturity without continuous integration.
- There is an automated deployment that facilitates that the build artifacts can be deployed into production with no manual steps.
- This does not allow true DevOps operating model, but it implements some reduction in cycle times by automating the deployment tasks.
CICD Level 2:
- In this model, both Continuous Integration and Continuous Delivery to production are recommended, but they don’t happen in one operation.
- There could be a manual step between CI and the CD stages.
- This model is accommodated for many existing applications that have a powerful dependency that prevents CD to follow CI quickly as a single operation.
CICD Level 3:
- This is the most distinguished level of maturity where CI and CD execute as one operation.
- When a developer commits the code, it gets developed, validated and verified, and deployed to production using Blue-Green deployment.
- This is ideally accommodated for microservices-based API and applications.
What is Azure DevOps
Azure DevOps enables the various tools which we can use for the more comprehensive ways for team collaboration. Below are the Azure DevOps operations that developers can accommodate in their daily usages:
- Testing
- Automated build processes
- Version control
- Package-management
Azure DevOps Fundamental
Azure DevOps implements the below features to automate build processes:
Azure Boards: It is the Agile mechanism that helps the developer in tracking their plan and reviewing their tasks with cross-functional teams.
Azure Pipeline: Using Azure pipeline we can develop, examine and deploy the application with CI/CD approach that operates with all languages, platforms, and cloud.
Azure Test Plans: Using the Azure Test plans, we can easily track the defects and can create the manual test plan and execute them. We can also trace the full functionality for desktop or web applications.
Azure Repos: Developers can use it as repositories in the Azure cloud-hosted private and public Git repos.
Azure Artifacts. In Azure Artifact, developers can build, host, and share their packages.
What Are Azure Pipelines?
Microsoft Azure Pipelines is a cloud service we can use, develop, examine and deploy the code using the inbuilt automation scripts. It can operate with any language or various project types. It has a catalog of tasks. This task is supported by a script method that can be obtained with a set of user inputs.
What is Continuous Integration
Here we have these 4 stages which perform internally with the help of inbuilt-auto scripting:
Step 1: Continuous Integration (CI) is the process of automating the build and testing of the source code when the developer commits the change and transforms it to version control.
Step 2: Practicing CI developers can share the code and do the unit testing before consolidating the changes to the shared version control repository branch after the task fulfillment.
Step 3: After the successful commits, the code triggers with the automated build mode and merges to the latest code branch from the shared repository.
Step 4: A pipeline represents the continuous integration method for the app.
As per the above image, we can see the stages of the pipeline as below:
Stage 1: We can examine the tasks script that performs how your build can test, run and deploy.
Stage 2: We can compose and run the pipeline automatically or manually, and combine it to the source repository. For example GitHub, Bitbucket.
Stage 3: A build agent creates and deploys the source code. After the build runs, the system generates one or more jobs. An agent is installable software that runs one build or job at a time. Using Azure Pipelines, we can use a Microsoft-hosted agent, it maintains and upgrades the pipeline.
Stage 4: In the last stage, we have the build artifact. It is the smallest assembled unit with the help of which we can test and deploy the app.
Stage 5: A build agent generates and deploys the source code. After successfully running on the system, it creates one or more jobs. An agent is installable software that operates one build or job at a time.
Stage 6: Using Azure Pipelines, we can apply a Microsoft-hosted agent, it manages and upgrades the pipeline.
Stage 7: In the last stage, we have the build artifact. It is the shortest assembled unit with the help of which we can test and deploy the app.
Understanding Artifact
Below are the types of artifact:
- A Java or .NET app packaged into a .jar or .zip file.
- A C++ or JavaScript library.
- A virtual machine, cloud, and Docker image.
How to create the pipeline in Azure Pipeline?
Before creating the pipeline, we have to define the essential YAML file, which helps to build and run automatically in the background.
Below is the YAML Format Example:
YAML contains:
- Instance Name
- Build configurable variables corresponding to each environment (Dev, SIT, PROD).
- Buildpack(i.e. the framework or libraries version we use for .ASP.net core or Java application and more.)
Follow these steps to create the pipeline:
- In Azure DevOps, go to your project.
- From the project page or from the left pane, select Pipelines.
- Select Create Pipeline.
- On the Connect tab, select GitHub.
- When shown, enter your GitHub credentials.
- On the Select tab, select your application name web repository.
- To install the Azure Pipelines app, go to GitHub-> scroll to the bottom-> select Approve and install.
- On the Configure tab, select ASP.NET Core.
Azure DevOps Pricing
For Azure DevOps pricing, there’s a different pricing process as per the plan.
The below image will help you understand the Azure DevOps plan. As per your project requirement and scope, you can select the plan.
Frequently Asked Questions
1. How do I learn Azure?
For learning Azure, you need to create an Azure account and take the AZ-900 Azure Fundamentals course provided by Microsoft. It is the basic fundamental course to start learning about Azure. It will cover all the basic understanding of all the resources and services.
2. What are the benefits of Azure?
The basic features of the Azure Cloud are: scalable, secure, flexible, easy to migrate, easy global accessible anywhere in the world.
3. Is Microsoft Azure easy to learn?
Yes, for the best learning experience, the person should have technical experience, and a basic understanding of programming, database, infrastructure server storage.
4. How can we differentiate between AWS, Azure, and Google Cloud?
AWS, Azure, and Google cloud are the cloud service providers from their respective organizations Amazon, Microsoft, and Google, so here cloud concepts and services can be the same.
Some people believe AWS is easy to understand, Azure is difficult to configure, some people have the best User Interface (UI) Azure portal experience. There is a recent observation about AWS. It is easily available and loads the data. Azure has some pre-defined restricted platforms.
5. Is Azure DevOps free?
If you have your Visual Studio subscription, you can easily access and get free access to Azure DevOps.
6. Does Azure DevOps require coding?
For the understanding of the DevOps we would need a basic understanding of the coding, and you should also from the development and deployment background.
Conclusion
We hope this article helped you with understanding the concept of Introduction to Microsoft Azure along with the concepts of Azure Dev-ops with the steps of pipeline creation using Azure.
Further reading =>> Most common Azure Interview Questions