Introduction to Azure
In this, we will get an basic Introduction to Azure.
Introduction to Core Cloud Services
Cloud empower our everyday life, and it’s often present in ways we don’t even realize. We believe technology creates opportunity. In order to keep up with today’s ever-changing digital world, understanding cloud technology helps to align our career to this exciting revolution.
What is Azure?
Azure is Microsoft’s cloud computing platform with continually expanding set of cloud services that help organization meet their current and future business challenges. Azure gives the freedom to build, manage, and deploy applications on a massive global network using favorite tools and frameworks.
What is cloud computing?
Cloud computing refers to the delivery of computing services over the Internet using a pay-as-you-go pricing model. In other words we can say that, it’s a way to rent compute power and storage from someone else’s data center. Therefore, instead of maintaining CPUs and storage in the data center, we rent them for the time for which we need them. The cloud provider takes care of maintaining the underlying infrastructure.
Cloud Trends
Cloud helps to move faster and innovate in ways that were once nearly impossible. With the changing digital world, following trends emerge –
- Teams are delivering new features to their users at record speeds.
- End users expect an increasingly rich and immersive experience with their devices and with software.
Today, software teams are releasing features in smaller batches. Such that releases are now often scheduled in terms of days or weeks. Some teams even deliver software updates continuously — sometimes with multiple releases within the same day. In order to power services and deliver innovative and novel user experiences more quickly, the cloud provides on-demand access to –
- Nearly limitless pool of raw compute, storage, and networking components.
- Speech recognition and other cognitive services that help make your application stand out from the crowd.
- Analytics services that enable you to make sense of telemetry data coming back from your software and devices.
Azure Offerings
- Azure offers services that enables to run existing applications on virtual machines. Moreover, this offers to explore new software paradigms such as intelligent bots and mixed reality.
- Next, Azure offers AI and machine-learning services that can naturally communicate with users through vision, hearing, and speech.
- Azure provides storage solutions that dynamically grow to accommodate massive amounts of data.
- Lastly, azure services enable solutions that are simply not feasible without the power of the cloud.
Azure services
- Azure helps to tackle tough business challenges.
- Secondly, it brings massive global infrastructure that’s always available to build applications on.
Commonly used Azure Categories
1. Compute Services
- The key reason for enterprises migrating to the Azure platform is for compute services. Azure offers a variety of hosting choices for apps and services. Azure Virtual Machines, Azure Virtual Machine Scale Sets, Azure Kubernetes Service, Azure Service Fabric, Azure Batch, Azure Container Instances, and Azure Functions are some examples of computing services in Azure.
2. Networking
- Azure networking’s primary job is to connect computing resources and provide access to apps. Networking in Azure comprises a variety of solutions for connecting the outside world to services and features in Microsoft’s worldwide datacenters. Azure Virtual Network, Azure Load Balancer, Azure Application Gateway, Azure VPN Gateway, Azure DNS, Azure Content Delivery Network, Azure DDoS Protection, Azure Traffic Manager, Azure ExpressRoute, Azure Network Watcher, Azure Firewall, and Azure Virtual WAN are some of the networking services offered by Azure.
3. Storage Services
- Azure offers four main types of storage services. These services include Azure Blob storage, Azure File storage, Azure Queue storage, and Azure Table storage.
4. Mobile Services
- Azure services enables developers to create mobile backend services for iOS, Android, and Windows apps quickly and easily.
5. Databases Services
- Azure offers a number of database services for storing a wide range of data kinds and quantities, all of which are instantly accessible to users thanks to global connectivity. Azure Cosmos DB, Azure SQL Database, Azure Database for MySQL, Azure Database for PostgreSQL, SQL Server on VMs, Azure SQL Data Warehouse, Azure Database Migration Service, Azure Cache for Redis, and Azure Database for MariaDB are just a few of the data services available.
6. Web Services
- Azure provides industry-leading capabilities for developing and hosting web apps and HTTP-based web services. Azure App Service, Azure Notification Hubs, Azure API Management, Azure Search, the Web Apps component of Azure App Service, and Azure SignalR Service are all Azure services that are focused on web hosting.
7. Internet of Things
- The internet allows online-capable items to get access to vital information. The Internet of Things refers to the capacity of devices to gather and then relay data for data analysis (IoT). IoT Central, Azure IoT Hub, and IoT Edge are some of the services that help and drive end-to-end IoT solutions on Azure.
8. Big Data
- The vast volume of data makes it difficult to assess and make judgments. To deal with these massive data collections, open source cluster solutions have been created. Azure SQL Data Warehouse, Azure HDInsight, and Azure Databricks are just a few of the technologies and services that Microsoft Azure offers for big data and analytics (preview).
9. Artificial Intelligence
When it comes to cloud computing, AI is made up of a variety of services, the most important of which is Machine Learning. Machine Learning is a data science approach that allows computers to estimate future actions, results, and trends using present data. The most prevalent Artificial Intelligence and Machine Learning service types in Azure are – Azure Machine Learning Service, and Azure Machine Learning Studio.
10. DevOps
DevOps combines people, processes, and technology together to automate software delivery and give consumers with ongoing value. Azure DevOps Services enables you to develop build and release pipelines for your apps, allowing for continuous integration, delivery, and deployment. Azure DevOps Offerings and Azure DevTest Labs are two of the most popular DevOps services.
Virtual Machine
What is a Virtual Machine?
A virtual machine (VM) is a software simulation of a real computer. There are dozens, hundreds, or even thousands of virtual machines in Azure. Virtual machines (VMs) may be created in minutes and then removed when no longer required. An image is a snapshot of a functioning virtual machine. Azure offers images for Windows and a variety of Linux distributions. To make deployments go faster, we may also generate our own pre-configured images.
How to create a virtual machine?
There are many ways to create a virtual machine on Azure. This can be done by creating a Windows or Linux virtual machine using an interactive terminal called Cloud Shell. If you work from the terminal on a daily basis, you know this is often the fastest way to get the job done.
Virtual Machine on Azure
Virtual machine is defined by a number of factors, including its size and location. Lets discuss them one by one –
- Size – VM’s size defines its processor speed, amount of memory, initial amount of storage, and expected network bandwidth.
- Region – Azure is made up of data centers distributed throughout the world. Such that a region is a set of Azure data centers in a named geographic location.
- Network – Virtual network is a logically isolated network on Azure, such that each virtual machine on Azure is associated with a virtual network. Azure offers cloud-level firewalls for your virtual networks called network security groups.
- Resource groups – VM and other cloud resources are grouped into logical containers called resource groups. Such that groups are typically used to organize sets of resources that are deployed together as part of an application or service. You refer to a resource group by its name.
Azure Cloud Shell
Azure Cloud Shell is a browser-based command-line experience for managing and developing Azure resources. Cloud Shell provides two experiences to choose from – Bash and PowerShell. Both include access to the Azure CLI, the command-line interface for Azure.
Creating Resources in Azure
- First thing we do do is to create a resource group to hold all the things that we need to create which allows us to administer all the VMs, disks, network interfaces, and other elements that make up our solution as a unit.
- We can then use the Azure CLI to create a resource group with the AZ group create command.
How to choose a location?
Free sandbox permits to create resources in a subset of the Azure global regions. Select a region from this list when you create resources – westus2, southcentralus, centralus, eastus, westeurope, southeastasia, japaneast, brazilsouth, australiasoutheast, centralindia
Add a Web Server
When we install a web server in Virtual Machine and serve up a basic web page that displays the VM’s hostname. In order to configure a VM, we must have several choices. Either we can connect directly and interactively configure your system. Manual configuration is a good start, but as you add systems, you can automate your deployments. Automation involves running repeatable processes such as programs and scripts that take care of the heavy lifting for you.
What is IIS?
IIS, commonly known as Internet Information Services, is a Windows-based web server. IIS can provide normal web content (HTML, CSS, and JavaScript) as well as execute ASP.NET and other web applications. IIS is included with Windows Server, but you must activate it before you can begin serving web pages.
Custom Script Extension
The Custom Script Extension makes it simple to download and run scripts on Azure virtual machines. Once your VM is up and running, you may customise the system in a variety of ways. The scripts can be saved in Azure storage or in a public repository like GitHub. Scripts can be executed by hand or as part of a more automated deployment. We’ll use the Azure CLI to download a PowerShell script from GitHub and run it on the virtual machine. The script sets up IIS.
Configure IIS
We’ll utilise Cloud Shell to remotely setup IIS on your VM using the Custom Script Extension. In addition, we’ll set up the firewall to enable inbound network traffic on port 80. (HTTP). Run the az vm extension set command from Cloud Shell to download and run a PowerShell script that instals IIS and sets up a simple home page.
It takes a few of minutes to setup IIS, set the contents of the homepage, and start the service. If we like, we may investigate the PowerShell script in a different browser tab. The script sets up IIS and configures the home page to display a welcome message and the virtual machine’s computer name, “myVM.”
Thereafter run this az vm open-port command to open port 80 (HTTP) through the firewall.
az vm open-port \
–name myVM \
–resource-group
\
–port 80
How to Verify the configuration
After the IIS is set up, we shall begin verifying that it’s running.
Run this az vm show command to list your VM’s public IP address.
az vm show \
–name myVM \
–resource-group
\
–show-details \
–query [publicIps] \
–output tsv
Let us suppose we see your VM’s public IP address, for instance 104.211.9.245.
In a new browser tab, navigate to your VM’s IP address (http:// followed by the IP address). You’ll see your welcome message and your VM’s name.
Scale up
Now when the web server is up and running, we realize the need more computing power to make the experience great for users. Some of the ways to make the VM run faster are –
- In data center, you might move your web server to more powerful hardware to solve performance problems. The objective is that you need to buy, rack, and power your new system. With Azure, the answer is much simpler.
- Before scaling up your VM to a more powerful size, let’s first define what scale means.
What is Scale?
Scale refers to adding network bandwidth, memory, storage, or compute power to achieve better performance.
- Scaling up, or vertical scaling, refers to increase the memory, storage, or compute power on an existing virtual machine. For instance we can add additional memory to a web or database server to make it run faster.
- Scaling out, or horizontal scaling, refers to add extra virtual machines to power your application. For instance we might create many virtual machines configured in exactly the same way and use a load balancer to distribute work across them.
Because cloud deployments are elastic, we can scale down or scale in if we just need to scale up or scale out briefly. You may save money by scaling down or scaling up. Azure Advisor and Azure Cost Management are two services that can help you get the most out of your cloud budget. These services may be used to discover areas where we are utilising more capacity than we require, and subsequently scale back to the capacity we actually require.