Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Observação
A extensão do DSC será aposentada em 31 de março de 2028. Mova para a Configuração de Máquina do Azure até essa data. Para obter mais informações, consulte o anúncio da postagem no blog . O serviço de Configuração de Máquina do Azure combina determinados recursos da Extensão DSC, Configuração do Estado de Automação do Azure e recursos comumente solicitados dos comentários dos clientes. A Configuração de Máquina do Azure também inclui suporte a máquinas híbridas por meio de servidores habilitados para Arc.
Visão geral
A Extensão DSC do PowerShell para Windows carrega e aplica uma Configuração de DSC do PowerShell em uma máquina virtual do Azure. A Extensão DSC chama o DSC do PowerShell para executar a configuração DSC recebida na máquina virtual. Este documento detalha as plataformas, configurações e opções de implantação suportadas para a extensão de máquina virtual DSC para Windows.
Observação
Experimenta o VM assist para diagnósticos mais rápidos. Recomendamos que execute o VM assist para Windows ou o VM assist para Linux. Essas ferramentas de diagnóstico baseadas em script ajudam você a identificar problemas comuns que afetam o Agente Convidado da VM do Azure e a integridade geral da VM.
Se estiver a experienciar problemas de desempenho com máquinas virtuais, antes de contactar o suporte, execute estas ferramentas.
Pré-requisitos
Sistema operativo
A extensão DSC suporta os seguintes sistemas operativos
Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012R2, Windows Server 2012, Windows Server 2008 R2 SP1, Windows Client 7/8.1/10
conectividade Internet
A extensão DSC para Windows requer que a máquina virtual de destino seja capaz de se comunicar com o Azure e o local do pacote de configuração (arquivo.zip) se armazenado fora do Azure.
Esquema de extensão
O JSON a seguir mostra o esquema para a parte de configurações da Extensão DSC em um modelo do Azure Resource Manager.
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "Microsoft.Powershell.DSC",
"apiVersion": "2018-10-01",
"location": "<location>",
"properties": {
"publisher": "Microsoft.Powershell",
"type": "DSC",
"typeHandlerVersion": "2.77",
"autoUpgradeMinorVersion": true,
"settings": {
"wmfVersion": "latest",
"configuration": {
"url": "http://validURLToConfigLocation",
"script": "ConfigurationScript.ps1",
"function": "ConfigurationFunction"
},
"configurationArguments": {
"argument1": "Value1",
"argument2": "Value2"
},
"configurationData": {
"url": "https://foo.psd1"
},
"privacy": {
"dataCollection": "enable"
},
"advancedOptions": {
"forcePullAndApply": false,
"downloadMappings": {
"specificDependencyKey": "https://myCustomDependencyLocation"
}
}
},
"protectedSettings": {
"configurationArguments": {
"parameterOfTypePSCredential1": {
"userName": "UsernameValue1",
"password": "PasswordValue1"
},
"parameterOfTypePSCredential2": {
"userName": "UsernameValue2",
"password": "PasswordValue2"
}
},
"configurationUrlSasToken": "?g!bber1sht0k3n",
"configurationDataUrlSasToken": "?dataAcC355T0k3N"
}
}
}
Valores de propriedade
| Nome | Valor / Exemplo | Tipo de dados |
|---|---|---|
| apiVersion | 2018-10-01 | date |
| editor | Microsoft.Powershell.DSC | cadeia (de caracteres) |
| tipo | DSC | cadeia (de caracteres) |
| typeHandlerVersion | 2.77 | int |
Valores da propriedade Settings
| Nome | Tipo de dados | Description |
|---|---|---|
| configurações.wmfVersion | cadeia (de caracteres) | Especifica a versão do Windows Management Framework que deve ser instalada em sua VM. Definir esta propriedade como 'mais recente' instala a versão mais atualizada do WMF. Os únicos valores atuais possíveis para esta propriedade são '4.0', '5.0' e 'mais recente'. Estes valores possíveis estão sujeitos a atualizações. O valor padrão é 'mais recente'. |
| configurações.configuração.url | cadeia (de caracteres) | Especifica o local da URL a partir do qual o arquivo zip de configuração DSC deve ser baixado. Se a URL fornecida exigir um token SAS para acesso, defina a propriedade protectedSettings.configurationUrlSasToken como o valor do seu token SAS. Esta propriedade é necessária se settings.configuration.script e/ou settings.configuration.function estiverem definidos. |
| configurações.configuration.script | cadeia (de caracteres) | Especifica o nome do arquivo do script que contém a definição da configuração do DSC. Esse script deve estar na pasta raiz do arquivo zip baixado da URL especificada pela propriedade configuration.url. Esta propriedade é necessária se settings.configuration.url e/ou settings.configuration.script estiverem definidos. |
| configurações.configuration.function | cadeia (de caracteres) | Especifica o nome da configuração do DSC. A configuração nomeada deve estar contida no script definido por configuration.script. Esta propriedade é necessária se settings.configuration.url e/ou settings.configuration.function estiverem definidos. |
| settings.configurationArgumentos | Collection | Define todos os parâmetros que você gostaria de passar para sua configuração DSC. Esta propriedade não será encriptada. |
| configurações.configurationData.url | cadeia (de caracteres) | Especifica a URL a partir da qual o arquivo de dados de configuração (.pds1) deve ser usado como entrada para a configuração do DSC. Se a URL fornecida exigir um token SAS para acesso, defina a propriedade protectedSettings.configurationDataUrlSasToken como o valor do seu token SAS. |
| settings.privacy.dataEnabled | cadeia (de caracteres) | Habilita ou desabilita a coleta de telemetria. Os únicos valores possíveis para esta propriedade são 'Enable', 'Disable', ", ou $null. Deixar essa propriedade em branco ou nula habilita a telemetria |
| configurações.advancedOptions.forcePullAndApply | Bool | Essa configuração foi projetada para aprimorar a experiência de trabalhar com a extensão para registrar nós com o Azure Automation DSC. Se o valor for $true, a extensão aguardará a primeira execução da configuração retirada do serviço antes de retornar sucesso/falha. Se o valor for definido como $false, o status retornado pela extensão se refere a se o nó foi registrado com êxito na Configuração do Estado de Automação do Azure e se a configuração do nó não será executada durante o registro. |
| settings.advancedOptions.downloadMapeamentos | Collection | Define locais alternativos para baixar dependências, como WMF e .NET |
Valores da propriedade Configurações Protegidas
| Nome | Tipo de dados | Description |
|---|---|---|
| protectedSettings.configurationArguments | cadeia (de caracteres) | Define todos os parâmetros que você gostaria de passar para sua configuração DSC. |
| protectedSettings.configurationUrlSasToken | cadeia (de caracteres) | Especifica o token SAS para acessar a URL definida por configuration.url. |
| protectedSettings.configurationDataUrlSasToken | cadeia (de caracteres) | Especifica o token SAS para acessar a URL definida por configurationData.url. |
Implementação de modelos
As extensões de VM do Azure podem ser implantadas com modelos do Azure Resource Manager. Os modelos são ideais ao implantar uma ou mais máquinas virtuais que exigem configuração pós-implantação. Um modelo de exemplo do Resource Manager que inclui a extensão DSC para Windows pode ser encontrado na Galeria de Início Rápido do Azure.
Solução de problemas e suporte
Troubleshoot
Os dados sobre o estado das implantações de extensão podem ser recuperados do portal do Azure e usando a CLI do Azure. Para ver o estado de implantação das extensões de uma determinada VM, execute o seguinte comando usando a CLI do Azure.
az vm extension list --resource-group myResourceGroup --vm-name myVM -o table
O pacote de extensão é baixado e implantado neste local na VM do Azure
C:\Packages\Plugins\{Extension_Name}\{Extension_Version}
O arquivo de status da extensão contém o substatus e os códigos de sucesso/erro de status, juntamente com o erro detalhado e a descrição de cada execução de extensão.
C:\Packages\Plugins\{Extension_Name}\{Extension_Version}\Status\{0}.Status -> {0} being the sequence number
Os logs de saída de extensão são registrados no seguinte diretório:
C:\WindowsAzure\Logs\Plugins\{Extension_Name}\{Extension_Version}
Códigos de erro e seus significados
| Código de Erro | Meaning | Ação possível |
|---|---|---|
| 1000 | Erro genérico | A mensagem para esse erro é fornecida pela exceção específica nos logs de extensão |
| 52 | Erro de instalação da extensão | A mensagem para este erro é fornecida pela exceção específica |
| 1002 | Erro de instalação do Wmf | Erro ao instalar o WMF. |
| 1004 | Pacote Zip inválido | Zip inválido; Erro ao descompactar o zip |
| 1100 | Erro de argumento | Indica um problema na entrada fornecida pelo usuário. A mensagem para o erro é fornecida pela exceção específica |
Support
Se precisar de mais ajuda em qualquer ponto deste artigo, entre em contato com os especialistas do Azure nos fóruns MSDN Azure e Stack Overflow. Como alternativa, você pode registrar um incidente de suporte do Azure. Vá para o site de suporte do Azure e selecione Obter suporte. Para obter informações sobre como usar o Suporte do Azure, leia as Perguntas frequentes de suporte do Microsoft Azure.