Azure 日常任务的备选方案

Azure 日常任务的备选方案,azure,azure-virtual-machine,azure-automation,Azure,Azure Virtual Machine,Azure Automation,首先,让我说我是一个蔚蓝新手。我来自AWS世界,所以我还不知道这个新平台的最佳路线 我想写一个任务,假设它是一个PowerShell脚本,它将在预定时间每天运行一次。每天完成实际任务不应超过一分钟 此任务的一个重要方面是,它需要访问我公司的内部主机。Azure中有一个VPN设置,所以我可以配置我想要的任何VM,它将能够访问这些服务器 我希望我可以使用Azure功能,但我怀疑我是否有能力在该服务中配置网络 然后我开始研究Azure Automation,看起来我应该能够构建一些东西来唤醒VM,VM

首先,让我说我是一个蔚蓝新手。我来自AWS世界,所以我还不知道这个新平台的最佳路线

我想写一个任务,假设它是一个PowerShell脚本,它将在预定时间每天运行一次。每天完成实际任务不应超过一分钟

此任务的一个重要方面是,它需要访问我公司的内部主机。Azure中有一个VPN设置,所以我可以配置我想要的任何VM,它将能够访问这些服务器

我希望我可以使用Azure功能,但我怀疑我是否有能力在该服务中配置网络

然后我开始研究Azure Automation,看起来我应该能够构建一些东西来唤醒VM,VM可能会在启动时运行任务,然后在完成任务后自行关闭。在我走这条路之前,我想知道我没有错过更容易的东西


我的目标是创建一个可重复的模式,使我自己和我的团队中的其他人可以创建这些不频繁、快速的任务,而不需要虚拟机几乎整天都处于空闲状态。

如果您使用应用程序服务计划(而不是消费计划)设置Azure功能,您将可以访问VNET集成,该集成允许您设置点到点VPN

Function App>Platform Features>Networking>Networking>VNET集成


您可以使用Azure Automation来实现这一点,您可以通过运行云作业和混合工作程序来实现这一点

首先,将Azure VM设置为混合工作程序

这是混合动力工人的文档。

然后,基本上你可以有一个在云中运行的父运行手册(脚本)的组合,当你想运行Azure VM时启动它(使用start AzureVM)在runbook中等待一段时间,让VM启动,然后在启动后使用start-AzureAutomationRunbook cmdlet在Azure VM上使用RunOn参数运行PowerShell脚本(请参见下文)

然后可以从父runbook关闭VM。(停止AzureVM)


这是许多Azure Automation客户使用的模式

这是只对每次执行收费还是需要一个始终在线的虚拟机?消费计划是对每次执行收费的计划。这需要一个应用服务计划,基本上是一个专用的vm。这是定价:谢谢。正如我所说的,我试图找到一种好方法,只为每次执行支付大致的费用,同时对执行环境有更多的控制。也许我终究要自动化虚拟机的生命周期。这种方法不需要在我的数据中心上安装一台新服务器吗?“混合运行手册工人”?我真的在尝试将此任务转移到Azure。如果我需要在我的DC中添加一个新服务器,我想我更喜欢直接使用任务调度器运行任务。也许这是一个比我想象的更难的问题。