在EC2 Windows Server 2016上,重新启动实例时自动安装实例存储

我有一个基于亚马逊提供的Microsoft Windows Server 2016 AMI的AWS EC2实例。我想使用临时实例存储。 当我启动实例时,我可以login并使用“窗口的磁盘pipe理”工具将我的实例存储挂载为一个盘符。

但是,如果我停止然后启动该实例,则login时不会再装入实例存储。 每次重新启动实例时,我都必须再次使用Window的“磁盘pipe理”工具重新安装实例存储。

如何使实例存储自动显示为驱动器?

configurationAmazon提供的脚本C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeDisks.ps1以在系统引导时运行。

  1. 以pipe理员身份login。

  2. 创build一个临时的XML文件,其内容如下所示。

  3. 启动Windows任务计划程序。 (开始>>pipe理工具>>任务计划程序)

  4. select操作导入任务…

  5. select您的临时XML文件。

  6. 按OK创build任务。

Amazon Ec2启动 – 初始化Disks.xml

 <?xml version="1.0" encoding="UTF-16"?> <Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task"> <RegistrationInfo> <URI>\Amazon Ec2 Launch - Initialize Disks</URI> </RegistrationInfo> <Triggers> <BootTrigger> <Enabled>true</Enabled> </BootTrigger> </Triggers> <Principals> <Principal id="Author"> <UserId>S-1-5-18</UserId> <RunLevel>HighestAvailable</RunLevel> </Principal> </Principals> <Settings> <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy> <DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries> <StopIfGoingOnBatteries>false</StopIfGoingOnBatteries> <AllowHardTerminate>false</AllowHardTerminate> <StartWhenAvailable>true</StartWhenAvailable> <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable> <IdleSettings> <StopOnIdleEnd>false</StopOnIdleEnd> <RestartOnIdle>false</RestartOnIdle> </IdleSettings> <AllowStartOnDemand>true</AllowStartOnDemand> <Enabled>true</Enabled> <Hidden>false</Hidden> <RunOnlyIfIdle>false</RunOnlyIfIdle> <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession> <UseUnifiedSchedulingEngine>true</UseUnifiedSchedulingEngine> <WakeToRun>false</WakeToRun> <ExecutionTimeLimit>PT72H</ExecutionTimeLimit> <Priority>0</Priority> </Settings> <Actions Context="Author"> <Exec> <Command>C:\Windows\System32\cmd.exe</Command> <Arguments>/CC:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -NonInteractive -NoLogo -ExecutionPolicy Unrestricted -File "C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeDisks.ps1"</Arguments> </Exec> </Actions> </Task> 

我从这里得到了线索