Azure Stack Hub 中的 PowerShell 入门
PowerShell 用于从命令行管理资源。 若要生成使用 Azure 资源管理器模型的自动化工具,可以使用 PowerShell。 可将 PowerShell 模块定义为一组 PowerShell 函数,用于对特定的区域进行全方面的管理。 若要使用 Azure Stack Hub,需要能够处理不同的 PowerShell cmdlet 集。
本文可帮助你了解 Azure Stack Hub 中使用的各种 PowerShell 模块。 在 Azure Stack Hub 中使用 PowerShell 时,可与任意四组 API 交互,如下表所示:
API | PowerShell 参考 | REST 参考 |
---|---|---|
Azure Resource Manager | Azure PowerShell 模块 | REST API 浏览器 |
Azure Stack Hub 资源管理器 | 管理 Azure Stack Hub 中的 API 版本配置文件 | 管理 Azure Stack Hub 中的 API 版本配置文件 |
Azure Stack Hub 管理员终结点 | Azure Stack Hub 管理模块 | [REST API 浏览器 - Azure Stack Hub](https://learn.microsoft.com/rest/api/?term=Azure Azure Stack 管理员) |
Azure Stack Hub 特权终结点 | 使用 Azure Stack Hub 中的特权终结点 |
每个接口将会联系 Azure 或 Azure Stack Hub 中的资源提供程序。 资源提供程序启用 Azure 功能。 例如,使用“Azure 计算”资源提供程序可以编程方式访问虚拟机及其支持资源的创建和管理功能。
资源提供程序不仅提供功能,而且还提供用于管理和配置资源的控件。 可以使用 Azure 资源管理器以编程方式访问资源提供程序。 然后,界面会提供适用于 PowerShell、Azure CLI 和你自己的 REST 客户端的图面。
在何处可以找到 Azure Stack Hub PowerShell
以下框图显示了 PowerShell 模块集之间的关系。 可以从计算机加载 PowerShell 模块,并管理 Azure 和 Azure Stack Hub。
Azure
Azure PowerShell 包含一组使用最新版 Azure 资源管理器处理 Azure 资源的 cmdlet。 Azure PowerShell 使用 .NET Standard 版本,这意味着你可以使用 Windows、macOS 和 Linux 上的 PowerShell 版本。 有关详细信息,请参阅 Azure PowerShell 入门。
Azure Stack Hub 资源管理器
Azure Stack Hub PowerShell 提供一组使用旧版 Azure 资源管理器的 cmdlet。 这些 cmdlet 与 Azure Stack Hub 中的资源提供程序兼容。 Azure Stack Hub 中的每个资源提供程序使用可在全球 Azure 中找到的旧版提供程序。 为了帮助协调 Azure Stack Hub 支持的每个提供程序版本,可以使用 API 配置文件。 有关详细信息,请参阅在 Azure Stack Hub 中管理 API 版本配置文件。
Azure Stack Hub 管理员
Azure Stack Hub 向云操作员公开一组资源提供程序用于安装和维护 Azure Stack Hub。 在 Azure 中,这种交互已从用户端抽离,作为 Azure 的一部分在幕后进行处理。 但是,企业可以使用 Azure Stack Hub 来支持私有云。 若要执行这些任务,操作员需要与 Azure Stack Hub 管理 API 交互。 有关详细信息,请参阅安装适用于 Azure Stack Hub 的 PowerShell。
Azure Stack Hub 特权终结点
对于 Azure Stack Hub 中的操作员活动(例如测试安装和访问日志),操作员可与特权终结点 (PEP) 交互。 PEP 是预先配置的远程 PowerShell 控制台,可为操作员提供刚好足够的访问权限来让他们完成特定的任务。 终结点使用 PowerShell Just Enough Administration (JEA) 公开一组受限的 cmdlet。 有关详细信息,请参阅使用 Azure Stack Hub 中的特权终结点。
Azure Stack Hub 工具
Azure Stack Hub 在 GitHub 存储库 AzureStack-Tools 中提供了脚本和其他 cmdlet。 AzureStack-Tools 托管用于管理资源以及将其部署到 Azure Stack Hub 的 PowerShell 模块。 如果你打算建立 VPN 连接,则可将这些 PowerShell 模块下载到 Azure Stack 开发工具包或基于 Windows 的外部客户端。 有关详细信息,请访问 AzureStack-Tools 页。
使用 Azure Stack Hub 中的 PowerShell
PowerShell 提供编程的方式来与 Azure 资源管理器交互。 可以使用交互式命令提示符;若要将任务自动化,可以编写脚本。
在长时间使用 Azure Stack Hub PowerShell 的过程中,你会发现需要反复安装模块。 如果你同时在使用 Azure,此例程可能会造成困扰,因为需要根据目标卸载再重新安装模块。
可以使用 Docker 容器来隔离本地计算机上的每个 PowerShell 版本。 若要使用 Docker 容器以便在不同的 PowerShell 模块集之间切换,请参阅使用 Docker 运行 PowerShell。
后续步骤
- 了解 Azure Stack Hub 中的 PowerShell 的 API 配置文件。
- 安装 Azure Stack Hub PowerShell。
- 了解如何创建 Azure 资源管理器模板以实现云一致性。