Microsoft Azure is a collection of online services that organisations can use to build, host, and deliver applications. You don’t need to have your own data center because Azure runs in Microsoft’s data centers around the world. Not only does this approach save you the trouble of having to build and maintain your own on-premises IT infrastructure, but it can also save you money, because you only have to pay for what you use, and you can scale your Azure resources up and down as needed.
In this course, you will not only get an overview of the Azure services available in various categories, such as compute, storage, and networking, but you will also follow hands-on examples showing you how to create virtual machines and web apps using the Azure Portal and Azure command-line interface.
- Describe some of the Azure services available in various categories
- Use the Azure Portal
- Use the Azure command line
- Anyone who would like to learn more about Azure
- General technical knowledge
- A Microsoft Azure account is recommended (sign up for a free trial at https://azure.microsoft.com/free if you don’t have an account)
The GitHub repository for this course is at https://github.com/cloudacademy/azure-overview
So far, I've only talked about compute, storage, and networking services, but Microsoft offers services in many other categories as well. I won't talk about all of the Azure services available, but I'll go over some of the highlights.
If your organization is just getting started with Azure, then one of the first things you'll want to do is figure out how you can migrate at least some of your existing applications to Azure. Microsoft provides a great tool for this called Azure Migrate.
First, it discovers your on-premises servers, both physical and virtual. On the virtual side, this includes both Hyper-V and VMware. Then it assesses these machines. For each one, it tells you whether or not it's ready to migrate, how big the Azure VM will be, how much it will cost, and any dependent servers that will also need to be migrated. When you're ready, it will even help you do the migration. Azure Migrate is also integrated with other tools to help you migrate SQL Server databases, web apps, and data. Also, if you have a virtual desktop infrastructure, there's a tool that will do an assessment to help you migrate it to Windows Virtual Desktop, which is hosted on Azure.
Another question that always comes up is, "How do we integrate our on-premises identities with Azure?" In most cases, organizations are using Active Directory for identity management. Naturally, Microsoft has a good solution for these customers. And, not surprisingly, it's called Azure Active Directory. This is a managed identity service that takes care of authentication. It's not exactly the same as Active Directory, but it's very similar, and there are many options for synchronizing your on-premises directory with your Azure directory.
Let's move on to the development area. The DevOps approach has spread rapidly in organizations around the world. If you're not familiar with it, the idea is that you can automate large portions of the building, testing, and releasing of application updates. Microsoft offers a suite of services called Azure DevOps to help you implement these processes. The most important service in this suite is called Azure Pipelines. It lets you create automated workflows to continuously build, test, and deploy code.
Another service that helps with the development process is Azure DevTest Labs, which makes it easy to spin up non-production environments. You could do this in other ways, but DevTest Labs gives you some extra capabilities, such as allowing administrators to control costs by setting limits on how many VMs can be deployed at once and ensuring that VMs are shut down when they're not in use.
One really helpful service for speeding up the responsiveness of your applications is Azure Content Delivery Network, which lets you take advantage of Microsoft's extensive global network. It caches your most frequently accessed content in locations around the world so your end-users will retrieve it from the closest point on the network. This really helps with making your web applications feel more like local applications.
Although there are billions of computers connected to the internet, they're dwarfed by the number of other devices connected to the internet, such as smart thermostats or power meters. This is often referred to as the Internet of Things or IoT.
Microsoft offers a suite of services to help organizations connect, monitor, and control IoT devices. The simplest way to get started is to use Azure IoT Central, which is a fully managed SaaS solution that takes care of the technical details for you. It lets you create IoT applications without writing any code.
If you need something more customized, then you can integrate your applications with Azure IoT Hub. It's a service that handles secure communications with thousands, or even millions, of IoT devices. In fact, it's the service that IoT Central uses behind the scenes.
Microsoft also offers a solution called Azure Sphere to make your IoT devices more secure. It includes certified chips, the Azure Sphere operating system, and the Azure Sphere Security Service, all of which provide layers of protection for your IoT devices.
When you have a large volume of data coming in, whether it's from IoT devices or applications, you'll probably want to perform analytics on it. Microsoft's analytics offerings have evolved over time, which is why you'll see a variety of services in this area.
The oldest one is HDInsight. It supports a wide variety of open-source big data frameworks, including Hadoop, Spark, Hive, Storm, and many others. Azure Databricks is a similar service because it runs Spark as well, but it's more user-friendly and easier to manage than HDInsight. Azure Synapse Analytics is the new version of Azure SQL Data Warehouse. It includes all of the old data warehouse functionality, but it also supports Spark analytics. Have you noticed a common theme? Apache Spark seems to be the king of big data analytics, and it's just a question of which service you want to use to run it.
A more sophisticated type of analytics is artificial intelligence. You've probably heard about the amazing advances in AI that have enabled computers to do everything from language translation to facial recognition to beating humans at games like chess and Go.
Even though AI seems like it must be incredibly complex, the basic idea is fairly simple. The most common method is called machine learning. The way it works is you feed lots of real-world data into a program and the program tries to make generalizations about the data. This is known as training a model. It then uses these generalizations to make predictions when it's given new data. For example, it can analyze the viewing habits of millions of Netflix customers and make generalizations about the kinds of movies that different types of people like to watch. Then it can look at movies you've watched in the past and predict which movie you'd like to watch now. That's how Netflix makes its recommendations.
Microsoft offers lots of different AI services. If you're new to AI, then the best place to start is Azure Cognitive Services. This is a collection of pre-built artificial intelligence tools. These services let you add AI capabilities to applications even if you don't know anything about machine learning.
They're grouped into five categories: decision, language, speech, vision, and web search. For example, the vision category includes the Computer Vision API, which can classify images, and the Face API, which can detect faces in images.
A related offering is Azure Bot Service, which gives you the tools to create a chatbot. This is an intelligent agent that can answer questions. For example, you could create a chatbot to handle simple support requests from customers.
If you have some basic knowledge of machine learning, then you might want to try Azure Machine Learning Studio. It lets you train and deploy machine learning models without any coding, using a drag-and-drop interface. I highly recommend it for learning the basics of machine learning.
A much more sophisticated option is Azure Machine Learning Services, which gives you full control over every stage of the machine learning process. You can use any Python-based machine learning framework, such as TensorFlow or PyTorch, train models using services such as Azure Databricks, and deploy models using services such as Azure Kubernetes Service. Azure Machine Learning Services is usually the best solution when you need to build your own custom artificial intelligence application.
The last category I'll mention is integration tools. Since we use so many applications and services, it would be nice to be able to perform certain tasks on them automatically. For example, suppose you have an Azure blob container that your customer uploads documents to, and you'd like to be notified by email as soon as one arrives so that you can respond to it as quickly as possible. Microsoft offers a service called Azure Logic Apps that lets you automate this sort of task without writing any code. You can create a logic app using a drag-and-drop interface.
In this example, the logic app would be able to detect events that occur in Blob storage, but in most cases, you'd need to use another service called Azure Event Grid to notify your logic app of particular events. For example, if you want to get an email every time a virtual machine is created in a subscription, then you would configure Event Grid to send a message to your logic app whenever this occurs.
These examples are actually pretty trivial. Azure Logic Apps can be used to build complex workflows involving not only Azure services but also third-party services, such as Twitter and Dropbox.
I've covered some of the most important Azure services, but there are many more that I didn't cover. So if you have a need that doesn't seem to fit with any of these services, there are plenty of other options. First, you can look through Microsoft's Azure Products page. Another way is to select all services from the main menu in the Azure Portal and then search for what you need. If you still can't find what you're looking for, then you can search the Azure Marketplace from the search bar at the top of the portal. The Marketplace includes a wide variety of third-party solutions that work with Azure, such as Docker Enterprise or Barracuda Firewall.
Okay, that's it for my services overview.
Guy launched his first training website in 1995 and he's been helping people learn IT technologies ever since. He has been a sysadmin, instructor, sales engineer, IT manager, and entrepreneur. In his most recent venture, he founded and led a cloud-based training infrastructure company that provided virtual labs for some of the largest software vendors in the world. Guy’s passion is making complex technology easy to understand. His activities outside of work have included riding an elephant and skydiving (although not at the same time).