Azure CLI 可以在哪些操作系统中使用?

2025年6月5日 | 阅读 17 分钟

什么是 Azure CLI?

一组命令行工具集合被称为Microsoft Azure CLI(命令行界面)。它用于管理和与Microsoft Azure 云服务和资源进行交互。与使用图形用户界面(GUI)不同,用户可以通过命令行完成各种与 Azure 相关的任务。

它提供了基于统计学的网络连接,用于与Microsoft Azure进行交互,并且是开发、部署和管理大量基于云的功能(包括虚拟机、数据库和 Web 应用程序)的最佳平台之一。

Azure CLI 的功能

Azure CLI 具有多种功能。以下是 Azure CLI 的一些主要功能:

  • 跨平台: Azure CLI 与Windows、macOSLinux系统兼容。由于其跨平台互操作性,无论用户偏爱哪种编程环境,都可以使用它。
  • 资源管理 是控制 Azure 对象(如虚拟机、存储帐户和数据库)的过程。
  • 它使用模板和自动化脚本在 Azure 上创建基础结构和应用程序。
  • 访问、配置和维护 Azure 产品设置和功能。
  • 网络 是为网络安装硬件和软件程序(包括负载均衡器、VPN 网关和虚拟机网络)的过程。
  • 自动化和脚本环境: Azure CLI 通常在这些场景中使用。用户能够通过脚本和过程自动化耗时操作的能力,极大地简化了 Azure 对象的维护。
  • 集成 Azure 服务: Azure CLI 与Azure DevOps、Azure PowerShell 和 Azure Cloud Shell 互操作。因此,您可以使用各种 Azure 工具和设置来与 Azure 中的资源和服务进行交互。
  • Azure CLI 的交互模式提供了一个可以输入和执行命令的场景。对于熟悉 Azure CLI 功能的新用户来说,这将是一个优势。
  • 丰富的输出类型: Azure CLI 提供多种输出格式,包括YAML、JSON和人类可读的表格。无论是交互式还是脚本化,用户都可以选择最符合其要求的输出格式。
  • 可以通过添加扩展(增强功能的插件)来增强 Azure CLI。这些插件可以增强 Azure CLI 在特定任务或场景中的性能。
  • 基于角色的访问控制RBAC允许用户通过分配角色和权限来与系统进行交互,限制谁可以对 Azure 资源执行特定操作。Azure 环境的能力得到增强,并提供了安全性。

Microsoft Azure Cloud Shell 是一个交互式 Shell 环境。它是基于 Web 的,允许用户通过 Azure 网站直接访问 Azure 服务。您也可以通过 Azure Cloud Shell 访问Azure CLI。用户可以在任何有互联网连接的设备上管理 Azure 资源,而无需手动安装 Azure CLI。

Azure CLI 是一个强大且多功能的工具,用于管理 Azure 资源。它允许包括开发人员、系统管理员、DevOps 工程师和云架构师在内的广大用户以授权和结构化的方式与 Azure 进行交互。由于其命令行特性,它在云自动化和脚本服务方面非常有用。

允许使用 Azure CLI 的操作系统。

有几种操作系统允许Azure CLI使用。以下是一些主要的操作系统:

Windows

功能强大的命令行界面Azure CLI for Windows 允许 Windows 用户管理 Azure 资源和服务。

安装

在使用 Azure CLI 之前,您必须在 Windows 上安装它。让我们通过以下步骤快速轻松地在 Windows 上安装 Azure CLI:

  • 步骤 1: 打开任何浏览器,如 Chrome、Edge 或 Opera,然后访问 Azure CLI 安装的官方网站:https://docs.microsoft.com/en-us/cli/azure/install-azure-cli-windows
  • 步骤 2: 在安装页面,有两个选项:“MSI Installer”“Windows Subsystem for Linux (WSL)”,其中 MSI Installer 是最常用和推荐的。

MSI Installer: 这种简单的安装方法为 Azure CLI 提供了原生的 Windows 界面。

Windows Subsystem for Linux: 如果您更喜欢类 Linux 环境,可以在 Windows Subsystem for Linux 中安装 Azure CLI。

  • 步骤 3: 要安装软件,请双击下载的安装程序(它很可能名为“AzureCLI.msi”)。
  • 步骤 4: 按照安装向导的说明进行操作。通常可以保留安装设置的默认值。
  • 步骤 5: 安装完成后退出安装程序。

如果您想启动 PowerShell 或命令提示符:按 Windows 键+R,输入 cmd,然后单击“确定”。

PowerShell: 按 Windows 键 + R 然后按 Enter 即可进入 PowerShell。

登录

在使用 Azure CLI 之前,您必须先连接到您的 Azure 帐户。

  • 步骤 1: 输入以下命令并单击“az login”。
  • 步骤 2: 您的默认 Web 浏览器将打开一个新的窗口或选项卡,要求您登录到您的 Azure 帐户。按照说明完成登录过程。
  • 步骤 3: 成功登录后,返回命令提示符或 PowerShell 窗口。现在,您应该会收到一条通知,告知您登录成功。

使用 Azure CLI

  • Az account list - 可以使用输出表格查看所有订阅。
  • 如果要创建虚拟机,请键入 az vm create --resource-group "YourResourceGroupName"
  • 如果要为当前会话配置默认订阅,请键入 az account set --subscription "Your Subscription Name" 名称为 "YourVMName" -Icon "UbuntuLTS" “YourAdminUsername” 是管理员用户名。“YourAdminPassword” 是管理员密码。

Azure CLI 在 Windows 上的独特功能

在 Windows 上使用时,Azure CLI 具有一些独特的功能,使其成为管理 Windows 环境中 Azure 服务的强大工具。

  • 原生 Windows 体验: Azure CLI 旨在尽可能接近原生 Windows 体验,为 Windows 用户提供舒适的体验。与 Windows 命令提示符和 PowerShell 一起使用时,它提供了一个统一的命令行界面。
  • 与 PowerShell 集成: 尽管 Azure CLI 是一个独立的命令行工具,但它与 Windows 强大的脚本环境 PowerShell 集成良好。用户可以通过使用 PowerShell 执行 Azure CLI 任务来结合两个平台的优势。
  • MSI 安装程序: Azure CLI for Windows 以MSI 安装程序的形式提供,以简化安装。由于它可以像任何其他 Windows 应用程序一样下载和安装,因此它可供广泛的用户使用。
  • 跨平台兼容性: 尽管 Azure CLI 是为 Windows 而设计的,但它是跨平台的,在 Linux 和 macOS 上同样运行良好。用户将始终拥有在使用 Azure 功能时的一致体验,这种跨平台兼容性可在多种环境中实现。
  • 与 Azure Cloud Shell 集成: Azure CLI 与 Azure Cloud Shell 协同工作,Azure Cloud Shell 是云中集成的基于 Web 的 Shell 环境。可以通过 Web 浏览器访问 Azure CLI,无需本地安装。
  • Bash 兼容性: 除了提供 Windows 原生界面外,Azure CLI 还支持Bash和其他类 Unix Shell。这对于习惯于命令行环境(例如 Linux 中的环境)的用户很有用。
  • Windows 版Azure CLI 的制表符补全功能使其更易于发现和使用命令和参数。用户可以通过使用Tab 键来获取完整的命令、参数名称和其他信息,从而减少输入错误。
  • 扩展是提供额外功能的附件;它们可以通过Azure CLI添加。用户可以通过配置和管理适合其特定需求的扩展来扩展 Azure CLI 的功能。
  • 人类可读的表格、JSON 和 YAML是 Azure CLI 支持的输出格式之一。用户可以选择最适合其需求的输出格式,无论是交互式还是脚本化。
  • 对于使用该服务进行持续集成和交付(CI/CD)的 Windows 用户,Azure CLI 可以快速集成到Azure DevOps 管道中。作为CI/CD 流程的一部分,它允许自动化和管理 Azure 资源。
  • Azure Active Directory B2C 命令: 对于管理面向客户的应用程序的身份体验,Windows 版 Azure CLI 提供了 Azure Active Directory B2C(业务到消费者)命令。
  • 与 Windows 服务集成: Azure CLI允许 Windows 用户访问 Azure 服务,如Azure App Service、Azure SQL DatabaseAzure Blob Storage。在 Windows 上运行的应用程序通常会使用这些服务。
  • Azure DevOps 集成: 对于使用Azure DevOps进行持续改进和持续交付(CI/CD)的 Windows 用户,Azure CLI 可以轻松集成到 Azure DevOps 管道中,从而在 CI/CD 流程中提供对 Azure 资源的控制和管理。
  • Windows 版 Azure CLI 提供了 Azure Active Directory B2C(业务到消费者)命令,用于处理与客户交互的应用程序的身份体验。
  • 与 Windows 服务集成: 通过使用 Azure CLI,Windows 用户可以与 Azure 服务(包括 Azure App Service、Azure SQL Database 和 Azure Blob Storage)连接,这些服务经常在基于 Windows 的应用程序中使用。

在 Windows 上使用 Azure CLI 的缺点

在 Windows 上使用 Azure CLI 有几个缺点。以下是一些主要缺点:

  • 命令行学习曲线: 对于不熟悉命令行界面的用户来说,Azure CLI 可能比图形界面更具挑战性。学习和记住正确的语法和命令可能需要一些时间。
  • 有限的图形反馈: 与图形界面相比,Azure CLI 提供的基于文本的反馈在视觉上不太吸引人。因此,解释复杂的工具组合或可视化可能很困难。
  • 复杂命令: 一些 Azure CLI 命令可能相当复杂,因为它们包含许多选项和参数。对于初学者来说,成功创建和执行这些命令可能很困难。
  • 错误处理: 当命令执行出现问题时,Azure CLI 可能会显示需要调查的长错误消息。对于不熟悉错误诊断的用户来说,这可能很有挑战性。
  • 有限的 GUI 集成: 尽管Azure CLI与 PowerShell 配合良好,但它可能不如专为 Windows 设计的其他 Azure 产品那样具有图形集成。对于需要基于 GUI 的管理的用户来说,它可能不那么方便。
  • 安装和更新: 尽管处理更新可能需要用户干预,但 MSI 安装程序简化了安装。为了获得最新功能和支持,及时更新 Azure CLI 至关重要。
  • 平台依赖性: 尽管 Azure CLI 是跨平台的,但以 Windows 为中心的用户可能无法充分利用其跨平台功能。他们在混合环境中工作的用户可能无法获得相同的平台一致性。
  • 资源管理开销: 在安装复杂资源时,用户可能需要掌握ARM 模板,因为 Azure CLI 不涵盖 ARM 模板的底层复杂性。

MacOS

macOS 版 Azure CLI(命令行界面)为 macOS 用户提供了一个强大的工具,可以从他们的 macOS 环境直接管理Microsoft Azure资源和服务。

特点

在 macOS 上使用时,Azure CLI 具有多种功能。以下是 Azure CLI 的一些主要功能:

  • Homebrew 安装: 使用流行的 macOS 包管理器 Homebrew,可以轻松地在 macOS 上安装 Azure CLI。这种简化的安装过程简化了 Azure CLI 的设置和升级,确保 macOS 用户始终拥有最新版本。
  • macOS 集成: Azure CLI 与 macOS 操作系统兼容。它在Terminal中运行,为 macOS 用户提供了一个原生且熟悉的命令行环境。
  • Visual Studio Code 集成: macOS 用户可以利用 Azure CLI 与 Visual Studio Code (VS Code) 的集成。Azure CLI 命令可以直接从 VS Code 的集成终端执行,这对于开发人员和云管理员来说非常方便。
  • Bash 兼容性: macOS 上的 Azure CLI 与操作系统的本地 Shell Bash 配合良好。它简化了熟悉 Bash 的 macOS 用户与 Azure CLI 命令的交互。
  • 脚本和自动化: macOS 用户可以使用 Azure CLI 来执行脚本和自动化任务。Azure CLI 命令易于集成到Bash 脚本中,从而简化了资源管理和部署操作。
  • 资源可视化: 尽管 Azure CLI 主要基于文本,但 macOS 用户可以使用基于 macOS 的工具或脚本按需可视化 Azure 资源和配置。
  • 持续集成和持续开发: 对于使用CI/CD 管道的 macOS 用户,Azure CLI 非常有用。您可以在开发工作流程中,使用 Azure CLI 命令自动化部署流程、与版本控制系统交互以及编排云资源。
  • Azure 机器学习服务: 您还可以使用 Azure CLI 来管理 Azure 机器学习服务,包括模型部署、池化和实验。macOS 用户可以为机器学习应用程序使用这些功能。
  • Azure Arc 集成: Azure CLI 支持Azure Arc,允许 macOS 用户将 Azure 管理和扩展到本地和多云环境。它允许集中管理混合基础架构
  • Azure Key Vault 命令: Azure CLI 为 macOS 用户提供了与 Azure 密钥保管库(Azure 的机密管理和密钥管理服务)进行交互的命令。您可以使用Azure CLI轻松地在 macOS 上创建、维护和访问机密和密钥。
  • Azure Functions 支持: Azure CLI for macOS 是一个用于管理 Azure Functions(Microsoft 的无服务器计算平台)的命令行界面。您可以直接从 macOS 设备创建、部署和管理 Azure Functions。
  • 资源锁定管理: macOS 用户可以使用 Azure CLI 在 Azure 资源上设置和管理资源锁定,以防止意外删除或更改,从而为他们提供更多的资源控制和治理。
  • 与 Azure Logic Apps 集成: macOS 用户可以使用 Azure CLI 来开发、管理和自动化 Azure Logic Apps,这些应用程序可用于协调操作和与多个服务集成。Azure CLI 允许您直接从 macOS 终端配置 Logic Apps。
  • 使用 ARM 模板进行资源部署: macOS 上的 Azure CLI 允许 Azure 资源部署以及使用Azure Resource Manager (ARM) 模板。通过在 ARM 模板中定义基础设施即代码 (IaC)并使用 Azure CLI 进行部署,您可以自动化资源预配和配置。
  • Azure Kubernetes Service (AKS) 管理: Azure CLI 允许 macOS 用户创建、管理和扩展 Azure Kubernetes Service (AKS) 集群。
  • Azure Cosmos DB 管理: Azure CLI 支持Azure Cosmos DB,这是一个全球分布式、多模型数据库服务。从 macOS 终端,您可以创建和配置 Cosmos DB 帐户、数据库和容器。
  • 备份和恢复: macOS 版 Azure CLI 可用于配置和管理 Azure 备份产品,包括虚拟机、数据库和文件的备份。它确保数据安全和灾难恢复能力。

这些功能突显了 Azure CLI 在 macOS 上的适应性和全面性,使其成为 macOS 用户管理 Azure 资源、自动化流程和确保高效云运营的重要工具。

在 macOS 上使用 Azure CLI 的缺点

  • 学习曲线: 对于不熟悉命令行界面的用户来说,Azure CLI 可能存在学习曲线。学习和记忆用户命令和语法可能需要时间,而且它可能不如使用图形用户界面那样直观。
  • 有限的离线使用: 为了正常运行,Azure CLI 通常需要互联网连接。在连接有限或没有连接的情况下,macOS 用户在执行命令或脚本时可能会遇到问题。
  • 资源可视化: Azure CLI 缺少资源的图形表示或资源层次结构。对于喜欢可视化或图表的用户来说,它可能不太方便。
  • 命令发现: 与图形界面相比,在 Azure CLI 中查找可用命令及其选项可能更困难。为了研究命令,用户可能需要依赖文档或--help 标志(命令)
  • 平台依赖性: 尽管 Azure CLI 被设计为跨平台,但熟悉 macOS 环境的用户可能无法充分利用其跨平台功能。他们在混合环境中工作的用户可能无法获得与他们相同的平台一致性。
  • GUI 集成: 由于 Azure CLI 本质上是一个命令行工具,它可能缺乏一些 macOS 特定 Azure 产品中存在的图形集成。对于那些偏爱基于 GUI 的全面管理的用户来说,它可能不太方便。

值得注意的是,这些缺点在命令行界面中很常见,并且不是 Azure CLI 或 macOS 平台独有的。许多用户认为自动化、脚本和精细控制的功能 outweighs 了使用 Azure CLI 或类似命令行界面的学习曲线和其他负面因素。最终,所选工具取决于用户的个人需求、偏好以及对命令行界面的熟悉程度。

Linux

在 Linux 操作系统上使用Azure CLI为 Linux 用户提供了一个强大的工具,可以从他们的 Linux 环境直接管理 Microsoft Azure 资源和服务。

在 Linux 操作系统上使用Azure CLI为 Linux 用户提供了一个通用且全面的工具,可以方便地从 Linux 终端管理 Azure 资源和服务。它提供了自定义、自动化以及与基于 Linux 的开发和管理工作流程的无缝集成。

特点

  • 包管理器安装: 许多 Linux 发行版通过其包管理器提供 Azure CLI,从而简化了安装和更新。Azure CLI 可通过通用命令进行安装,如 Debian/Ubuntu 的“apt-get”或 Red Hat/CentOS 的“yum”
  • 脚本化安装: Microsoft 为各种 Linux 发行版提供了安装脚本,简化了用户的设置过程。这些脚本可以检测发行版并安装 Azure CLI,确保兼容性和易于设置。
  • Linux 终端集成: Azure CLI 与 Linux 终端无缝集成,为 Linux 用户提供了强大而便捷的命令行体验。它遵循 Linux 终端的标准和行为,使其感觉像是该环境的重要组成部分。
  • Bash 兼容性: Azure CLI 与Bash shell完美兼容,Bash 是几乎所有 Linux 发行版的默认 Shell。熟悉 Bash 脚本的 Linux 用户可以轻松使用 Azure CLI 命令。
  • 脚本和自动化: Linux 用户可以充分利用 Azure CLI 的脚本功能来自动化资源管理和部署流程。Azure CLI 命令可以与 Shell 脚本集成,以简化复杂的任务。
  • 输出灵活性:Azure CLI中,用户可以选择输出格式,这对于脚本化特别有用。根据他们的偏好和自动化需求,Linux 用户可以从表格(默认)、JSON、YAML 和其他格式中进行选择。
  • Linux 特定工作流程: Linux 管理员和开发人员可以轻松地将 Azure CLI 集成到他们现有的基于 Linux 的整体流程中,采用常见的云管理工具和实践。
  • 脚本可移植性: 在 Linux 上使用 Azure CLI 开发的脚本通常可以在不同的 Linux 发行版之间,甚至在 Linux 和 macOS 之间移植,从而实现跨平台部署的灵活性。
  • 资源标记和元数据: Azure CLI 允许 Linux 用户为 Azure 资源添加信息,从而实现更有效的资源组织、监控和分类。标记对于资源标识和成本管理很有用。
  • 持续更新: Microsoft 会定期更新Azure CLI,以包含新功能、改进和对最新 Azure 服务的支持。Linux 用户可以通过包管理器更新轻松地保持 Azure CLI 的最新状态。
  • 自定义脚本扩展: 使用自定义脚本扩展,Linux 用户可以利用Azure CLI在部署期间,在 Azure 虚拟机 (VM) 上执行自定义脚本。
  • 与 Azure DevTest Labs 集成: Linux 用户还可以利用 Azure CLI 来管理Azure DevTest Labs环境,从而更轻松地预配和管理开发和测试环境。
  • Azure CDN 配置: Azure CLI 命令通过定义 Azure内容分发网络 (CDN)配置文件和终结点,实现高效的内容分发和优化。
  • Azure Event Grid 管理: Azure CLI 命令通过配置和管理 Azure Event Grid 主题和事件订阅,实现了事件驱动的应用程序架构。

缺点

  • Linux 发行版差异: Linux 发行版用户在 Azure CLI 的打包和分发方式上可能会遇到差异。通过包管理器可用 Azure CLI 的情况可能有所不同,从而导致安装和更新不一致。
  • 依赖项管理: 根据发行版的不同,在 Linux 上安装 Azure CLI 可能需要安装额外的依赖项或库。
  • 命令行语法差异: Linux 用户可能需要适应 Azure CLI 命令和语法,这些命令和语法是平台无关的,但可能与 Linux 实用程序或脚本中使用的约定不同。对于习惯于 Linux 本地命令的用户来说,这种过渡可能需要一些时间。
  • 文档差异: 尽管 Microsoft 为 Azure CLI 提供了大量文档,但某些特定于 Linux 的问题或特定于发行版的问题可能会被忽略。对于专门的 Linux 相关问题,用户可能需要依赖社区资源。
  • 与 Linux 身份验证方法集成: 在 Linux 上配置 Azure CLI 身份验证可能需要与 Linux 原生身份验证方法(如 SSH 密钥或Linux PAM(可插拔身份验证模块))进行交互。用户应确保身份验证已安全配置。
  • 包兼容性: 某些 Azure CLI 扩展或功能可能与 Linux 不完全兼容,或者其对 Linux 的支持可能落后于其他平台。用户需要确保特定扩展与他们的 Linux 系统兼容。

结论

总而言之,Azure CLI(Azure 命令行界面)是管理 Azure 云资源和服务的通用且重要的工具。它允许用户轻松有效地与 Azure 平台进行交互,无论其操作系统如何。Azure CLI 为资源管理、自动化和对 Azure 服务的精细控制提供了一个基于命令的界面。

Azure CLI 可用于各种用例,无论您是希望脚本化部署的开发人员、管理 Azure 资源的管理员,还是将云操作集成到其管道中的 DevOps 专家。其跨平台兼容性可在 Windows、macOS 和 Linux 之间提供统一的体验,使其成为不同环境中云从业者的首选工具。

随着云计算的发展,Azure CLI仍然是一个必不可少的工具,它使用户能够充分发挥 Microsoft Azure 的全部潜力。无论您是部署虚拟机、构建容器化应用程序、配置数据库,还是管理复杂的云工作流程,Azure CLI 都是您走向云卓越之路的值得信赖的伙伴。

常见问题

Q1. Azure CLI 兼容哪些操作系统版本?

Azure CLI 是一款命令行实用程序,可与多种操作系统配合使用。它与多种 Linux 发行版、Windows 和 macOS 兼容。此外,它还可以通过 Docker 容器和 Azure Cloud Shell 从任何 Web 浏览器访问,从而无需底层操作系统。

Q2. Azure CLI 是否兼容 Windows?

是的,从 Windows 8 及更高版本开始,Windows 操作系统即可完全支持 Azure CLI。可以通过 Windows 包管理器 (winget)、PowerShell 脚本或 Microsoft 的 MSI 安装程序进行安装。安装后,可以在 Windows 终端、PowerShell 或命令提示符中使用 Azure CLI。如果您更喜欢类 Linux 环境,它在 Windows Subsystem for Linux (WSL) 中也能完美运行。

Q3. Azure CLI 是否兼容 macOS?

在 macOS 上安装 Azure CLI 的最简单方法是使用 Homebrew 包管理器。Microsoft 提供的手动安装脚本也是用户可用的另一个选项。由于 CLI 的功能与其他操作系统类似,macOS 用户可以有效地从终端管理他们的 Azure 资源。

Q4. Linux 是否兼容 Azure CLI?

是的,Azure CLI 兼容多种 Linux 发行版,如 Fedora、Red Hat Enterprise Linux (RHEL)、Ubuntu、Debian 和 CentOS。通常,使用原生包管理器,如 Debian 系列系统的 apt 或 RHEL 系列系统的 yum/dnf 进行安装。也可以为其他 Linux 发行版使用 Docker 或手动安装脚本。每个 Linux 发行版都以相同的方式使用 Azure CLI。五美元。

Q5. Azure CLI 是否可以与 Docker 一起使用?

是的。由于 Microsoft 提供了 Azure CLI 的官方 Docker 映像,您可以在任何兼容 Docker 的系统上使用它,而不管其操作系统如何。当您不想直接在宿主系统上安装 CLI 或在隔离环境中使用时,这尤其有用。要启动 CLI,请使用 Docker 命令 docker run -it mcr. www. microsoft. com/azure-cli。

Q6. Windows Subsystem for Linux (WSL) 是否支持 Azure CLI?

是的,WSL,特别是 WSL 2,完全支持 Azure CLI。这种配置使 Windows 用户能够原生运行 Linux,同时仍然使用 Windows。您可以像在普通 Linux 计算机上一样,通过直接在 WSL 发行版中安装来使用 Linux 版 Azure CLI。