Criar uma instância de computação do Azure Machine Learning
APLICA-SE A:Extensão de ML da CLI do Azure v2 (atual)SDK do Python azure-ai-ml v2 (atual)
Saiba como criar e gerenciar umainstância de computação no seu espaço de trabalho do Azure Machine Learning.
Use uma instância de computação como seu ambiente de desenvolvimento totalmente configurado e gerenciado na nuvem. Para desenvolvimento e teste, você também pode usar a instância como um destino de computação de treinamento. Uma instância de computação pode executar vários trabalhos em paralelo e tem uma fila de trabalhos. Como um ambiente de desenvolvimento, uma instância de computação não pode ser compartilhada com outros usuários no workspace.
Neste artigo, você aprenderá a criar uma instância de computação. Confira Gerenciar uma instância de computação do Azure Machine Learning para obter informações sobre como gerenciar as etapas iniciar, parar, reiniciar e excluir uma instância de computação.
Você também poderá usar um script de instalação para criar a instância de computação com seu próprio ambiente personalizado.
As instância de computação podem executar trabalhos com segurança em um ambiente de rede virtual, sem exigir que as empresas abram portas SSH. O trabalho é executado em um ambiente de contêineres e empacota as dependências do modelo em um contêiner do Docker.
Observação
Este artigo usa a CLI v2 em alguns exemplos. Se ainda estiver usando a CLI v1, consulte Criar uma CLI v1 do cluster de computação do Azure Machine Learning.
Pré-requisitos
- Um Workspace do Azure Machine Learning. Para obter mais informações, consulte Criar um workspace do Azure Machine Learning. Na conta de armazenamento, a opção "Permitir acesso à chave da conta de armazenamento" deve ser habilitada para que a criação da instância de computação seja bem-sucedida.
Escolha a guia para o ambiente que você está usando e outros pré-requisitos.
- Para usar o SDK do Python, configure seu ambiente de desenvolvimento com um espaço de trabalho. Depois de configurar o ambiente, conecte-o ao workspace do seu script Python:
Execute este código para se conectar ao seu workspace do Azure Machine Learning.
Substitua a ID da Assinatura, o nome do Grupo de Recursos e o nome do workspace no código a seguir. Para encontrar esses valores:
- Entre no Estúdio do Azure Machine Learning.
- Abra o espaço de trabalho que você deseja usar.
- Selecione o nome do workspace na barra de ferramentas superior direita do Estúdio do Azure Machine Learning.
- Copie o valor do espaço de trabalho, do grupo de recursos e da ID da assinatura no código.
APLICA-SE A: SDK do Python azure-ai-ml v2 (atual)
# Enter details of your AML workspace
subscription_id = "<SUBSCRIPTION_ID>"
resource_group = "<RESOURCE_GROUP>"
workspace = "<AML_WORKSPACE_NAME>"
# get a handle to the workspace
from azure.ai.ml import MLClient
from azure.identity import DefaultAzureCredential
ml_client = MLClient(
DefaultAzureCredential(), subscription_id, resource_group, workspace
)
ml_client
é um manipulador para o workspace que você usará para gerenciar outros recursos e trabalhos.
Criar
Tempo estimado: Aproximadamente 5 minutos.
A criação de uma instância de computação é um processo único em seu workspace. Você pode reutilizar a computação como uma estação de trabalho de desenvolvimento ou como um destino de computação para treinamento. Você pode ter várias instâncias de computação anexadas ao seu espaço de trabalho.
Os núcleos dedicados por região por cota de família de VM e cota regional total, que se aplicam à criação de instância de computação, são unificados e compartilhados com a cota de cluster de cálculo de treinamento do Azure Machine Learning. Interromper a instância de computação não libera a cota para garantir que você possa reiniciar a instância de computação. Uma cota é um limite de crédito nos recursos do Azure, não uma garantia de capacidade. Reiniciar uma instância de computação ainda depende da capacidade disponível da região. Se houver uma restrição de capacidade na região para a SKU, talvez você não consiga reiniciar a instância de computação. Não é possível alterar o tamanho da máquina virtual da instância de computação depois que ela é criada.
A maneira mais rápida de criar uma instância de computação é seguir o Criar os recursos que você precisa para começar.
Ou, então, use os seguintes exemplos para criar uma instância de computação com mais opções:
APLICA-SE A: SDK do Python azure-ai-ml v2 (atual)
# Compute Instances need to have a unique name across the region.
# Here we create a unique name with current datetime
from azure.ai.ml.entities import ComputeInstance, AmlCompute
import datetime
ci_basic_name = "basic-ci" + datetime.datetime.now().strftime("%Y%m%d%H%M")
ci_basic = ComputeInstance(name=ci_basic_name, size="STANDARD_DS3_v2")
ml_client.begin_create_or_update(ci_basic).result()
Para obter mais informações sobre as classes, métodos e parâmetros para criar uma instância de computação, consulte os seguintes documentos de referência:
Você também pode criar uma instância de computação com um modelo de Azure Resource Manager.
Configurar o desligamento quando ocioso
Para evitar ser cobrado por uma instância de computação que está ligada, mas inativa, você poderá configurar para desligar a instância de computação quando houver inatividade.
Uma instância de computação será considerada inativa se as condições abaixo forem atendidas:
- Nenhuma sessão ativa do Jupyter Kernel (o que se traduz em nenhum uso de Notebooks por meio do Jupyter, JupyterLab ou notebooks interativos)
- Nenhuma sessão do terminal Jupyter ativa
- Nenhuma execução ou experimentos ativos do Azure Machine Learning
- Nenhuma conexão do VS Code. Feche a conexão do VS Code para que sua instância de computação seja considerada inativa. As sessões são encerradas automaticamente se o VS Code não detectar nenhuma atividade por 3 horas.
- Nenhum aplicativo personalizado está em execução na computação
Uma instância de computação não será considerada ociosa se qualquer aplicativo personalizado estiver em execução. Para desligar uma computação com um aplicativo personalizado automaticamente, um agendamento precisa ser configurado ou o aplicativo personalizado precisa ser removido. Há também alguns limites básicos em torno dos períodos de inatividade: a instância de computação deverá ficar inativa por no mínimo 15 minutos e no máximo três dias. Também não controlamos conexões SSH do VS Code para determinar a atividade.
Além disso, se uma instância de computação já estiver ociosa por um determinado período, se as configurações de desligamento por ociosidade forem atualizadas para um período menor que a duração atual da ociosidade, o relógio de tempo ocioso é redefinido para 0. Por exemplo, se a instância de computação já estiver ociosa por 20 minutos e as configurações de desligamento forem atualizadas para 15 minutos, o relógio de tempo ocioso é redefinido para 0.
Importante
Se a instância de computação também estiver configurada com uma identidade gerenciada, a instância de computação não será encerrada devido à inatividade, a menos que a identidade gerenciada tenha acesso colaborador ao espaço de trabalho do Azure Machine Learning. Para obter mais informações sobre como atribuir permissões, consulte Gerenciar o acesso aos espaços de trabalho do Azure Machine Learning.
A configuração pode ser realizada durante a criação da instância de computação ou configurar as instâncias de computação existentes por meio das seguintes interfaces:
APLICA-SE A: SDK do Python azure-ai-ml v2 (atual)
Ao criar uma nova instância de computação, adicione o parâmetro idle_time_before_shutdown_minutes
.
# Note that idle_time_before_shutdown has been deprecated.
ComputeInstance(name=ci_basic_name, size="STANDARD_DS3_v2", idle_time_before_shutdown_minutes="30")
Não é possível alterar o tempo ocioso de uma instância de computação existente com o SDK do Python.
Também é possível alterar o tempo ocioso usando:
API REST
Ponto de extremidade:
POST https://management.azure.com/subscriptions/{SUB_ID}/resourceGroups/{RG_NAME}/providers/Microsoft.MachineLearningServices/workspaces/{WS_NAME}/computes/{CI_NAME}/updateIdleShutdownSetting?api-version=2021-07-01
Corpo:
{ "idleTimeBeforeShutdown": "PT30M" // this must be a string in ISO 8601 format }
Modelos do ARM: configuráveis apenas durante a criação de uma nova instância de computação.
// Note that this is just a snippet for the idle shutdown property in an ARM template { "idleTimeBeforeShutdown":"PT30M" // this must be a string in ISO 8601 format }
Agendar início e parada automáticos
Defina vários agendamentos para desligamento automático e início automático. Por exemplo, crie uma agenda para começar às 9:00 e parar às 18:00 de segunda-feira a quinta-feira e uma segunda agenda para começar às 9:00 e parar às 16:00 de sexta-feira. Você pode criar um total de quatro agendamentos por instância de computação.
Os agendamentos também podem ser definidos para criar em nome das instâncias de computação. É possível criar um agendamento que cria a instância de computação em um estado interrompido. Instâncias de computação interrompidas são úteis quando você cria uma instância de computação em nome de outro usuário.
Antes de um desligamento agendado, os usuários veem uma notificação alertando-os de que a Instância de Computação está prestes a ser desligada. Nesse ponto, o usuário pode escolher ignorar o próximo evento de desligamento. Por exemplo, se eles estiverem no meio do uso da Instância de Computação.
Criar um agendamento
APLICA-SE A: SDK do Python azure-ai-ml v2 (atual)
from azure.ai.ml.entities import ComputeInstance, ComputeSchedules, ComputeStartStopSchedule, RecurrenceTrigger, RecurrencePattern
from azure.ai.ml.constants import TimeZone
from azure.ai.ml import MLClient
from azure.identity import DefaultAzureCredential
ci_minimal_name = "ci-name"
ci_start_time = "2023-06-21T11:47:00" #specify your start time in the format yyyy-mm-ddThh:mm:ss
rec_trigger = RecurrenceTrigger(start_time=ci_start_time, time_zone=TimeZone.INDIA_STANDARD_TIME, frequency="week", interval=1, schedule=RecurrencePattern(week_days=["Friday"], hours=15, minutes=[30]))
myschedule = ComputeStartStopSchedule(trigger=rec_trigger, action="start")
com_sch = ComputeSchedules(compute_start_stop=[myschedule])
my_compute = ComputeInstance(name=ci_minimal_name, schedules=com_sch)
ml_client.compute.begin_create_or_update(my_compute)
Criar um agendamento com um modelo do Resource Manager
Você pode agendar a inicialização automática e a parada de uma instância de computação usando um modelo do Resource Manager.
No modelo do Resource Manager, adicione:
"schedules": "[parameters('schedules')]"
Use expressões cron ou LogicApps para definir o agendamento que inicia ou interrompe a instância no arquivo de parâmetro:
"schedules": {
"value": {
"computeStartStop": [
{
"triggerType": "Cron",
"cron": {
"timeZone": "UTC",
"expression": "0 18 * * *"
},
"action": "Stop",
"status": "Enabled"
},
{
"triggerType": "Cron",
"cron": {
"timeZone": "UTC",
"expression": "0 8 * * *"
},
"action": "Start",
"status": "Enabled"
},
{
"triggerType": "Recurrence",
"recurrence": {
"frequency": "Day",
"interval": 1,
"timeZone": "UTC",
"schedule": {
"hours": [17],
"minutes": [0]
}
},
"action": "Stop",
"status": "Enabled"
}
]
}
}
A ação pode ter o valor de
Start
ouStop
.Para o tipo de gatilho
Recurrence
use a mesma sintaxe do aplicativo lógico com esteRecurrence
.Para o tipo de gatilho
cron
, use a sintaxe Cron padrão:// Crontab expression format: // // * * * * * // - - - - - // | | | | | // | | | | +----- day of week (0 - 6) (Sunday=0) // | | | +------- month (1 - 12) // | | +--------- day of month (1 - 31) // | +----------- hour (0 - 23) // +------------- min (0 - 59) // // Star (*) in the value field above means all legal values as in // braces for that column. The value column can have a * or a list // of elements separated by commas. An element is either a number in // the ranges shown above or two numbers in the range separated by a // hyphen (meaning an inclusive range).
Suporte do Azure Policy a um agendamento padrão
Use a Azure Policy para aplicar um agendamento de desligamento que exista para cada instância de computação em uma assinatura ou para definir por padrão um agendamento, se não houver nenhum. Veja a seguir uma política de exemplo para o padrão de um agendamento de desligamento às 22 horas (PST).
{
"mode": "All",
"policyRule": {
"if": {
"allOf": [
{
"field": "Microsoft.MachineLearningServices/workspaces/computes/computeType",
"equals": "ComputeInstance"
},
{
"field": "Microsoft.MachineLearningServices/workspaces/computes/schedules",
"exists": "false"
}
]
},
"then": {
"effect": "append",
"details": [
{
"field": "Microsoft.MachineLearningServices/workspaces/computes/schedules",
"value": {
"computeStartStop": [
{
"triggerType": "Cron",
"cron": {
"startTime": "2021-03-10T21:21:07",
"timeZone": "Pacific Standard Time",
"expression": "0 22 * * *"
},
"action": "Stop",
"status": "Enabled"
}
]
}
}
]
}
}
}
Criação em nome de
Como administrador, você pode criar uma instância de computação em nome de um cientista de dados e atribuir a instância a elas com:
Studio, usando as configurações de segurança neste artigo.
Modelo do Azure Resource Manager. Para obter detalhes sobre como encontrar a Tenantid e o ObjectID necessários neste modelo, consulte Localizar IDs de objeto de identidade para configuração de autenticação. Você também pode encontrar esses valores no centro de administração do Microsoft Entra.
Para aumentar ainda mais a segurança, quando você criar uma instância de computação em nome de um cientista de dados e atribuir a instância a ele, o logon único (SSO) será desabilitado durante a criação se a instância de computação tiver um script de configuração ou um aplicativo personalizado.
O atribuído ao usuário precisa habilitar o SSO na instância de computação depois que a computação é atribuída a eles atualizando a configuração de SSO na instância de computação. Atribuído ao usuário precisa ter a seguinte permissão/ação em sua função MachineLearningServices/workspaces/computes/enableSso/action. Atribuído ao usuário não precisa de permissão de gravação de computação (criar) para habilitar o SSO.
Estas são as etapas atribuídas ao usuário que precisam ser tomadas. Observe que o criador da instância de computação não tem permissão para habilitar o SSO nessa instância de computação devido a motivos de segurança.
Clique na computação no painel de navegação esquerdo no Estúdio do Azure Machine Learning.
Clique no nome da instância de computação em que você precisa habilitar o SSO.
Edite a seção Detalhes do logon único.
Habilite a alternância de logon único.
Salvar. A atualização levará algum tempo.
Atribuir identidade gerenciada
Você pode conceder uma identidade gerenciada atribuída pelo sistema ou pelo usuário a uma instância de computação para se autenticar em outros recursos do Azure, como armazenamento. O uso de identidades gerenciadas para autenticação ajuda a melhorar a segurança e o gerenciamento do workspace. Por exemplo, você pode permitir que os usuários acessem os dados de treinamento somente quando conectados a uma instância de computação. Ou use uma identidade gerenciada atribuída pelo usuário comum para permitir o acesso a uma conta de armazenamento específica.
Importante
Se a instância de computação também estiver configurada para desligamento ocioso, ela não será desligada devido à inatividade, a menos que a identidade gerenciada tenha acesso de colaborador ao espaço de trabalho do Azure Machine Learning. Para obter mais informações sobre como atribuir permissões, consulte Gerenciar o acesso aos espaços de trabalho do Azure Machine Learning.
Você pode usar o SDK V2 para criar uma instância de computação com a identidade gerenciada atribuída pelo sistema:
from azure.ai.ml import MLClient
from azure.identity import ManagedIdentityCredential
client_id = os.environ.get("DEFAULT_IDENTITY_CLIENT_ID", None)
credential = ManagedIdentityCredential(client_id=client_id)
ml_client = MLClient(credential, subscription_id, resource_group, workspace)
Use também o SDK V1:
from azureml.core.authentication import MsiAuthentication
from azureml.core import Workspace
client_id = os.environ.get("DEFAULT_IDENTITY_CLIENT_ID", None)
auth = MsiAuthentication(identity_config={"client_id": client_id})
workspace = Workspace.get("chrjia-eastus", auth=auth, subscription_id=subscription_id, resource_group=resource_group, location="East US")
Depois que a identidade gerenciada for criada, conceda à identidade gerenciada pelo menos a função Leitor de Dados do Blob de Armazenamento na conta de armazenamento do armazenamento de dados, confira Como acessar serviços de armazenamento. Em seguida, ao trabalhar na instância de computação, a identidade gerenciada será usada automaticamente para autenticar em armazenamentos de dados.
Observação
O nome da identidade gerenciada do sistema criada estará no formato /workspace-name/computes/compute-instance-name no Microsoft Entra ID.
Você também pode usar a identidade gerenciada manualmente para se autenticar em outros recursos do Azure. O exemplo a seguir mostra como usá-la para obter um token de acesso do Azure Resource Manager:
import requests
def get_access_token_msi(resource):
client_id = os.environ.get("DEFAULT_IDENTITY_CLIENT_ID", None)
resp = requests.get(f"{os.environ['MSI_ENDPOINT']}?resource={resource}&clientid={client_id}&api-version=2017-09-01", headers={'Secret': os.environ["MSI_SECRET"]})
resp.raise_for_status()
return resp.json()["access_token"]
arm_access_token = get_access_token_msi("https://management.azure.com")
Para usar a CLI do Azure com a identidade gerenciada para autenticação, especifique a ID do cliente de identidade como o nome de usuário ao fazer logon:
az login --identity --username $DEFAULT_IDENTITY_CLIENT_ID
Observação
Você não consegue usar azcopy
ao tentar usar a identidade gerenciada. azcopy login --identity
não funcionará.
Habilitar acesso SSH
O acesso SSH está desabilitado por padrão. O acesso SSH não pode ser habilitado ou desabilitado após a criação. Habilite o acesso se você planeja depurar interativamente com o VS Code Remote.
Depois de selecionar Próximo: Configurações avançadas:
- Ative Habilitar acesso SSH.
- Em Origem de chave pública SSH, selecione uma das opções na lista suspensa:
- Se você Gerar um novo par de chaves:
- Insira um nome para a chave em Nome do par de chaves.
- Selecione Criar.
- Selecione Baixar chave privada e criar computação. Geralmente, a chave é baixada na pasta Downloads.
- Se você selecionar Usar chave pública existente armazenada no Azure, procure e selecione a chave em Chave armazenada.
- Se você selecionar Usar chave pública existente, forneça uma chave pública RSA no formato de linha única (começando com "ssh-rsa") ou o formato PEM de várias linhas. É possível gerar chaves SSH usando ssh-keygen no Linux e no OS X, ou PuTTYGen no Windows.
- Se você Gerar um novo par de chaves:
Configurar uma chave SSH mais tarde
Embora o SSH não possa ser habilitado ou desabilitado após a criação, você tem a opção de configurar uma chave SSH mais tarde em uma instância de computação habilitada para SSH. Isso permite que você configure a chave SSH após a criação. Para fazer isso, selecione para habilitar o SSH em sua instância de computação e selecione "Configurar uma chave SSH mais tarde" como a origem da chave pública SSH. Depois que a instância de computação for criada, você poderá visitar a página Detalhes da instância de computação e selecionar a edição das chaves SSH. A partir daí, você pode adicionar sua chave SSH.
Um exemplo de um caso de uso comum para isso é ao criar uma instância de computação em nome de outro usuário (confira Criar em nome de) Ao provisionar uma instância de computação em nome de outro usuário, você pode habilitar o SSH para o novo proprietário da instância de computação selecionando Configurar uma chave SSH mais tarde. Isso permite que o novo proprietário da instância de computação configure a chave SSH para a instância de computação recém-adquirida, uma vez que ela tenha sido criada e atribuída a eles, seguindo as etapas anteriores.
Conexão com o SSH
Depois de criar uma computação com acesso SSH habilitado, use estas etapas para acesso.
Encontre a computação nos recursos do workspace:
- Selecione Computação à esquerda.
- Use as guias na parte superior para selecionar Instância de computação ou Cluster de computação e encontrar o computador.
Selecione o nome da computação na lista de recursos.
Encontre a cadeia de conexão:
Para uma instância de computação, selecione Conexão na parte superior da seção Detalhes.
Para um cluster de computação, clique em Nós na parte superior e, em seguida, selecione a Cadeia de conexão na tabela do nó.
Copie a cadeia de conexão.
No Windows, abra o PowerShell ou um prompt de comando:
Acesse o diretório ou a pasta em que a chave está armazenada
Adicione o sinalizador -i à cadeia de conexão para localizar a chave privada e apontar para onde ela está armazenada:
ssh -i <keyname.pem> azureuser@... (rest of connection string)
Para usuários do Linux, siga as etapas em Criar e usar um par de chaves SSH para VMs do Linux no Azure
Para uso de SCP:
scp -i key.pem -P {port} {fileToCopyFromLocal } azureuser@yourComputeInstancePublicIP:~/{destination}
- API REST
O cientista de dados para o qual você cria a instância de computação precisa das seguintes permissões do Azure RBAC (controle de acesso baseado em função) :
- Microsoft.MachineLearningServices/workspaces/computes/start/action
- Microsoft.MachineLearningServices/workspaces/computes/stop/action
- Microsoft.MachineLearningServices/workspaces/computes/restart/action
- Microsoft.MachineLearningServices/workspaces/computes/applicationaccess/action
- Microsoft.MachineLearningServices/workspaces/computes/updateSchedules/action
O cientista de dados pode iniciar, parar e reiniciar a instância de computação. Eles podem usar a instância de computação para:
- Jupyter
- JupyterLab
- RStudio
- Posit Workbench (anteriormente RStudio Workbench)
- Notebooks integrados
Adicionar aplicativos personalizados, como RStudio ou Posit Workbench
Você pode configurar outros aplicativos, como o RStudio ou Posit Workbench (anteriormente RStudio Workbench), ao criar uma instância de computação. Seguir estas etapas no estúdio para configurar um aplicativo personalizado na instância de computação
- Preencha o formulário para criar uma nova instância de computação
- Selecione Aplicativos
- Selecione Adicionar aplicativo
Configurar Posit Workbench (anteriormente RStudio Workbench)
O RStudio é um dos IDEs mais populares entre os desenvolvedores de R para projetos de ML e ciência de dados. É possível configurar facilmente o Posit Workbench, que fornece acesso ao RStudio junto com outras ferramentas de desenvolvimento para executar na instância de computação, usando a própria licença do Posit e acessar o conjunto avançado de recursos que o Posit Workbench oferece.
- Siga as etapas listadas acima para Adicionar aplicativo ao criar a instância de computação.
- Selecione Posit Workbench (traga sua própria licença) na lista suspensa Aplicativo e insira a chave de licença do Posit Workbench no campo Chave de Licença. Você pode obter a licença do Posit Workbench ou a licença de avaliação do Posit.
- Selecione Criar para adicionar o aplicativo Posit Workbench à instância de computação.
Importante
Se você estiver usando um workspace de link privado, verifique se a imagem do Docker, pkg-containers.githubusercontent.com e ghcr.io estão acessíveis. Além disso, use uma porta publicada no intervalo 8704-8993. Para o Posit Workbench (anteriormente RStudio Workbench), verifique se a licença está acessível fornecendo acesso à rede ao https://www.wyday.com.
Observação
- O suporte para acessar o repositório de arquivos do espaço de trabalho do Posit Workbench ainda não está disponível.
- Ao acessar várias instâncias do Posit Workbench, se você visualizar uma "Solicitação 400 Inválida. Erro Cabeçalho de solicitação ou Cookie muito grande", use um novo navegador ou acesso de um navegador no modo anônimo.
Configurar o RStudio (código aberto)
Para usar o RStudio, configure um aplicativo personalizado da seguinte forma:
Siga as etapas anteriores para Adicionar aplicativo ao criar sua instância de computação.
Selecione Aplicativo Personalizado na lista de seleção Aplicativo.
Configure o Nome do aplicativo que você quer usar.
Configure o aplicativo para executar na Porta de Destino
8787
– a imagem do docker para o código aberto do RStudio listada abaixo precisa ser executada nessa Porta de Destino.Configure o aplicativo a ser acessado na Porta Publicada
8787
– você poderá configurar o aplicativo a ser acessado em uma Porta Publicada diferente, se desejar.Aponte a imagem do Docker para
ghcr.io/azure/rocker-rstudio-ml-verse:latest
.Selecione Criar para configurar o RStudio como um aplicativo personalizado na instância de computação.
Importante
Se você estiver usando um workspace de link privado, verifique se a imagem do Docker, pkg-containers.githubusercontent.com e ghcr.io estão acessíveis. Além disso, use uma porta publicada no intervalo 8704-8993. Para o Posit Workbench (anteriormente RStudio Workbench), verifique se a licença está acessível fornecendo acesso à rede ao https://www.wyday.com.
Configurar outros aplicativos personalizados
Configure outros aplicativos personalizados na instância de computação fornecendo o aplicativo em uma imagem do Docker.
- Siga as etapas anteriores para Adicionar aplicativo ao criar sua instância de computação.
- Selecione Aplicativo Personalizado na lista suspensa Aplicativo.
- Configure o Nome do aplicativo, a Porta de Destino em que deseja executar o aplicativo, a Porta Publicada em que você deseja acessar o aplicativo e a imagem do Docker que contém o aplicativo. Se a imagem personalizada estiver armazenada em um Registro de Contêiner do Azure, atribua a função Colaborador aos usuários do aplicativo. Para obter informações sobre a atribuição de funções, consulte Gerenciar o acesso a um Workspace do Azure Machine Learning.
- Opcionalmente, adicione Variáveis de ambiente que você quer usar para o aplicativo.
- Use montagens associadas para adicionar acesso aos arquivos em sua conta de armazenamento padrão:
- Especifique /home/azureuser/cloudfiles para o caminho do host.
- Especifique /home/azureuser/cloudfiles para o caminho do contêiner.
- Selecione Adicionar para adicionar essa montagem. Como os arquivos são montados, as alterações feitas a eles estão disponíveis em outras instâncias de computação e aplicativos.
- Selecione Criar para configurar o aplicativo personalizado na instância de computação.
Importante
Se você estiver usando um workspace de link privado, verifique se a imagem do Docker, pkg-containers.githubusercontent.com e ghcr.io estão acessíveis. Além disso, use uma porta publicada no intervalo 8704-8993. Para o Posit Workbench (anteriormente RStudio Workbench), verifique se a licença está acessível fornecendo acesso à rede ao https://www.wyday.com.
Acessar aplicativos personalizados no estúdio
Acessar os aplicativos personalizados que você configurou no estúdio:
- Selecione Computação à esquerda.
- Na guia Instância de Computação, veja os aplicativos na coluna Aplicativos.
Observação
Pode levar alguns minutos depois de configurar um aplicativo personalizado até que você possa acessá-lo por meio de links. O tempo gasto dependerá do tamanho da imagem usada para seu aplicativo personalizado. Se você vir uma mensagem de erro 502 ao tentar acessar o aplicativo, aguarde algum tempo para que o aplicativo seja configurado e tente novamente. Se a imagem personalizada for obtida de um Registro de Contêiner Azure, você precisará da função Colaborador para o espaço de trabalho. Para obter informações sobre a atribuição de funções, consulte Gerenciar o acesso a um Workspace do Azure Machine Learning.