课程 AZ-220T00-A: Microsoft Azure IoT Developer

本课程教导学生成功创建和维护Azure IoT解决方案的云和边缘部分(edge portions)所需的技能和知识。课程包括全面介绍核心Azure IoT服务,如IoT Hub(物联网中心)、设备配置服务(Device Provisioning Services)、Azure流分析(Stream Analytics)、时序见解(Time Series Insights)等。 除了将重点放在 Azure PaaS 服务以外,该课程还包含有关 IoT Edge、设备管理、监控、故障排除、安全问题、Azure Digital Twins、和 Azure IoT Central 的部分。

观众概况

Azure IoT 开发人员负责创建和维护 IoT 解决方案的 cloud 和 edge 部分所需要的实施和编码工作。除了使用Azure IoT服务和其他Microsoft工具来配置和维护设备外,IoT开发人员还要设置物理设备,并负责在整个生命周期中维护设备。IoT开发人员要实现IoT解决方案的设计,包括设备拓扑、连接、调试和安全。对于边缘(Edge)设备场景,IoT开发人员还要部署计算/容器并配置设备网络,其中可能包括各种边缘网关的实现。IoT开发人员要实现解决方案的设计,以管理数据管道,包括与IoT相关的监测和数据转换。IoT开发人员要与数据工程师和其他利益相关者合作,以保证业务集成的成功。IoT开发人员应该对Azure服务有很好的了解,包括数据存储选项、数据分析、数据处理,以及Azure IoT PaaS与SaaS的比较。IoT开发人员至少应具备一种Azure支持的语言的基本编程技能,包括C#,Node.js、C、Python或Java。

工作角色: 开发人员

获得的技能

  • 创建、配置和管理一个Azure IoT中心。
  • 通过IoT中心和DPS来配置设备,包括大规模地配置。
  • 在设备和IoT中心之间建立安全的双向通信。

先决条件

如需在该课程中取得成功,学习者应符合以下条件:

  • 云解决方案意识: 学生应该有使用Azure Portal(门户)的经验,并对PaaS、SaaS和IaaS实现有基本的了解。
  • 软件开发经验: 软件开发经验是本课程的先决条件,但不需要特定的软件语言,也不需要具有专业水平。
  • 数据处理经验: 建议对数据存储和数据处理有基本的了解,但这不是必需的。
  • 免费在线: Azure基础知识 (https://docs.microsoft.com/en-us/learn/paths/azure-fundamentals/)
  • 讲师指导课程: AZ-900: Azure基础知识 (https://docs.microsoft.com/en-us/learn/certifications/courses/az-900t01)

课程大纲

模块 1: IoT(物联网)和Azure IoT服务简介

在本模块中,学生将首先研究各种IoT实现的业务考虑事项,并回顾Azure IoT参考体系结构是如何支持IoT解决方案的。本模块还向学生概述了IoT解决方案中常用的Azure服务,并介绍了Azure portal(门户)。

课程

  • IoT的商机
  • IoT解决方案架构介绍
  • IoT硬件和云服务
  • 本课程的实验场景

实验室: Azure入门

实验室: 设置从Azure IoT服务开始

完成本模块后,学生将能够:

  • 解释IoT和Azure IoT如何应用到业务中
  • 描述Azure IoT解决方案体系结构的核心组件
  • 描述Azure物联网服务及其与物联网解决方案的关系
  • 创建Azure帐户,并使用Azure portal创建一个物联网中心和DPS服务

模块 2: 设备和设备通信

在本模块中,学生将进一步了解Azure IoT Hub服务,并学习如何在IoT Hub和设备之间配置安全的双向通信。学生还将了解物联网中心的功能,如设备孪生(Device Twins)和物联网中心端点(IoT Hub Endpoints),随着课程的继续,这些功能将得到更深入的探讨。

课程

  • 物联网中心和设备
  • 物联网开发工具(IoT Developer Tools)
  • 设备配置和通信

实验室: 设置开发环境

实验室: 将物联网设备连接到Azure

完成本模块后,学生将能够:

  • 解释物联网中心服务的核心功能
  • 描述Azure物联网设备的生命周期
  • 描述物联网中心如何管理设备标识和实现其他安全功能
  • 使用Azure portal、Azure CLI和Visual Studio Code向物联网中心注册设备
  • 实现IoT Hub Device and Service SDK(物联网中心设备和服务SDK)

模块 3: 大规模配置设备

在本模块中,学生们将重点学习设备配置以及如何配置和管理Azure Device Provisioning Service(设备配置服务)。学生将学习注册流程、自动配置和重新配置、取消注册以及如何实现各种认证机制。

课程

  • 设备配置服务术语和概念
  • 配置和管理设备配置服务
  • 设备配置任务

实验室: DPS中设备的单独注册

实验室: DPS中设备的自动注册

完成本模块后,学生将能够:

  • 解释设备配置的过程和设备配置服务的功能
  • 解释与设备配置相关的安全考虑事项,以及如何管理它们
  • 实现设备配置服务SDK
  • 管理设备注册过程,包括取消配置和取消注册

模块 4: 消息处理和分析

在本模块中,学生将研究如何使用IoT Hub和其他Azure服务来处理消息。学生将首先研究如何配置消息和事件路由,以及如何实现到内置和自定义端点的路由。学生将学习一些物联网解决方案中常见的Azure存储选项。为了完成模块,学生将实现Azure流分析和许多ASA模式的查询。

课程

  • 消息和消息处理
  • 数据存储选项
  • Azure流分析

实验室: 设备消息路由

实验室: 过滤和聚合消息数据

完成本模块后,学生将能够:

  • 配置消息和事件路由
  • 将数据路由到内置和自定义端点
  • 实现消息扩充(message enrichment)
  • 实现Azure流分析输入、查询和输出
  • 将消息数据存储在温存储(warm storage)中,以用于历史记录和其他分析
  • 在消息处理和分析解决方案中使用Azure函数

模块 5: 见解(Insights)与业务(Business)集成

在本模块中,学生将学习Azure服务和其他Microsoft工具,这些可用于生成业务见解和实现业务集成。学生们将实现Azure逻辑(Logic)应用程序和事件网格(Event Grid),并为数据可视化工具配置连接和数据转换,如时序见解(Time Series Insights )和Power BI。

课程

  • 物联网解决方案的业务集成
  • 用时序见解(Time Series Insights)实现数据可视化
  • 用Power BI实现数据可视化

实验室: 用事件网格集成物联网中心

####实验室: 利用时序见解(Time Series Insights)探索和分析时间戳数据

完成本模块后,学生将能够:

  • 解释物联网解决方案中的业务集成选项以及如何实现这些选项
  • 使用逻辑应用程序和事件网格开发业务集成支持
  • 配置物联网数据以便在时序见解(Time Series Insights)中可视化
  • 配置物联网数据以便在Power BI中可视化

模块 6: Azure IoT Edge(物联网边缘)部署流程

在本模块中,学生将学习如何将模块部署到Azure物联网边缘设备。学生还将学习如何配置和使用物联网边缘设备作为网关设备。

课程

  • Azure IoT Edge简介
  • 边缘部署过程
  • 边缘网关设备

实验室: IoT Edge简介

实验室: 设置物联网边缘网关

完成本模块后,学生将能够:

  • 描述物联网设备和物联网边缘设备之间的区别
  • 配置物联网边缘设备
  • 使用部署清单(deployment manifest)实现物联网边缘部署
  • 将物联网边缘设备配置为网关设备

模块 7: Azure 物联网边缘模块(IoT Edge Modules)和容器(Containers)

在本模块中,学生将开发和部署自定义边缘模块,并实现对依赖本地存储的离线场景的支持。学生将使用Visual Studio Code,通过一个受支持的容器引擎将自定义模块构建为容器。

课程

  • 开发定制边缘模块
  • 离线和本地存储

实验室: 在物联网边缘(Azure IoT Edge)上开发、部署和调试自定义模块

实验室: 在受限网络和离线状态下运行物联网边缘设备

完成本模块后,学生将能够:

  • 解释构建自定义边缘模块的要求
  • 配置Visual Studio Code以开发容器化模块(containerized modules)
  • 将自定义模块部署到物联网边缘设备
  • 在物联网边缘设备上实现本地存储,以支持离线场景

模块 8: 设备管理

在本模块中,学生将学习如何为其物联网解决方案实现设备管理。学生将开发使用设备孪生(devoice twins)的设备管理解决方案和使用直接方法(direct methods)的解决方案。

课程

  • 物联网设备管理简介
  • 管理物联网和物联网边缘设备
  • 大规模设备管理

实验室: 使用Azure物联网中心(IoT Hub)远程监控设备

实验室: 自动设备管理

完成本模块后,学生将能够:

  • 描述最常见的设备管理模式和配置最佳实践
  • 描述何时以及如何使用设备孪生(device twins)和直接方法(direct methods)来实现设备管理
  • 使用设备孪生和直接方法来实现各种模式的设备管理
  • 使用自动设备管理和作业实现大规模的设备管理

模块 9: 解决方案测试、诊断和日志记录

在本模块中,学生将配置日志记录和诊断工具,以帮助开发人员测试他们的物联网解决方案。学生将使用IoT Hub和Azure Monitor来配置警报和跟踪可用于解决问题的设备连接状态等状况。

课程

  • 监视和日志
  • 故障排除

实验室: 在Azure IoT Hub中配置指标(Metrics)和日志

实验室: 监视和调试连接故障

完成本模块后,学生将能够:

  • 描述用于监视和记录Azure物联网解决方案的选项
  • 配置Azure Monitor以支持物联网解决方案
  • 配置物联网中心指标以支持物联网解决方案
  • 实现诊断日志记录
  • 解决物联网设备连接和通信问题

模块 10: Azure安全中心和物联网安全注意事项

在本模块中,学生将研究适用于物联网解决方案的安全考虑因素。学生们将首先研究应用于解决方案架构和最佳实践的安全,然后了解Azure Security Center for IoT(物联网安全中心)如何支持设备部署和IoT Hub集成。最后,学生使用Azure Security Center for IoT Agents来增强他们的解决方案的安全性。

课程

  • 物联网解决方案的安全基础
  • Azure物联网安全中心简介
  • 使用Azure Security Center for IoT Agents来增强保护

实验室: 实现Azure物联网安全中心

完成本模块后,学生将能够:

  • 描述物联网解决方案的安全问题和最佳实践
  • 描述Azure IoT安全架构(Security Architecture)和威胁建模(Threat Modeling)
  • 描述Azure物联网安全中心提供的功能和支持
  • 配置安全代理(Security Agents )和安全模块孪生(Security Module Twins)
  • 聚合Azure物联网安全中心事件

模型 11: ADT

在该模型中,学生将研究 Azure Digital Twins 解决方案的概念,并迈出实施 ADT 的第一步。学生首先将研究 Azure Digital Twins 服务和 ADT 解决方案的概念,然后再对可用来构建和监控 ADT 解决方案的开发工具进行介绍。然后,学生将利用开发工具来创建自定义模型、构建和查询 ADT 环境图、进行 IoT设备遥测、以及实施业务逻辑和数据处理。

课程

  • Azure Digital Twins 简介
  • ADT 解决方案开发简介
  • 监控和排除 ADT 故障

实验室: 开发 Azure Digital Twins (ADT) 解决方案

完成该模型后,学生将能够:

  • 描述 Azure Digital Twins (ADT) 解决方案的组成部分
  • 说明如何创建及配置 ADT 实例
  • 说明如何创建、查询及管理 ADT 图
  • 说明如何从 IoT 中心获取 ADT 数据 ,以及为下游服务提供支持
  • 描述如何监控和排除ADT 故障

模块 12: 使用物联网中心(IoT Central)构建物联网解决方案

在本模块中,学生将学习如何配置和实现Azure物联网中心(IoT Central) 作为物联网SaaS解决方案。学生将首先高度调查物联网中心及其工作原理。在对物联网中心的建立有基本了解之后,学生将继续创建和管理设备模板,然后在他们的物联网中心应用程序中管理设备。

课程

  • 物联网中心简介
  • 创建和管理设备模板
  • 在Azure IoT Central中管理设备

实验室: 使用 IoT Central创建 IoT 解决方案

完成本模块后,学生将能够:

  • 描述Azure IoT Central和Azure IoT PaaS服务之间的区别
  • 描述Azure IoT Central提供的功能
  • 描述设备模板的用途和组件
  • 创建和发布设备模板
  • 使用规则和通知管理设备
  • 使用作业大规模管理设备