Инициируйте повторное выполнение проверки DSC на виртуальной машине Azure.
Я выполняю простые упражнения, чтобы изучить Azure и Powershell DSC.
Эта запись в блоге предоставляет прекрасный пример "Hello World" для DSC:
Configuration HelloWorldConfig
{
Node localhost
{
File TestFile {
Ensure = "Present"
DestinationPath = "c:\temp\HelloWorld.txt"
Contents = "Hello World!"
}
}
}
Я создал пакет с помощью powershell и загрузил его на свою виртуальную машину Azure с помощью блейда расширений на портале Azure.
Это сработало! Когда я вошел в систему, я мог видеть файл c:\temp\HelloWorld.txt
,
Но DSC должен защищать вас от "дрейфа конфигурации". Чтобы проверить это, я перенес свою конфигурацию, удалив файл вручную.
Как заставить файл появиться снова? т.е. как мне повторно запустить эту проверку конфигурации требуемого состояния.
Я предполагаю, что загруженный мной сценарий DSC находится где-то на виртуальной машине. (Я вижу запись на лезвии расширения).
Или я должен перезагрузить пакет? Если так, то почему эта запись даже видна на лезвии?
Я спрашиваю, где этот пакет вообще находится? Я узнал ответ, используя powershell:
$extension = Get-AzureRmVMDscExtension -ResourceGroupName $vm.ResourceGroupName -VMName $vm.Name
$extension.ModulesUrl
Это показало, что мой пакет теперь находится в https://iaasv2tempstoreseasia.blob.core.windows.net/vmextensionsteorary-000116674c9bb772-20160908062048340/sample-dsc-package.zip?sv=2015-04-05&sr=c&sig=Ynfv% 2FMPWexQWhGOw7H8d8EkGcN5Ufudyz1MIE% 3D & SE = 2016-09-09T06% 3A20% 3A48Z & зр = RW
Итак, я интерпретирую это в учетной записи хранения (не моя) называется iaasv2tempstoreseasia
в контейнере BLOB-объектов под названием vmextensionstemporary-000116674c9bb772-20160908062048340
, Просто существование слова temp
предполагает, что там нет навигации.
И что интересно, когда я удалил расширение DSC из блейда Extensions, я все еще мог загрузить пакет, используя этот URL. Через несколько часов все прошло - я подозреваю, что по какой-то работе по уборке.
1 ответ
DSC использует DSC Local Configuration Manager для обработки конфигурации DSC и ее мониторинга. Локальный менеджер конфигурации имеет параметр, называемый РЕЖИМ КОНФИГУРАЦИИ, по умолчанию он имеет значение ApplyAndMonitor. Это означает, что он обработает и применит ваш сценарий DSC, но в случае изменения (в вашем примере удаление файла) он не будет автоматически повторно применять настройки. вам нужно установить РЕЖИМ КОНФИГУРАЦИИ на ApplyAndAutocorrect. в этом режиме он обнаружит дрейф конфигурации и повторно применяет ваши настройки DSC.
Проверьте этот URL для получения дополнительной информации об этой настройке: