部署基础知识

部署 涉及对应运行相同应用程序和 OS 版本的 Azure Sphere 设备进行分组,打包要在每组设备上运行的应用程序,将包上传到 Azure Sphere 安全服务,并将部署分配给一组设备。 本主题定义部署中涉及的基本元素。

命名约定

产品和设备组的名称只能包含字母数字字符和空格。 它不能超过 50 个字符。 如果在名称中包含空格,请在命令中使用时将名称括在双引号中。

设备 ID

Azure Sphere 设备 ID 唯一标识单个 Azure Sphere 芯片。 设备 ID 存储在设备本身上。 部署的所有其他元素都与 Azure Sphere 安全服务一起存储。

设备 ID 很容易被欺骗、伪造或滥用。 因此,应仅允许其标识可以验证和验证的设备访问高价值数据并连接到服务。 有关详细信息以及解决此问题的建议,请参阅 设备标识和安全性

产品

产品标识并入连接设备以执行特定功能的 Azure Sphere MCU。 作为制造商,您可以为每个型号的连接设备(如咖啡机或咖啡机)创建一个产品。 例如,Contoso 为其 DW100 洗衣机创建一个产品,并在制造过程中将该产品分配给每个 DW100 洗衣机。 每个产品都有一个在租户中唯一且无法更改的 GUID。每个连接的设备都有一个产品,但单个产品可以与许多设备相关联。 每个产品都有一个在其租户中必须唯一的名称以及说明。 产品名称和说明提供了一种可读的方式来区分一种产品与另一种产品。 可以根据需要经常修改产品名称和说明。 有关详细信息,请参阅 管理产品

设备组

设备组是同一产品类型的设备的命名集合。 设备组提供了一种将应用程序部署缩放到许多设备的方法。 每个设备只属于一个设备组,每个设备组只属于一个产品。 创建产品时,会在产品中创建默认设备组,以帮助完成基本功能,例如测试和生产部署。 尽管每个产品中的默认组名称相同,但设备组是唯一的。 默认设备组为:- 开发:开发组供旁加载应用程序作为开发过程的一部分的开发人员使用。 默认情况下,此组中的设备仅接收系统软件更新;应用程序更新已禁用。 - 现场测试:现场测试组供在实验室或现场试用中测试设备的开发人员使用。 默认情况下,此组中的设备接收零售 OS 源和所有应用程序更新。 - 生产:生产组适用于特定产品的生产设备。 默认情况下,此组中的设备接收零售 OS 源和所有应用程序更新。 - 现场测试 OS 评估:现场测试 OS 评估组供在实验室或现场试用中验证 Azure Sphere OS 新版本与测试设备上的应用程序的兼容性的开发人员使用。 默认情况下,此组中的设备接收零售评估 OS 源和所有应用程序更新。 - 生产 OS 评估:生产 OS 评估组用于验证 Azure Sphere OS 新版本与生产应用程序的兼容性。 默认情况下,此组中的设备接收零售评估 OS 源和所有应用程序更新。可以选择创建其他设备组来组织产品。 例如,Contoso 可能会对其工程实验室中的设备使用开发组,并使用现场测试组来表示其部署团队在公司运营中心中使用的设备。 但是,Contoso 可能会为不同地理区域中的设备创建组,以便可以轻松部署其应用程序的本地化版本,而不是将所有生产设备置于生产组中。若要将应用程序部署到 Azure Sphere 设备,请将其分配给设备组。 设备组中的每个设备将自动接收分配给其组的应用程序;将删除任何其他应用程序。 有关详细信息,请参阅 管理设备组

应用

应用程序是执行特定连接设备特定任务的程序。 部署将应用程序传递到与这些连接设备关联的产品。

映像和映像包

映像是表示应用程序或板配置的单个版本的二进制文件。 图像是不可变的:上传图像后无法修改该映像。 对于应用程序,映像包括应用程序的二进制文件及其图像元数据。 映像包是映像及其由生成过程生成的元数据的组合。 每次 SDK 生成或重新生成 Azure Sphere 映像包时,它都会使用新的唯一映像 ID。

当 Contoso 为其 DW100 洗衣机开发应用程序时,SDK 会创建一个可以部署到任何设备组的映像包。

芯片 SKU 和系统软件

作为产品制造商,你开发和管理应用程序,而 Microsoft 负责开发和管理系统软件组件。 系统软件组件面向 芯片 SKU。 芯片 SKU (库存单位) 标识特定类型的 Azure Sphere 兼容 MCU。 芯片 SKU 由 Microsoft 分配,无法更改。 Microsoft 使用此 SKU 向每个 Azure Sphere 设备提供正确的系统软件更新。

部署

简单来说, 部署 是将一组映像包传递到一个或多个设备。 通过以下方式创建部署:

创建部署 提供了创建云部署的分步说明。

Azure Sphere 安全服务面向具有与该组关联的部署的设备组的所有成员,并且仅面向这些部署。 这意味着,如果将设备从一个组移动到另一个组,则设备将仅接收与新设备组关联的部署 ((如果有任何) );设备上已存在的任何其他映像包 (或板配置) 都将被删除。 因此,安全服务确保每个设备都具有其部署指定的所有映像,而没有其他映像。

无法删除或关闭设备组的部署,但可以通过为设备组创建新部署来更新现有部署。 如果要从特定设备中删除部署,可以将设备移动到未分配部署的另一个设备组。

Azure Sphere EU 数据边界合规性

为了符合 Microsoft 在欧盟内专门处理和存储欧盟客户数据的使命,Azure Sphere 安全服务使欧盟客户能够保护其应用程序映像文件和 Azure Sphere 设备故障转储文件中的潜在敏感客户信息。 客户可以通过在新的“区域数据边界” EU 设置中选择,确保仅在欧盟内处理和存储其应用程序映像和故障转储文件。 新的区域数据边界设置是一个可选参数,--regional-data-boundary可用于 azsphere imageazsphere device-group 命令。

有关如何访问区域数据边界设置的详细信息,请参阅 创建部署配置故障转储

使用 Azure Sphere 经典 CLI 和 Azure Sphere CLI

Azure Sphere CLI 与 Windows 和 Linux 上的 Azure Sphere 经典 CLI 一起安装,因此你可以访问任一接口。 若要使用 Azure Sphere CLI,请:

  • 在 Windows 上,使用 PowerShell 或标准 Windows 命令提示符。
  • 在 Linux 上,使用任何命令行界面。 如果在 SDK 安装过程中将 Azure Sphere CLI 设置为默认值,请指定 azsphere 命令;如果将 Azure Sphere 经典 CLI 设置为默认值,请指定 azsphere_v2 命令。

有关 Azure Sphere CLI 支持的功能和命令的详细信息,请参阅 Azure Sphere CLI。

重要

在 Windows 上, Azure Sphere 经典开发人员命令提示符 (停用) 快捷方式只能与 Azure Sphere 经典 CLI 一起使用。