在没有外部工具的情况下设置新的 Azure 虚拟机

Setup new Azure Virtual machine without external tools

我想在 Azure 中自动设置虚拟机。

  1. 有一些 Azure Commandlets 可以创建新的 VM,为 PowerShell 远程设置开放端口等。
  2. 我找到了如何下载用于远程处理的证书的脚本 (http://michaelwasham.com/windows-azure-powershell-reference-guide/introduction-remote-powershell-with-windows-azure/ ),因此可以通过以下方式连接到机器 New-PSSession -ComputerName $computer -Credential $creds -UseSSL 并调用一些命令。
  3. 然后我需要复制一些应用程序到虚拟机,在系统中注册并运行。

如何将文件复制到远程机器?没有可以使用的 azure 命令,所以我无法从 blob 复制应用程序。

可能的解决方法 - 远程安装 chocolatey,下载一些从 blob 获取文件的命令行应用程序等。有没有更好的方法?即使是 AzCopy 也必须以某种方式上传到服务器。

PModem几年前看的时候还挺好看的,现在有没有更官方的做法?

我不会使用任何其他 public 可以从 Azure VM 访问的机器,这些机器可以用作远程机器可以从中下载文件的文件服务器。

此外,我不希望将一些准备好的 VHD 放在 Azure 中作为已预安装所有需要的新虚拟机的映像。该应用程序可能会发生很大变化,因此无法很好地扩展。

我建议您探索 Chef 或 Puppet。 Azure 与 Chef 和 Puppet 兼容,两者都可用作 VM 扩展,您可以在 Ruby 中编写 Chef 食谱并管理一组机器的配置。

这里有一些有趣的链接

http://blogs.technet.com/b/dcaro/archive/2014/04/22/hands-free-configuration-of-your-vm-in-microsoft-azure.aspx http://www.youtube.com/watch?v=vyPgwUxQ35w

您可以创建一个 Azure Files 存储帐户。这是一种存储,您可以使用 net use 作为网络驱动器安装在 VM 上。然后,您所要做的就是将文件从您的开发机器(您可以在其中使用 Azure cmdlet 和其他工具)上传到此存储,并通过 VM 上安装的驱动器访问这些文件。

这样你只依赖于存储服务,但你不必使用任何 public 机器。