Povolení služby Azure Automation State Configuration
Poznámka:
Než povolíte službu Automation State Configuration, rádi bychom věděli, že novější verze DSC je teď obecně dostupná a spravovaná funkcí konfigurace hosta s názvem Azure Policy. Služba konfigurace hosta kombinuje funkce rozšíření DSC, Azure Automation State Configuration a nejčastěji požadované funkce od zpětné vazby zákazníků. Konfigurace hosta také zahrnuje podporu hybridních počítačů prostřednictvím serverů s podporou Arc.
Toto téma popisuje, jak můžete nastavit počítače pro správu pomocí služby Azure Automation State Configuration. Podrobnosti o této službě najdete v přehledu služby Azure Automation State Configuration.
Povolení virtuálních počítačů Azure
Azure Automation State Configuration umožňuje snadno povolit virtuální počítače Azure pro správu konfigurace pomocí webu Azure Portal, šablon Azure Resource Manageru nebo PowerShellu. Rozšíření Azure Desired State Configuration pod kapotou a bez nutnosti vzdáleného přístupu správce k virtuálnímu počítači zaregistruje virtuální počítač ve službě Azure Automation State Configuration. Vzhledem k tomu, že rozšíření Azure běží asynchronně, jsou kroky ke sledování jeho průběhu k dispozici ve stavu kontroly nastavení virtuálního počítače.
Poznámka:
Nasazení DSC do uzlu Linuxu používá složku /tmp . Moduly, jako nxautomation
jsou například dočasně, se stáhnou k ověření před jejich instalací do příslušných umístění. Aby se zajistilo, že se moduly správně nainstalují, potřebuje agent Log Analytics pro Linux oprávnění ke čtení a zápisu ve složce /tmp .
Agent Log Analytics pro Linux běží jako omsagent
uživatel. Pokud chcete uživateli udělit >oprávnění k zápisu omsagent
, spusťte příkaz setfacl -m u:omsagent:rwx /tmp
.
Povolení virtuálního počítače pomocí webu Azure Portal
Povolení konfigurace stavu virtuálního počítače Azure prostřednictvím webu Azure Portal:
Přejděte na účet Azure Automation, ve kterém chcete povolit virtuální počítače.
Na stránce Konfigurace stavu vyberte kartu Uzly a potom klikněte na Přidat.
Zvolte virtuální počítač, který chcete povolit.
Pokud počítač nemá nainstalované rozšíření požadovaného stavu PowerShellu a stav napájení je spuštěný, klikněte na Připojení.
V části Registrace zadejte hodnoty místního Configuration Manageru powershellu DSC vyžadované pro váš případ použití. Volitelně můžete zadat konfiguraci uzlu pro přiřazení k virtuálnímu počítači.
Povolení virtuálního počítače pomocí šablon Azure Resource Manageru
Virtuální počítač pro konfiguraci stavu můžete nainstalovat a povolit pomocí šablon Azure Resource Manageru. Ukázkovou šablonu, která umožňuje existující virtuální počítač pro konfiguraci stavu, najdete v tématu Server spravovaný službou Desired State Configuration. Pokud spravujete škálovací sadu virtuálních počítačů, podívejte se na ukázkovou šablonu v konfiguraci škálovací sady virtuálních počítačů spravovanou službou Azure Automation.
Povolení počítačů pomocí PowerShellu
K povolení virtuálních počítačů pro konfiguraci stavu můžete použít rutinu Register-AzAutomationDscNode v PowerShellu.
Poznámka:
Rutina Register-AzAutomationDscNode
se v současné době implementuje jenom pro počítače s Windows, protože aktivuje jenom rozšíření Windows.
Registrace virtuálních počítačů napříč předplatnými Azure
Nejlepším způsobem, jak zaregistrovat virtuální počítače z jiných předplatných Azure, je použít rozšíření DSC v šabloně nasazení Azure Resource Manageru. Příklady jsou k dispozici v rozšíření Desired State Configuration pomocí šablon Azure Resource Manageru.
Použití metakonfigurace DSC k registraci hybridních počítačů
Počítače můžete bezpečně povolit pro účet Azure Automation prostřednictvím metakonfigurace DSC. Protokoly implementované v DSC používají informace z metakonfigurace k ověření ve službě Azure Automation State Configuration. Uzel se zaregistruje ve službě na adrese URL registrace a ověří se pomocí registračního klíče. Během registrace uzel DSC a služba DSC vyjednávají jedinečný certifikát pro uzel, který se použije k ověření na serveru po registraci. Tento proces brání tomu, aby se uzly zosobnění navzájem zosobněly, například pokud dojde k ohrožení zabezpečení uzlu a škodlivému chování. Po registraci se registrační klíč znovu nepoužívá k ověřování a odstraní se z uzlu.
Informace požadované pro registrační protokol State Configuration můžete získat z klíčů v části Nastavení účtu na webu Azure Portal.
- Adresa URL registrace je pole URL na stránce Klíče.
- Registrační klíč je hodnota pole Primární přístupový klíč nebo pole Sekundární přístupový klíč na stránce Klíče. Můžete použít jeden z klíčů.
Pro zvýšení zabezpečení můžete na stránce Klíče kdykoli znovu vygenerovat primární a sekundární přístupové klíče účtu Automation. Regenerace klíčů zabraňuje budoucím registracím uzlů používat předchozí klíče.
Generování metakonfigurací DSC
Pokud chcete pro službu State Configuration povolit jakýkoli počítač, můžete vygenerovat metakonfiguraci DSC. Tato konfigurace říká agentovi DSC, aby si stáhl a/nebo sestavu do služby Azure Automation State Configuration. Metakonfiguraci DSC pro Azure Automation State Configuration můžete vygenerovat pomocí konfigurace PowerShellU DSC nebo rutin Azure Automation PowerShellu.
Poznámka:
Metakonfigurace DSC obsahují tajné kódy potřebné k povolení počítače v účtu Automation pro správu. Nezapomeňte správně chránit všechny metakonfigurace DSC, které vytvoříte, nebo je po použití odstranit.
Podpora proxy serveru pro metakonfigurace je řízena nástrojem Local Configuration Manager, což je modul DSC prostředí Windows PowerShell. LCM běží na všech cílových uzlech a zodpovídá za volání konfiguračních prostředků, které jsou součástí skriptu metakonfigurace DSC. Podporu proxy serveru můžete zahrnout do metakonfigurace zahrnutím definic ProxyURL
a ProxyCredential
vlastností podle potřeby v objektu ConfigurationRepositoryWeb
, ResourceRepositoryWeb
a ReportServerWeb
bloků. Příkladem nastavení adresy URL je ProxyURL = "http://172.16.3.6:3128";
. Vlastnost ProxyCredential
je nastavená na objekt, jak je popsáno v tématu Správa přihlašovacích údajů ve službě PSCredential
Azure Automation.
Generování metakonfigurací DSC pomocí konfigurace DSC
Otevřete VSCode (nebo váš oblíbený editor) jako správce na počítači ve vašem místním prostředí. Počítač musí mít nainstalovanou nejnovější verzi WMF 5 .
Zkopírujte následující skript místně. Tento skript obsahuje konfiguraci PowerShell DSC pro vytváření metakonfigurací a příkaz, který spustí vytvoření metakonfigurace.
Poznámka:
V názvech konfigurace uzlů konfigurace stavu se na webu Azure Portal rozlišují malá a velká písmena. Pokud se případ neshoduje, uzel se nezobrazí na kartě Uzly .
# The DSC configuration that will generate metaconfigurations [DscLocalConfigurationManager()] Configuration DscMetaConfigs { param ( [Parameter(Mandatory=$True)] [String]$RegistrationUrl, [Parameter(Mandatory=$True)] [String]$RegistrationKey, [Parameter(Mandatory=$True)] [String[]]$ComputerName, [Int]$RefreshFrequencyMins = 30, [Int]$ConfigurationModeFrequencyMins = 15, [String]$ConfigurationMode = 'ApplyAndMonitor', [String]$NodeConfigurationName, [Boolean]$RebootNodeIfNeeded= $False, [String]$ActionAfterReboot = 'ContinueConfiguration', [Boolean]$AllowModuleOverwrite = $False, [Boolean]$ReportOnly ) if(!$NodeConfigurationName -or $NodeConfigurationName -eq '') { $ConfigurationNames = $null } else { $ConfigurationNames = @($NodeConfigurationName) } if($ReportOnly) { $RefreshMode = 'PUSH' } else { $RefreshMode = 'PULL' } Node $ComputerName { Settings { RefreshFrequencyMins = $RefreshFrequencyMins RefreshMode = $RefreshMode ConfigurationMode = $ConfigurationMode AllowModuleOverwrite = $AllowModuleOverwrite RebootNodeIfNeeded = $RebootNodeIfNeeded ActionAfterReboot = $ActionAfterReboot ConfigurationModeFrequencyMins = $ConfigurationModeFrequencyMins } if(!$ReportOnly) { ConfigurationRepositoryWeb AzureAutomationStateConfiguration { ServerUrl = $RegistrationUrl RegistrationKey = $RegistrationKey ConfigurationNames = $ConfigurationNames } ResourceRepositoryWeb AzureAutomationStateConfiguration { ServerUrl = $RegistrationUrl RegistrationKey = $RegistrationKey } } ReportServerWeb AzureAutomationStateConfiguration { ServerUrl = $RegistrationUrl RegistrationKey = $RegistrationKey } } } # Create the metaconfigurations # NOTE: DSC Node Configuration names are case sensitive in the portal. # TODO: edit the below as needed for your use case $Params = @{ RegistrationUrl = '<fill me in>'; RegistrationKey = '<fill me in>'; ComputerName = @('<some VM to onboard>', '<some other VM to onboard>'); NodeConfigurationName = 'SimpleConfig.webserver'; RefreshFrequencyMins = 30; ConfigurationModeFrequencyMins = 15; RebootNodeIfNeeded = $False; AllowModuleOverwrite = $False; ConfigurationMode = 'ApplyAndMonitor'; ActionAfterReboot = 'ContinueConfiguration'; ReportOnly = $False; # Set to $True to have machines only report to AA DSC but not pull from it } # Use PowerShell splatting to pass parameters to the DSC configuration being invoked # For more info about splatting, run: Get-Help -Name about_Splatting DscMetaConfigs @Params
Vyplňte registrační klíč a adresu URL vašeho účtu Automation a názvy počítačů, které chcete povolit. Všechny ostatní parametry jsou volitelné. Informace o registračním klíči a adrese URL registrace pro váš účet Automation najdete v tématu Použití metakonfigurace DSC k registraci hybridních počítačů.
Pokud chcete, aby počítače hlásily informace o stavu DSC službě Azure Automation State Configuration, ale ne na vyžádání konfigurace nebo modulů PowerShellu, nastavte
ReportOnly
parametr na true.Pokud
ReportOnly
není nastavená, počítače hlásí informace o stavu DSC do služby Azure Automation State Configuration a vyžádat konfiguraci nebo moduly PowerShellu. Nastavte parametry odpovídajícím způsobem v ,ConfigurationRepositoryWeb
ResourceRepositoryWeb
aReportServerWeb
bloky.Spusťte skript. Teď byste měli mít složku pracovního adresáře s názvem DscMetaConfigs, která obsahuje metakonfigurace PowerShell DSC pro počítače, které se mají povolit (jako správce).
Set-DscLocalConfigurationManager -Path ./DscMetaConfigs
Generování metakonfigurací DSC pomocí rutin Azure Automation
Pokud se výchozí nastavení DSC LCM PowerShellu shoduje s vaším případem použití a chcete počítačům povolit načtení i sestavy do azure Automation State Configuration, můžete pomocí rutin Azure Automation vygenerovat potřebné metakonfigurace DSC.
Otevřete konzolu PowerShellu nebo VSCode jako správce na počítači v místním prostředí.
Připojení do Azure Resource Manageru pomocí Připojení-AzAccount.
Stáhněte metakonfigurace PowerShell DSC pro počítače, které chcete povolit, z účtu Automation, ve kterém nastavujete uzly.
# Define the parameters for Get-AzAutomationDscOnboardingMetaconfig using PowerShell Splatting $Params = @{ ResourceGroupName = 'ContosoResources'; # The name of the Resource Group that contains your Azure Automation account AutomationAccountName = 'ContosoAutomation'; # The name of the Azure Automation account where you want a node on-boarded to ComputerName = @('web01', 'web02', 'sql01'); # The names of the computers that the metaconfiguration will be generated for OutputFolder = "$env:UserProfile\Desktop\"; } # Use PowerShell splatting to pass parameters to the Azure Automation cmdlet being invoked # For more info about splatting, run: Get-Help -Name about_Splatting Get-AzAutomationDscOnboardingMetaconfig @Params
Teď byste měli mít složku DscMetaConfigs obsahující metakonfigurace PowerShell DSC pro počítače, které se mají povolit (jako správce).
Set-DscLocalConfigurationManager -Path $env:UserProfile\Desktop\DscMetaConfigs
Povolení fyzických nebo virtuálních počítačů s Windows
Servery s Windows spuštěné místně nebo v jiných cloudových prostředích (včetně instancí AWS EC2) můžete povolit službě Azure Automation State Configuration. Servery musí mít odchozí přístup k Azure.
Ujistěte se, že je na počítačích nainstalovaná nejnovější verze WMF 5 , aby bylo možné povolit konfiguraci stavu. Kromě toho musí být WMF 5 nainstalován na počítači, který používáte pro povolení počítačů.
Postupujte podle pokynů v části Generování metakonfigurací DSC a vytvořte složku obsahující požadované metakonfigurace DSC.
Následující rutina slouží k vzdálenému použití metakonfigurací PowerShell DSC na počítače, které chcete povolit.
Set-DscLocalConfigurationManager -Path C:\Users\joe\Desktop\DscMetaConfigs -ComputerName MyServer1, MyServer2
Pokud nemůžete použít metakonfigurace DSC PowerShellu vzdáleně, zkopírujte složku metakonfigurací do počítačů, které povolíte. Pak přidejte kód pro místní volání Set-DscLocalConfigurationManager na počítačích.
Pomocí webu Azure Portal nebo rutin ověřte, že se počítače zobrazují jako uzly State Configuration zaregistrované ve vašem účtu Azure Automation.
Povolení fyzických nebo virtuálních počítačů s Linuxem
Pro Konfiguraci stavu můžete povolit linuxové servery spuštěné místně nebo v jiných cloudových prostředích. Servery musí mít odchozí přístup k Azure.
Ujistěte se, že je na počítačích nainstalovaný nejnovější verze powershellové konfigurace požadovaného stavu pro Linux , aby bylo možné povolit konfiguraci stavu.
Pokud se výchozí nastavení místního Configuration Manageru PowerShellu DSC shoduje s vaším případem použití a chcete povolit počítače tak, aby se přetahovaly z konfigurace stavu i sestavy:
Na každém počítači s Linuxem, který chcete povolit, použijte
Register.py
k povolení počítače s výchozími nastaveními Místního Configuration Manageru DSC PowerShellu./opt/microsoft/dsc/Scripts/Register.py <Automation account registration key> <Automation account registration URL>
Informace o registračním klíči a adrese URL registrace pro váš účet Automation najdete v tématu Použití metakonfigurace DSC k registraci hybridních počítačů.
Pokud se výchozí nastavení místního nástroje LCM (PowerShell DSC) neshoduje s vaším případem použití nebo chcete povolit počítače, které hlásí pouze konfiguraci stavu služby Azure Automation, postupujte podle kroků 4 až 7. Jinak pokračujte přímo ke kroku 7.
Postupujte podle pokynů v části Generování metakonfigurací DSC a vytvořte složku obsahující požadované metakonfigurace DSC.
Ujistěte se, že je v počítači nainstalované nejnovější verze WMF 5 , aby se povolily počítače pro State Configuration.
Přidejte kód následujícím způsobem, aby se metakonfigurace DSC PowerShellu vzdáleně použily na počítače, které chcete povolit.
$SecurePass = ConvertTo-SecureString -String '<root password>' -AsPlainText -Force $Cred = New-Object System.Management.Automation.PSCredential 'root', $SecurePass $Opt = New-CimSessionOption -UseSsl -SkipCACheck -SkipCNCheck -SkipRevocationCheck # need a CimSession for each Linux machine to onboard $Session = New-CimSession -Credential $Cred -ComputerName <your Linux machine> -Port 5986 -Authentication basic -SessionOption $Opt Set-DscLocalConfigurationManager -CimSession $Session -Path C:\Users\joe\Desktop\DscMetaConfigs
Pokud nemůžete vzdáleně použít metakonfigurace PowerShell DSC, zkopírujte metakonfigurace odpovídající vzdáleným počítačům ze složky popsané v kroku 4 na počítače s Linuxem.
Přidejte kód pro místní volání
Set-DscLocalConfigurationManager.py
na každém počítači s Linuxem, který povolí konfiguraci stavu./opt/microsoft/dsc/Scripts/SetDscLocalConfigurationManager.py -configurationmof <path to metaconfiguration file>
Pomocí webu Azure Portal nebo rutin se ujistěte, že se počítače, které se teď mají povolit, zobrazují jako uzly DSC zaregistrované ve vašem účtu Azure Automation.
Opětovné registrace uzlu
Po registraci počítače jako uzlu DSC v Azure Automation State Configuration existuje několik důvodů, proč v budoucnu možná budete muset tento uzel znovu zaregistrovat.
Prodloužení platnosti certifikátu. U verzí Windows Serveru před Windows Serverem 2019 každý uzel automaticky vyjedná jedinečný certifikát pro ověření, jehož platnost vyprší po jednom roce. Pokud platnost certifikátu vyprší bez prodlužování platnosti, uzel nemůže komunikovat se službou Azure Automation a je označen .
Unresponsive
V současné době registrační protokol PowerShell DSC nemůže automaticky obnovovat certifikáty, když se blíží vypršení platnosti, a uzly je nutné po roce znovu zaregistrovat. Před opětovnou registrací se ujistěte, že na každém uzlu běží WMF 5 RTM.Opětovná registrace provedla 90 dnů nebo méně od doby vypršení platnosti certifikátu nebo v jakémkoli okamžiku po vypršení platnosti certifikátu způsobí vygenerování a použití nového certifikátu. Řešení tohoto problému je součástí Windows Serveru 2019 a novějšího.
Změní hodnoty DSC LCM. Je možné, že budete muset změnit hodnoty DSC LCM PowerShellu nastavené při počáteční registraci uzlu,
ConfigurationMode
například . V současné době můžete tyto hodnoty agenta DSC změnit pouze prostřednictvím opětovné registrace. Jedinou výjimkou je hodnota konfigurace uzlu přiřazená uzlu. Můžete to změnit přímo ve službě Azure Automation DSC.
Uzel můžete znovu zaregistrovat stejně jako na začátku uzlu pomocí některé z metod popsaných v tomto dokumentu. Před opětovnou registrací není nutné zrušit registraci uzlu ve službě Azure Automation State Configuration.
Kontrola stavu instalace virtuálního počítače
Konfigurace stavu umožňuje snadno povolit virtuální počítače Azure s Windows pro správu konfigurace. Rozšíření Azure Desired State Configuration pod kapotou slouží k registraci virtuálního počítače ve službě Azure Automation State Configuration. Vzhledem k tomu, že rozšíření Azure VM Desired State Configuration běží asynchronně, může být důležité sledovat jeho průběh a řešit potíže s jeho spuštěním.
Poznámka:
Jakákoli metoda povolení virtuálních počítačů Azure s Windows pro konfiguraci stavu, která používá rozšíření Konfigurace požadovaného stavu virtuálního počítače Azure, může trvat až hodinu, než azure Automation zobrazí virtuální počítače jako registrované. Toto zpoždění je způsobeno instalací WMF 5 na virtuálním počítači rozšířením Konfigurace požadovaného stavu virtuálního počítače Azure, které je potřeba k povolení virtuálních počítačů pro konfiguraci stavu.
Zobrazení stavu rozšíření Konfigurace požadovaného stavu virtuálního počítače Azure:
- Na webu Azure Portal přejděte na povolený virtuální počítač.
- V části Nastavení klikněte na Rozšíření.
- Teď vyberte DSC nebo DSCForLinux v závislosti na vašem operačním systému.
- Další podrobnosti získáte kliknutím na Zobrazit podrobný stav.
Další kroky
- Pokud chcete začít, přečtěte si téma Začínáme se službou Azure Automation State Configuration.
- Další informace o kompilaci konfigurací DSC, abyste je mohli přiřadit cílovým uzlům, najdete v tématu Kompilace konfigurací DSC ve službě Azure Automation State Configuration.
- Referenční informace k rutinám PowerShellu najdete v tématu Az.Automation.
- Informace o cenách najdete v tématu Ceny služby Azure Automation State Configuration.
- Příklad použití služby Azure Automation State Configuration v kanálu průběžného nasazování najdete v tématu Nastavení průběžného nasazování pomocí Chocolatey.
- Informace o řešení potíží najdete v tématu Řešení potíží se službou Azure Automation State Configuration.