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.
Usando o comando API REST for Run em servidores habilitados para ArcGIS do Azure (Visualização), você pode executar scripts ou comandos remotamente e com segurança em máquinas virtuais habilitadas para Arc sem se conectar diretamente a elas por meio do Protocolo de Área de Trabalho Remota ou SSH.
Este artigo fornece operações de API REST suportadas e um cenário de exemplo para ajudá-lo a entender como usar a API REST.
Pré-requisitos
- A versão do agente de Máquina Conectada no servidor habilitado para Arc deve ser 1.33 ou superior.
- Você precisa de um token de acesso para usar a API REST. Consulte Introdução ao REST.
Operações de API REST suportadas
Você pode usar as seguintes operações da API REST para executar comandos Run em um servidor habilitado para Azure Arc.
| Funcionamento | Descrição |
|---|---|
| Criar ou atualizar | A operação para criar ou atualizar um comando de execução. Executa o comando Run. |
| Eliminar | A operação para excluir um comando Executar. Se estiver em execução, apagar também interrompe o comando Executar. |
| Obter | A operação para acessar o comando "Executar". |
| Lista | A operação para obter todos os comandos de execução de um servidor com Azure Arc ativado. |
| Atualização | A operação para atualizar o comando Executar. Interrompe o comando Executar anterior. |
Observação
Os blobs de saída e de erro são substituídos sempre que é executado o script de comando run.
Exemplo de cenário da API REST
As solicitações a seguir orientam-no a usar o comando Executar para configurar remotamente uma regra de firewall que permite o acesso ao ponto de extremidade www.microsoft.com/pkiops/certs. O cenário de exemplo usa cada uma das operações REST disponíveis.
Os exemplos de código usam as seguintes informações:
-
ID da subscrição -
aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e -
Nome do servidor habilitado para Arc -
2012DatacenterServer1 -
Grupo de recursos -
ContosoRG - Sistema operacional do servidor - servidores Windows Server 2012 / R2
Etapa 1: Criar acesso ao ponto de extremidade com um comando Run
Primeiro, crie um script de comando Run para fornecer acesso ao ponto de extremidade de destino no servidor habilitado para Arc usando a operação PUT.
Você pode fornecer o script integrado ou pode ligar ao ficheiro de script.
Para fornecer o script em linha:
PUT https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoRG/providers/Microsoft.HybridCompute/machines/2012DatacenterServer1/runCommands/EndpointAccessCommand?api-version=2024-11-10-preview{ "location": "eastus2", "properties": { "source": { "script": "New-NetFirewallRule -DisplayName $ruleName -Direction Outbound -Action Allow -RemoteAddress $endpoint -RemotePort $port -Protocol $protocol" }, "parameters": [ { "name": "ruleName", "value": "Allow access to www.microsoft.com/pkiops/certs" }, { "name": "endpoint", "value": "www.microsoft.com/pkiops/certs" }, { "name": "port", "value": 433 }, { "name": "protocol", "value": "TCP" } ], "asyncExecution": false, "runAsUser": "contoso-user1", "runAsPassword": "Contoso123!" "timeoutInSeconds": 3600, "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt", "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt" } }Para vincular ao arquivo de script:
Observação
Este exemplo pressupõe que você preparou um arquivo chamado
newnetfirewallrule.ps1, contendo o script in-line e que você enviaste o script para o Blob Storage.PUT https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoRG/providers/Microsoft.HybridCompute/machines/2012DatacenterServer1/runCommands/EndpointAccessCommand?api-version=2024-11-10-preview{ "location": "eastus2", "properties": { "source": { "scriptUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/newnetfirewallrule.ps1" }, "parameters": [ { "name": "ruleName", "value": " Allow access to www.microsoft.com/pkiops/certs" }, { "name": "endpoint", "value": "www.microsoft.com/pkiops/certs" }, { "name": "port", "value": 433 }, { "name": "protocol", "value": "TCP" } ], "asyncExecution": false, "runAsUser": "contoso-user1", "runAsPassword": "Contoso123!" "timeoutInSeconds": 3600, "outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt", "errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt" } }O
scriptUrié um URI de assinatura de acesso compartilhado (SAS) para o blob de armazenamento e deve fornecer acesso de leitura ao blob. Sugere-se um tempo de expiração de 24 horas para o URI SAS. Você pode gerar um URI SAS no portal do Azure usando opções de blobs ou token SAS usandoNew-AzStorageBlobSASToken. Se gerar token SAS usandoNew-AzStorageBlobSASToken, o formato URI SAS é:base blob URL + "?"+ o token SAS deNew-AzStorageBlobSASToken.Os blobs de saída e erro devem ser do tipo AppendBlob e seus URIs SAS devem fornecer acesso de leitura, acréscimo, criação e gravação ao blob. Sugere-se um tempo de expiração de 24 horas para o URI SAS. Você pode gerar URIs SAS no portal do Azure usando as opções de blob ou gerar um token SAS através de
New-AzStorageBlobSASToken.
Para saber mais sobre assinaturas de acesso compartilhado, consulte Conceder acesso limitado aos recursos do Armazenamento do Azure usando assinaturas de acesso compartilhado (SAS).
Etapa 2: Verificar os detalhes do comando Executar
Verifique se você provisionou corretamente o comando Executar usando a operação GET.
GET https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoRG/providers/Microsoft.HybridCompute/machines/2012DatacenterServer1/runCommands/EndpointAccessCommand?api-version=2024-11-10-preview
Etapa 3: Atualizar o comando Executar
Você pode atualizar o comando Run existente com novos parâmetros usando a operação PATCH. O exemplo a seguir abre o acesso a outro ponto de extremidade, *.waconazure.com, para conectividade com o Windows Admin Center.
PATCH https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoRG/providers/Microsoft.HybridCompute/machines/2012DatacenterServer1/runCommands/EndpointAccessCommand?api-version=2024-11-10-preview
{
"location": "eastus2",
"properties": {
"source": {
"script": "New-NetFirewallRule -DisplayName $ruleName -Direction Outbound -Action Allow -RemoteAddress $endpoint -RemotePort $port -Protocol $protocol"
},
"parameters": [
{
"name": "ruleName",
"value": "Allow access to WAC endpoint"
},
{
"name": "endpoint",
"value": "*.waconazure.com"
},
{
"name": "port",
"value": 433
},
{
"name": "protocol",
"value": "TCP"
}
],
"asyncExecution": false,
"runAsUser": "contoso-user1",
"runAsPassword": "Contoso123!",
"timeoutInSeconds": 3600,
"outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
"errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
}
}
Etapa 4: Listar comandos de execução
Antes de excluir o comando Executar para acesso ao ponto de extremidade, verifique se não há outros comandos Executar para o servidor com Arc ativado. Você pode usar a operação LIST para obter todos os comandos Run no servidor habilitado para Arc:
LIST https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoRG/providers/Microsoft.HybridCompute/machines/2012DatacenterServer1/runCommands?api-version=2024-11-10-preview
Etapa 5: Apagar um Comando 'Executar'
Quando não precisar mais da extensão de comando Executar, você poderá excluí-la usando a seguinte operação DELETE:
DELETE https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoRG/providers/Microsoft.HybridCompute/machines/2012DatacenterServer1/runCommands/EndpointAccessCommand?api-version=2024-11-10-preview