使用现有的 runbook 和模块
无需在 Azure 自动化中创建自己的 Runbook 和模块,即可访问 Microsoft 和社区构建的方案。 可从 Azure 门户中的 Runbook 库获取与 Azure 相关的 PowerShell 和 Python runbook,并从 PowerShell 库中获取模块和 runbook(可能是也可能不是特定于 Azure 的)。 还可以通过共享开发的方案来为社区做出贡献。
注意
TechNet 脚本中心即将退役。 脚本中心的 Runbook 库中的所有 runbook 都已转移到自动化 GitHub 组织。有关详细信息,请参阅将 Azure 自动化 runbook 移动到 GitHub。
使用 Azure 门户从 GitHub 导入 runbook
注意
- Azure 门户中的“浏览库”选项可提升用户体验。
- 在“过程自动化”>“Runbook”边栏选项卡中,可以通过“导入 Runbook”或“浏览库”选项导入 Runbook,“Runbook”页将显示两个新列 -“运行时版本”和“Runbook 类型”。
在 Azure 门户中,打开自动化帐户。
在“过程自动化”下,选择“Runbook”边栏选项卡 。
在“Runbook”页中,单击“导入 runbook” 。
在“导入 runbook”页中,可以分别使用“浏览文件”或“从库中浏览”导入存储在本地计算机中的文件或从 GitHub 中导入文件 。
选择文件。
输入“名称”、“运行时版本”和“说明” 。
单击“导入”。
或者,在“Runbook”页中选择“浏览库”以浏览可用的 runbook。
可以使用列表上方的筛选器按发布者、类型和排序方式来缩小显示范围。 找到所需的库项,选择它以查看其详细信息。
单击“选择”以选择选定的 runbook。
在“导入 runbook”页中,输入“名称”并选择“运行时版本” 。
“Runbook 类型”和“说明”是自动填充的。
单击“导入” 。
Runbook 将出现在自动化帐户的“Runbook”选项卡中。
PowerShell 库中的 runbook
重要
应验证从 PowerShell 库获取的任何 runbook 的内容。 在生产环境中安装和运行这些 runbook 时,请谨慎操作。
PowerShell 库提供来自 Microsoft 和社区的各种 runbook,可将其导入 Azure 自动化。 若要使用 Runbook,可以从库下载 Runbook,也可以直接从库或 Azure 门户中的自动化帐户导入 Runbook。
注意
PowerShell 库不支持图形 Runbook。
仅可使用 Azure 门户直接从 PowerShell 库导入。 不能使用 PowerShell 执行此功能。 此过程与使用 Azure 门户从 GitHub 导入 runbook所述的相同,不同之处在于源为 PowerShell 库 。
PowerShell 库中的模块
PowerShell 模块包含可在 Runbook 中使用的 cmdlet。 PowerShell 库中提供了可在 Azure 自动化中安装的现有模块。 可以从 Azure 门户启动此库,并将这些模块直接安装到 Azure 自动化中,也可以下载并手动安装这些模块。
你还可以在 Azure 门户中找到要导入的模块。 在“共享资源”下的“模块”中为自动化帐户列出了这些模块 。
重要
不要在任何专门使用 Az 模块执行的脚本中包含关键字“AzureRm”。 即使在注释中包含关键字,也可能导致加载 AzureRm,然后与 Az 模块冲突。
PowerShell 库中提供的常见场景
下面的列表包含一些支持常见方案的 Runbook。 有关由 Azure 自动化团队创建的 Runbook 的完整列表,请参阅 AzureAutomationTeam 配置文件。
- Update-ModulesInAutomationToLatestVersion - 从 PowerShell 库导入自动化帐户中所有模块的最新版本。
- Enable-AzureDiagnostics - 配置 Azure 诊断和日志分析,以接收包含作业状态和作业流的 Azure 自动化日志。
- Copy-ItemFromAzureVM - 从 Windows Azure 虚拟机复制远程文件。
- Copy-ItemToAzureVM - 将本地文件复制到 Azure 虚拟机。
为社区做贡献
我们强烈建议你为 Azure 自动化做贡献,帮助它成长。 与社区分享你构建的出色 runbook。 感谢你的贡献!
将 runbook 添加到 GitHub Runbook 库
可以通过此 GitHub 工作流将新的 PowerShell 或 Python runbook 添加到 Runbook 库中。
在 GitHub 上创建一个公共存储库,并添加 runbook 和任何其他必要的文件(如 readme.md、description 等)。
添加主题
azureautomationrunbookgallery
,以确保服务可发现存储库,以便在自动化 Runbook 库中显示它。如果创建的 runbook 为 PowerShell 工作流,请添加主题
PowerShellWorkflow
。 如果为 Python 3 runbook,请添加Python3
。 Azure runbook 不需要其他特定主题,但建议你添加其他可用于在 Runbook 库中进行分类和搜索的主题。注意
查看库中现有的 runbook,了解你可能会使用的格式设置、标头和现有标记等内容(如
Azure Automation
或Linux Azure Virtual Machines
)。
要对现有 runbook 提出更改建议,请对其提交拉取请求。
如果决定克隆和编辑现有 runbook,最佳做法是为其指定一个不同的名称。 如果重用旧名称,它将在 Runbook 库列表中显示两次。
注意
对于更新的和新的 runbook,请在 GitHub 和自动化 Runbook 库之间留出至少 12 小时的同步时间。
将 PowerShell runbook 添加到 PowerShell 库
建议将 Runbook 添加到你认为对其他客户有用的 PowerShell 库中。 PowerShell 库接受 PowerShell 模块和 PowerShell 脚本。 可以通过将 Runbook 上传到 PowerShell 库来添加 Runbook。
从 Azure 门户中的模块库导入模块
在 Azure 门户中,打开自动化帐户。
在“共享资源”下,选择“模块” 。
在“模块”页中,选择“浏览库”以打开模块列表。
在“浏览库”页,可以按以下字段进行搜索:
- 模块名称
- Tags
- 作者
- Cmdlet/DSC 资源名称
找到感兴趣的模块并选择它以查看其详细信息。
深入了解特定模块时,可以查看更多信息。 此信息包括返回 PowerShell 库的链接、任何所需的依赖项以及该模块包含的所有 cmdlet 或 DSC 资源。
若要直接将模块安装到 Azure 自动化中,请单击“导入”。
在“导入”窗格上,可以看到要导入的模块的名称。 如果安装了所有依赖项,“确定”按钮将处于活动状态。 如果缺少依赖项,则需要在导入此模块前导入这些依赖项。
在“导入”窗格上,单击“确定”导入模块。 Azure 自动化将模块导入帐户时,它提取有关该模块和 cmdlet 的元数据。 此操作可能需要几分钟才能完成,因为需要提取每个活动。
将收到正在部署该模块的初始通知;完成此过程后,还会收到另一通知。
导入模块后,可以看到可用的活动。 可以在 Runbook 和 DSC 资源中使用模块资源。
注意
仅支持 PowerShell 核心的模块将在 Azure 自动化中不受支持,无法在 Azure 门户中导入,或直接从 PowerShell 库部署。
后续步骤
- 若要开始使用 PowerShell Runbook,请参阅教程:创建 PowerShell Runbook。
- 若要使用 runbook,请参阅在 Azure 自动化中管理 runbook。
- 有关 PowerShell 脚本的详细信息,请参阅 Powershell Docs。
- 有关 PowerShell cmdlet 参考,请参阅 Az.Automation。