Reader small image

You're reading from  Azure for Architects. - Second Edition

Product typeBook
Published inJan 2019
PublisherPackt
ISBN-139781789614503
Edition2nd Edition
Tools
Right arrow
Author (1)
Ritesh Modi
Ritesh Modi
author image
Ritesh Modi

Ritesh Modi is a technologist with more than 18 years of experience. He holds a master's degree in science in AI/ML from LJMU. He has been recognized as a Microsoft Regional Director for his contributions to building tech communities, products, and services. He has published more than 10 tech books in the past and is a cloud architect, speaker, and leader who is popular for his contributions to data centers, Azure, Kubernetes, blockchain, cognitive services, DevOps, AI, and automation.
Read more about Ritesh Modi

Right arrow

Designing IoT Solutions

So far, we have been dealing with architectural concerns and their solutions on Azure in general. This chapter is not based on generalized architecture. This chapter is about one of the most disruptive technologies of this century. This chapter will get into the details of the Internet of Things (IoT) architecture and Azure.

This chapter will specifically cover the following topics:

  • Azure and IoT
  • Azure IoT overview
  • Device management:
    • Registering devices
    • Device-to-IoT-hub communication
  • Scaling IoT solutions
  • High availability of IoT solutions
  • IoT protocols
  • Using message properties for routing messages

IoT

To understand what IoT is better, let's go back a few years.

In the nineties, the internet was invented and became generally available. During this time, almost everyone moved toward having a presence on the internet and started creating static web pages. Eventually, the static content became dynamic and content was generated on the fly, based on context. In almost all cases, a browser was needed to access the internet. There was a plethora of browsers; without them, using the internet was a challenge.

During the first decade of this century, there was an interesting development growing – the rise of hand-held devices, such as mobile phones and tablets. Mobile phones started becoming cheaper by the day and available ubiquitously. The hardware and software capabilities of these handheld devices were improving considerably; so much so that people started using browsers...

IoT architecture

Before getting into Azure and its features and services with regards to IoT, it is important to understand the various components needed to create end-to-end IoT solutions.

Imagine that IoT devices across the globe are sending millions of messages every second to a centralized database. Why is this data being collected? To extract rich information about events, anomalies, and outliers to do with whatever those devices are monitoring.

Let's understand this in more detail.

IoT architecture can be divided into distinct phases:

  • Connectivity
  • Identity
  • Capture
  • Ingestion
  • Storage
  • Transform
  • Analytics
  • Presentation

The following diagram shows a generic IoT-based architecture. Data is generated or collected by devices and sent over to cloud gateways. The cloud gateway, in turn, sends the data to multiple backend services for processing. Cloud gateways are optional components...

Azure IoT

Now we've learned about the various stages of end-to-end IoT solutions. Each of these stages are crucial and their proper implementation is a must for any solution's success. Azure provides lots of services for each of these stages. Apart from these services, Azure provides IoT Hub, Azure's core IoT service and platform, which is capable of hosting complex, highly available, and scalable IoT solutions. We will dive deep into IoT Hub after going through some other services:

Identity

Azure IoT Hub also provide services for authenticating devices. IoT Hub provides an interface for generating unique identity hashes for each device. When devices send their messages containing this hash, an IoT Hub can...

IoT Hubs

IoT projects are generally complex in nature. The complexity arises because of the high volume of devices and data. Devices are embedded across the world; monitoring and auditing devices, storing data, transforming and analyzing petabytes of data, and finally taking action based on insights. Moreover, these projects have long gestation periods, and their requirements keep changing because of timelines.

If an enterprise wants to embark on a journey with an IoT project, sooner than later, it would be realized that the problems we just mentioned are not easily solved. These projects need enough hardware in terms of compute and storage to cope, for instance, and services that can work with such high volumes of data.

IoT Hub is a platform that is built to help ease and enable IoT projects for faster, better, and easier delivery. It provides all the necessary features and services...

High availability

IoT Hub is a PaaS platform from Azure. Customers and users do not directly interact with the underlying number and size of virtual machines on which the IoT Hub service is running. Users decide on the region, the SKU of the IoT Hub, and the number of units for their application. The rest of the configuration is determined and executed by Azure behind the scenes. Azure ensures that every PaaS service is highly available by default. It does so by ensuring that multiple virtual machines provisioned behind the service are on separate racks in the data center. It does this by placing those virtual machines on an availability set and on a separate fault and update domain. This helps in high availability for both planned as well as unplanned maintenance. Availability sets take care of high availability at data center level.

To achieve high availability across multiple...

Summary

IoT is one of the biggest upcoming technologies of this decade and is already disrupting industries. Things that sounded impossible are suddenly possible. IoT Hub is a platform that eases the creation and delivery of IoT solutions to the customer in a faster, better, and cheaper way. It provides implementations of all industry protocols, such as the MQTT protocol and AMQP, along with field gateways that can adapt non-standard devices. It provides high availability, scalability, and security features to both messages and the overall solution. It provides connectivity to a large number of Azure services and helps in routing messages to multiple different endpoints, each capable of processing messages. IoT can fast-track the entire development life cycle and help expedite time-to-market for companies.

Azure provides numerous data storage options and services. This is the...

lock icon
The rest of the chapter is locked
You have been reading a chapter from
Azure for Architects. - Second Edition
Published in: Jan 2019Publisher: PacktISBN-13: 9781789614503
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at £13.99/month. Cancel anytime

Author (1)

author image
Ritesh Modi

Ritesh Modi is a technologist with more than 18 years of experience. He holds a master's degree in science in AI/ML from LJMU. He has been recognized as a Microsoft Regional Director for his contributions to building tech communities, products, and services. He has published more than 10 tech books in the past and is a cloud architect, speaker, and leader who is popular for his contributions to data centers, Azure, Kubernetes, blockchain, cognitive services, DevOps, AI, and automation.
Read more about Ritesh Modi