Perguntas frequentes (FAQ) sobre o Azure Cloud Shell

Este artigo responde a perguntas comuns e explica como solucionar problemas do Cloud Shell.

Suporte ao navegador

O Cloud Shell é compatível com as versões mais recentes dos navegadores a seguir:

  • Microsoft Edge
  • Google Chrome
  • Mozilla Firefox
  • Apple Safari
    • Não há suporte para o Safari no modo privado.

Copiar e colar

As chaves usadas para copiar e colar variam de acordo com o sistema operacional e o navegador. A seguinte lista contém as combinações de chave mais comuns:

  • Windows: Ctrl+c para copiar e CTRL+Shift+v ou Shift+Insert para colar.
    • O FireFox pode não dar suporte adequado às permissões da área de transferência.
  • macOS: Cmd+c para copiar e Cmd+v para colar.
  • Linux: CTRL+c para copiar e CTRL+Shift+v para colar.

Observação

Se nenhum texto for selecionado quando você digitar Ctrl+C, o Cloud Shell enviará o caractere Ctrl-c para o shell. O shell pode interpretar Ctrl-c como um sinal para Interromper e encerrar o comando em execução no momento.

Perguntas frequentes

Há um limite de tempo para sessões do Cloud Shell?

O Cloud Shell destina-se a casos de uso interativos. A sessão do Cloud Shell expira após 20 minutos sem atividade interativa. Como resultado, quaisquer sessões não interativo e de longa execução são finalizadas sem aviso.

O Cloud Shell é um serviço gratuito para gerenciar seu ambiente do Azure. Ele não é uma plataforma de computação de uso geral. O uso excessivo pode ser considerado uma violação dos Termos de Serviço do Azure, que resultam em ter seu acesso ao Cloud Shell bloqueado.

Quantas sessões simultâneas posso abrir?

O Azure Cloud Shell tem um limite de 20 usuários simultâneos por locatário. A abertura de mais de 20 sessões simultâneas produz um erro "Usuário do locatário acima da cota". Se você realmente precisar de mais de 20 sessões abertas, como no caso de sessões de treinamento, entre em contato com o Suporte para solicitar um aumento de cota antes da data de uso prevista.

Criei alguns arquivos no Cloud Shell, mas eles se foram. O que aconteceu?

O computador que fornece sua sessão do Cloud Shell é temporário e é reciclado depois que sua sessão fica inativa por 20 minutos.

Quando você iniciou o Cloud Shell pela primeira vez, foi solicitado a escolher uma opção de armazenamento.

  • Se você escolheu a opção Montar conta de armazenamento, o Cloud Shell montará um compartilhamento de arquivos do Azure na pasta clouddrive em sua sessão. Os arquivos armazenados na pasta clouddrive estão visíveis no portal do Azure usando o navegador de armazenamento. Os arquivos armazenados na pasta clouddrive persistem entre sessões.

  • Se você escolheu a opção Nenhuma conta de armazenamento necessária, só poderá gravar arquivos na pasta $HOME.

Em ambos os cenários, você pode gravar arquivos na pasta $HOME. No entanto, a pasta $HOME só existe na imagem de contêiner do Cloud Shell que você está usando atualmente. Os arquivos na pasta $HOME não estão visíveis no navegador de armazenamento e são excluídos quando a sessão termina.

Eu crio um arquivo no Azure: unidade, mas não o vejo. O que aconteceu?

O Cloud Shell carrega um provedor do PowerShell para o Azure que apresenta dados de recurso do Azure como uma unidade do sistema de arquivos. Os usuários do PowerShell podem usar a unidade Azure: para acessar os recursos do Azure. A unidade Azure: é uma unidade virtual que não permite que você crie arquivos.

Os arquivos que você cria usando outras ferramentas, como vim ou nano enquanto o local atual é a unidade Azure:, são salvos na pasta $HOME.

Quero instalar uma ferramenta no Cloud Shell que requer sudo. Isso é possível?

Não. Sua conta de usuário no Cloud Shell é uma conta sem privilégios. Você não pode usar sudo ou executar qualquer comando que requer permissões elevadas.

Solucionar problemas de erros

Caixa de diálogo Armazenamento – Erro: 403 RequestDisallowedByPolicy

  • Detalhes: Ao criar uma conta de armazenamento do Cloud Shell para usuários iniciantes, ela não é bem-sucedida devido a uma atribuição do Azure Policy feita pelo administrador. A mensagem de erro inclui:

    The resource action 'Microsoft.Storage/storageAccounts/write' is disallowed by
    one or more policies.
    
  • Resolução: contate o administrador do Azure para remover ou atualizar a atribuição de Azure Policy negando a criação de armazenamento.

Caixa de diálogo – Erro: 400 DisallowedOperation

  • Detalhes: Não é possível criar a conta de armazenamento do Cloud Shell ao usar uma assinatura do Microsoft Entra.
  • Resolução: Assinaturas do Microsoft Entra ID não são capazes de criar recursos do Azure. use uma assinatura do Azure capaz de criar recursos de armazenamento.

Saída de terminal - Erro: Falha ao conectar o terminal

  • Detalhes: o Cloud Shell requer a capacidade de estabelecer uma conexão websocket à infraestrutura do Cloud Shell.
  • Resolução: Confirme se sua rede permite o envio de solicitações HTTPS e websocket para os seguintes domínios:
    • *.console.azure.com
    • *.servicebus.windows.net
    • *.servicebus.usgovcloudapi.net para Nuvem do Azure Governamental

Falha ao acessar um terminal - Acesso ao Cloud Shell a partir de um resolvedor de DNS privado

  • Detalhes: o Cloud Shell usa a Retransmissão do Azure para conexões de terminal. O Cloud Shell pode falhar ao solicitar um terminal devido a problemas de resolução de DNS. Essa falha pode ser causada quando você inicia uma sessão do Cloud Shell a partir de um host em uma rede que tem uma zona DNS privada para o domínio servicebus. Esse erro também pode ocorrer se você estiver usando um servidor DNS privado no local.

  • Resolução: Você pode adicionar um registro DNS para a instância de Retransmissão do Azure que o Cloud Shell usa.

    As etapas a seguir mostram como identificar o nome DNS da instância do Cloud Shell e como criar um registro DNS para esse nome.

    1. Tente iniciar o Cloud Shell usando seu navegador da Web. Use as Ferramentas para Desenvolvedores do navegador para localizar o nome da instância da Retransmissão do Azure. No Microsoft Edge ou Google Chrome, clique na tecla F12 para abrir as Ferramentas para Desenvolvedores. Selecione a guia Rede. Localize a caixa Pesquisar no canto superior direito. Pesquise por terminals? para localizar a solicitação de um terminal do Cloud Shell. Selecione uma das entradas de solicitação encontradas pela pesquisa. Na guia Cabeçalhos, localize o nome do host no URL de Solicitação. O nome é semelhante a ccon-prod-<region-name>-aci-XX.servicebus.windows.net. Para a Nuvem do Azure Governamental, o nome do host termina com servicebus.usgovcloudapi.net.

      A captura de tela a seguir mostra as Ferramentas para Desenvolvedores no Microsoft Edge para uma solicitação bem-sucedida para um terminal. O nome do host será ccon-prod-southcentalus-aci-02.servicebus.windows.net. No seu caso, a solicitação deve não ter êxito, mas você poderá encontrar o nome do host que precisa resolver.

      Captura de tela das ferramentas para desenvolvedores do navegador.

      Para obter informações sobre como acessar as Ferramentas para Desenvolvedores em outros navegadores, consulte Capturar um rastreamento do navegador para solução de problemas.

    2. Em um host fora da rede privada, execute o comando nslookup para localizar o endereço IP do nome do host, conforme encontrado na etapa anterior.

      nslookup ccon-prod-southcentalus-aci-02.servicebus.windows.net
      

      O resultado deve ser semelhante ao exemplo a seguir:

      Server:         168.63.129.16
      Address:        168.63.129.16
      
      Non-authoritative answer:
      ccon-prod-southcentralus-aci-02.servicebus.windows.net  canonical name = ns-sb2-prod-sn3-012.cloudapp.net.
      Name:   ns-sb2-prod-sn3-012.cloudapp.net
      Address: 40.84.152.91
      
    3. Adicione um registro A para o IP público na Zona DNS Privada da sua rede privada. Para este exemplo, o registro DNS teria as seguintes propriedades:

      • Nome: ccon-prod-southcentralus-aci-02
      • Tipo: A
      • TTL: 1 hora
      • Endereço IP: 40.84.152.91

      Para obter mais informações sobre como criar registros DNS em uma zona DNS privada, consulte Gerenciar conjuntos de registros DNS e registros com o DNS do Azure.

      Observação

      Esse endereço IP está sujeito a alterações periódicas. Talvez seja necessário repetir esse processo para descobrir o novo endereço IP.

    Como alternativa, você pode implantar sua própria instância privada do Cloud Shell. Para obter mais informações, consulte Implantar o Cloud Shell em uma rede virtual.

Saída do terminal — o Cloud Shell não foi provisionado: {"code":"TenantDisabled" ...}

  • Detalhes: em casos raros, o Azure pode sinalizar o consumo de recursos fora do comum com base no Cloud Shell como atividade fraudulenta. Quando isso ocorre, o Azure desabilita o Cloud Shell no nível do locatário e você vê a seguinte mensagem de erro:

    Falha ao provisionar o Cloud Shell: {"code":"TenantDisabled","message":"O Cloud Shell foi desabilitado no diretório<>."} Atualize a página.

    Pode haver casos de uso legítimos em que o uso da CPU em sua instância do Azure Cloud Shell excede os limites que disparam a prevenção contra fraudes e bloqueiam seu locatário. Trabalhos grandes do AZCopy podem ser a causa desse evento. A equipe de engenharia do Microsoft Azure pode ajudar a descobrir por que o locatário foi desabilitado e habilitá-lo novamente.

  • Resolução: para investigar a causa e habilitar novamente o Cloud Shell para seu locatário, abra uma nova solicitação de suporte do Azure. Inclua os seguintes detalhes:

    1. ID do locatário
    2. A justificativa comercial e uma descrição de como você usa o Cloud Shell.

Gerenciamento do Cloud Shell

Gerenciar dados pessoais

O Microsoft Azure leva seus dados pessoais a sério. O serviço Azure Cloud Shell armazena informações sobre seu armazenamento no Cloud Shell e suas preferências de terminal. Você pode visualizar essas informações usando um dos seguintes exemplos.

  • Execute os seguintes comandos no prompt de comando bash:

    URL="https://management.azure.com/providers/Microsoft.Portal/usersettings/cloudconsole?api-version=2017-12-01-preview"
    az rest --method get --url $URL
    
  • Execute os seguintes comandos no prompt de comando do PowerShell:

    $invokeAzRestMethodSplat = @{
        Uri    = 'https://management.azure.com/providers/Microsoft.Portal/usersettings/cloudconsole?api-version=2017-12-01-preview'
        Method = 'GET'
    }
    $userdata = (Invoke-AzRestMethod @invokeAzRestMethodSplat).Content
    ($userdata | ConvertFrom-Json).properties | Format-List
    

Você pode excluir esses dados pessoais redefinindo suas configurações de usuário. A redefinição das configurações de usuário encerra a sessão atual e desmonta a conta de armazenamento vinculada. O compartilhamento de arquivos do Azure usado pelo Cloud Shell não está excluído.

Ao reconectar-se ao Cloud Shell, você é solicitado a anexar uma conta de armazenamento. Você pode criar uma nova conta de armazenamento ou reanexar a conta de armazenamento existente que você usou anteriormente.

Use as seguintes etapas para excluir suas configurações de usuário.

  1. Inicie o Cloud Shell.
  2. Selecione o menu Configurações (ícone de engrenagem) na barra de ferramentas do Cloud Shell.
  3. Selecione Redefinir configurações de usuário no menu.
  4. Selecione o botão Redefinir para confirmar a ação.

Bloqueie o Cloud Shell em um ambiente de rede bloqueado

  • Detalhes: Os administradores podem querer desabilitar o acesso ao Cloud Shell para seus usuários. O Cloud Shell depende do acesso ao domínio ux.console.azure.com, que pode ser negado, interrompendo o acesso aos pontos de entrada do Cloud Shell, incluindo portal.azure.com, shell.azure.com, extensão Conta do Azure do Visual Studio Code e video2.skills-academy.com. Na nuvem US Government, o ponto de entrada é ux.console.azure.us. Não há nenhum shell.azure.us correspondente.
  • Resolução: Restringir o acesso a ux.console.azure.com ou ux.console.azure.us em sua rede. O ícone do Cloud Shell ainda exista no portal do Azure, mas você não pode se conectar ao serviço.