Преди да можете да навлезете в подробности за конфигурацията на състоянието на Azure Automation (AASC), трябва да знаете какво представлява конфигурацията на желаното състояние (DSC) и AASC. Конфигурацията на желаното състояние е платформа за управление на PowerShell, използвана за управление на конфигурацията на вашата ИТ инфраструктура с конфигурация като код. DSC предлага декларативен модел за системна конфигурация, който ви позволява да посочите как искате да бъде конфигурирана крайна точка (работна станция или сървър) и да оставите действителната конфигурация на PowerShell DSC. По този начин трябва само да посочим „желаното състояние“, а DSC определя как и в какъв ред. AASC е подобен на DSC и ви позволява да пишете, управлявате и компилирате конфигурации, както и да импортирате и присвоявате конфигурации на целеви сървъри. Освен това AASC е услуга, която работи изцяло в (Azure) облака.

В това ръководство ще настроите акаунт в Azure Automation и ще конфигурирате първата си желана конфигурация на състоянието. Когато приключите, ще имате необходимите умения, за да започнете да конфигурирате желаните състояния във вашия клиент на Azure.

Предпоставки

Преди да започнете, ще ви трябва следното:

Стъпка 1 — Създаване на ресурси

Първо ще създадете необходимите ресурси за управление и внедряване на конфигурация на състояние, създаване на виртуална машина и конфигуриране на виртуалната машина чрез внедряване на желаната конфигурация на състояние.

Влезте в Azure

Влезте във вашата среда на Azure, като използвате командата az login в Azure Cloud Shell от вашия терминал на Windows, Azure Portal или интерфейс на командния ред по лични предпочитания.

Създаване на група ресурси

Всички ресурси в Azure се държат от контейнер; ресурсна група. Най-добрата практика е да създадете група ресурси за всяко решение, което искате да управлявате като група, и да я оставите да съдържа всички ресурси, свързани с това. Това се дължи на управлението на жизнения цикъл. За същата цел ще създадете една група ресурси, която съдържа всички ресурси, които ще създавате за това ръководство. Това улеснява изтриването на всички ресурси (ако искате да го направите), когато приключите с това ръководство.

Създайте групата ресурси, като изпълните следната команда. Можете да редактирате параметрите според вашите лични предпочитания. Командата по-долу създава група ресурси с „schuttencld-rg“ като нейно име и регион Западна Европа като нейно местоположение.

az group create \
    --name "schuttencld-rg" \
    --location "westeurope"

Създаване на виртуална машина

Ще ви е необходима виртуална машина, за да внедрите конфигурацията на желаното състояние. Можете да пропуснете тази част, ако вече имате виртуална машина, работеща с Windows сървър като операционна система, и желаете да я използвате за тестови цели. Ако все още нямате виртуална машина, ще трябва да създадете такава. Командата по-долу създава виртуална машина с „schuttencld-vm“ като име, в рамките на по-рано създадената група ресурси, в същия регион (westeurope), с Windows Server 2019 Datacenter като нейна операционна система и DS1v2 VM размер. Променете всички параметри според личните си предпочитания и изпълнете командата, за да създадете вашата виртуална машина.

az vm create \
    --name "schuttencld-vm" \
    --resource-group "schuttencld-rg" \
    --location "westeurope" \
    --image "Win2019Datacenter" \
    --size "Standard_DS1_v2"

След като изпълните командата, ще бъдете помолени да въведете администраторска парола два пъти.

Създаване на акаунт за автоматизация

Конфигурацията на състоянието на Azure Automation (желано) е функция в рамките на услугата Azure Automation. За тази цел ще създадете акаунт в Azure Automation, като използвате командата по-долу. Отново можете да редактирате параметрите според личните предпочитания.

az automation account create \
    --automation-account-name "schuttencld-aa" \
    --resource-group "schuttencld-rg"
    --location "westeurope" \
    --sku "Free"

Стъпка 2 — Създайте конфигурацията на състоянието

Сега ще създадете конфигурационния файл, който съдържа желаната конфигурация на състоянието и ще го компилирате. В тази стъпка ще използвате PowerShell за изпълнение на вашите команди. Започнете, като изпълните командата Connect-AzAccount в PowerShell, за да се свържете с вашата Azure среда.

Създаване на конфигурационния файл

Сега ще напишете желаната конфигурация в конфигурационен файл. Стартирайте Visual Studio Code (или друг редактор на код, който предпочитате) и създайте нов PowerShell файл. В примера назовавам този файл „SchuttenCldConfig.ps1“ и го запазвам на моя работен плот.

За образователни цели ние пишем желана конфигурация, която има инсталирана функция Windows Defender и изпълнява услугата Windows Defender. Ние наричаме това състояние на конфигурация „IsSecure“. Ако функцията Windows Defender не присъства или ако услугата Windows Defender е спряна, тя е „NotSecure“. Транскрибираният конфигурационен файл е показан по-долу:

Изображение от Rolf Schutten на Schutten.cloud

Импортиране на конфигурационния файл

Сега сте готови със създаването на конфигурационния файл на желаното от вас състояние и ще трябва да го импортирате във вашия акаунт в Azure Automation. Можете да направите това, като използвате командата ”Import-AzAutomationDscConfiguration” PowerShell. Можете да използвате примера по-долу, но се уверете, че сте променили параметрите според личните си предпочитания.

Import-AzAutomationDscConfiguration
    -SourcePath "C:\Users\Rolf\Desktop\SchuttenCldConfig.ps1"
    -ResourceGroupName schuttencld-rg
    -AutomationAccountName schuttencld-aa
    -Published

Компилиране на конфигурационния файл

След като импортирате конфигурационния файл, ще трябва да го компилирате. Отново ще използвате команда PowerShell, за да го направите, тъй като това е най-лесният начин да го направите. Използвайте примерната команда по-долу, но се уверете, че сте променили параметрите според личните си предпочитания, където „-ConfigurationName“ трябва да се отнася до името, което сте дали на вашата конфигурация в конфигурационния файл (това име се показва след думата „Конфигурация“ на първия ред от код във файла).

Start-AzAutomationDscCompilationJob
    -ConfigurationName SchuttenCldConfig
    -ResourceGroupName schuttencld-rg
    -AutomationAccountName schuttencld-aa

Компилирането на конфигурационния файл може да отнеме няколко минути. Можете да проверите дали компилацията е била успешна, като използвате командата по-долу, след като сте я променили според вашите лични предпочитания.

Get-AzAutomationDscNodeConfiguration
    -ResourceGroupName schuttencld-rg
    -AutomationAccountName schuttencld-aa

Ако изпълнението на горната команда не показва никаква информация като резултат, няма компилирана (успешна) конфигурация. Ако е завършено успешно, трябва да видите нещо подобно като екранната снимка по-долу в резултат на изпълнение на командата:

Изображение от Rolf Schutten на Schutten.cloud

Стъпка 3 — Регистрирайте виртуалната машина

В тази последна стъпка ще регистрирате виртуалната машина с конфигурацията. В тази стъпка отново ще използвате PowerShell.

Регистрирайте виртуалната машина

Използвайки командата ”Register-AzAutomationDscNode” PowerShell, вие ще регистрирате вашата виртуална машина към по-рано конфигурираната конфигурация на състоянието. Можете да използвате примера по-долу, очевидно, след като сте променили параметрите според личните си предпочитания.

Register-AzAutomationDscNode
    -AzureVMName schuttencld-vm
    -ResourceGroupName schuttencld-rg
    -AutomationAccountName schuttencld-aa
    -NodeConfigurationName SchuttenCldConfig.IsSecure
    -ConfigurationMode ApplyAndAutocorrect
    -RebootNodeIfNeeded $True

За „-NodeConfigurationName“ мога да променя параметъра му на „SchuttenCldConfig.NotSecure“, ако искам тази система да има статус „жалба“ без инсталирана функция на Windows Defender и/или услуга на Windows Defender да работи. Освен това, за „ConfigurationMode“ можете също да изберете „ApplyOnly“ и „ApplyAndMonitor“ ApplyOnly ще приложи конфигурацията, но не прави нищо, освен ако не бъде изпратена нова конфигурация към целевия възел или когато е нова конфигурация изтеглен от услугата. ApplyAndMonitor, който е режимът на конфигуриране по подразбиране, ако не е дадена стойност за този конкретен параметър, ще направи същото като „ApplyOnly“ и ще отчете всяко несъответствие, ако възелът се отклони от желаното състояние. И накрая, има опцията „ApplyAndAutocorrect“, която използваме в примерната команда по-горе. ApplyAndAutocorrect ще направи същото като „ApplyAndMonitor“ и ще приложи отново желаната конфигурация, когато бъде докладвано несъответствие.

След като изпълните успешно командата PowerShell, вие сте регистрирали своята виртуална машина в конфигурацията на желаното състояние. За да наблюдава резултата и съвместимото състояние на вашите възли, Microsoft разработи хубаво табло за управление в Azure Portal. Можете да намерите това табло под връзката „Конфигурация на състоянието (DSC)“ във вашия акаунт в Azure Automation.

Изображение от Rolf Schutten на Schutten.cloud

От тук можете да щракнете върху показаните данни, за да получите подробна информация за конфигурацията, съвместимото състояние и т.н.

Заключение

Тази статия ви запозна с основите на конфигурацията на състоянието (в Azure) чрез създаване, импортиране, компилиране и регистриране на конфигурационен файл във виртуална машина. Конфигурацията в това ръководство налага присъствието на функциите на Windows Defender и работещо състояние на услугата Windows Defender. Сега можете да започнете да пишете желани конфигурации и да ги прилагате или наблюдавате с Configuration на състоянието в Azure.

Ако искате да научите повече за State Configuration, тази страница на Microsoft Docs е добро място да започнете.