Azure 如何维护驱动器映射从自定义映像创建新VM
我正在尝试创建一个TeamCity构建代理,可以根据需要进行扩展。我已经创建了一个虚拟机,并进行了相应的配置。因为我们有很多项目,所以我附加了一个数据盘,并安装了构建代理来指向它。根据其他文章,我已将数据磁盘映射到F:。完成后,我创建了一个映像,我计划将其用于代理的所有其他VM创建。 问题是,当我执行创建时,它没有维护数据磁盘的驱动器映射,因此现在是E:。当代理服务尝试启动时,它正在查找F:。 即使我在C:\上安装代理,我也希望签出目录位于数据磁盘上,因为我们将签出大量文件(数百GB)。Azure 如何维护驱动器映射从自定义映像创建新VM,azure,teamcity,azure-virtual-machine,azure-powershell,Azure,Teamcity,Azure Virtual Machine,Azure Powershell,我正在尝试创建一个TeamCity构建代理,可以根据需要进行扩展。我已经创建了一个虚拟机,并进行了相应的配置。因为我们有很多项目,所以我附加了一个数据盘,并安装了构建代理来指向它。根据其他文章,我已将数据磁盘映射到F:。完成后,我创建了一个映像,我计划将其用于代理的所有其他VM创建。 问题是,当我执行创建时,它没有维护数据磁盘的驱动器映射,因此现在是E:。当代理服务尝试启动时,它正在查找F:。 即使我在C:\上安装代理,我也希望签出目录位于数据磁盘上,因为我们将签出大量文件(数百GB)。 从Az
从Azure Powershell的角度看,似乎找不到这将如何工作 这是一篇博客文章,展示了如何在Azure中持久化驱动器号更改的过程 基本上,您需要执行一项启动任务,检查分配的驱动器号-如果不正确,则重新分配正确的驱动器号 还有一个示例PowerShell脚本用于分配驱动器号。如果没有所有的错误检查,它看起来像:
Function Set-VolumeDriveLetter ($oldvolume, $newvolume) {
$driveletter = Get-WmiObject win32_volume -filter "DriveLetter = '$oldvolume'"
$driveletter.DriveLetter = $newvolume
$driveletter.Put() | Out-Null
}
Set-VolumeDriveLetter -oldvolume "R:" -newvolume "E:"
详情如下:
让我知道这是否有帮助,以及这两种方法是否适用于您