Acessando instâncias de servidor virtual usando consoles VNC ou seriais
É possível acessar sua instância de servidor virtual da IBM Cloud conectando-se a um console do VNC ou serial por meio da IU da IBM Cloud, das solicitações de API ou da Interface da Linha de Comandos (CLI) da IBM Cloud. O serviço de console é uma maneira rápida e fácil para você interagir com a instância sem usar um Shell Seguro.
Apenas para servidores virtuais do z/OS e instâncias de servidor virtual que utilizam a computação confidencial do TDX: a conexão de uma instância de servidor virtual do z/OS ou da computação confidencial do TDX a um console VNC não é suportada.
Isso se aplica a situações nas quais ocorreu uma falha de inicialização ou um travamento do kernel, principalmente ao usar uma imagem customizada. Quando essas situações acontecem, é possível usar o serviço de console para examinar o problema.
O console do VNC fornece uma interface gráfica com o usuário e aceita entrada do mouse e do teclado. O console serial fornece um console baseado em texto que aceita entrada do teclado.
É possível usar o console para acessar os procedimentos de carregamento e inicialização do S.O. como GNU GRand Unified Bootloader (GRUB).
O console pode ser aberto usando qualquer um dos navegadores suportados.
Antes de Iniciar
- Para se conectar aos consoles, é necessário que você tenha as funções “
Operator” (ou superior) e “Console Administrator” atribuídas para a instância do servidor virtual no “ IBM Cloud® Identity and Access Management ” (IAM).
A função Console Administrator não é aplicada automaticamente. Se você for um administrador de sua conta, também será preciso designar a função Console Administrator para si mesmo a fim de usar este recurso.
Para verificar se você possui as funções necessárias, acesse a página “[Usuários do IAM](/iam/users){: external} ” no console do IBM Cloud, selecione sua conta na seção “**Usuário** ” e, em seguida, selecione “**Políticas de acesso** ”. Certifique-se de que haja uma política de acesso que atribua a você a função “ `Operator` ” (ou superior) e a função “ `VirtualServerConsoleAdmin` ” aos **Atributos de Recurso** da instância do servidor virtual de destino. Caso contrário, você precisaria entrar em contato com um administrador de sua conta para lhe designar as funções, usando as etapas a seguir:
1. Acesse a página [“Usuários do IAM”](/iam/users){: external} no console do IBM Cloud e selecione o usuário desejado.
1. Clique na guia **Acesso** e role até **Políticas de acesso**.
1. Clique em **Designar acesso**.
1. Role até a seção **Criar política**.
1. Na seção **Service**, selecione _VPC Infrastructure services_. Em seguida, clique em **Avançar**.
1. Na seção **Recursos**, selecione _Todos os recursos_.
1. Em **Funções e ações**, selecione o seguinte Acesso ao serviço:
- Administrador do console
1. Em seguida, selecione uma das seguintes opções de acesso à plataforma:
- Operador
- Editor
- Administrador
1. Clique em **Avançar**.
1. Opcionalmente, adicione uma Condição.
1. Clique em **Revisar**.
1. Clique em **Incluir**.
1. Revise a área de janela lateral **Resumo de acesso** e clique em **Designar**.
Para obter mais informações sobre as funções do IAM, consulte [Introdução ao IAM](/docs/vpc?topic=vpc-iam-getting-started).
{: tip}
-
As imagens fornecidas pela IBM Cloud geralmente não têm senhas. Para acessar com sucesso a instância com os consoles, pode ser necessário criar uma senha para uma imagem do Linux ou recuperar com antecedência a senha para uma imagem do Windows.
-
Para imagens do Linux, conecte-se à instância seguindo Conectando-se a instâncias do Linux. Na instância, crie uma senha local com o comando a seguir:
sudo passwd $(whoami) -
Para imagens do Windows, obtenha a senha seguindo Conectando-se a instâncias do Windows.
-
Para imagens do z/OS, obtenha a senha a seguir Conectando-se a instâncias do z/OS.
-
Para o console serial, é possível configurar getty para efetuar login automaticamente sem uma senha usando a sinalização -a root.
Para ativar o serviço de console serial para imagens customizadas Linux, certifique-se de que o argumento console=ttyS0 esteja presente na linha de comandos do kernel. Para obter mais informações, consulte a Etapa 1 — Comece com um único arquivo de imagem no formato qcow2 ou VHD na seção “Criação de uma imagem personalizada do Linux ”.
Usando a IU da IBM Cloud para se conectar a um console
Siga estas etapas para se conectar a um console usando a IU da IBM Cloud.
- No site IBM Cloud console, acesse o ícone “ Menu de navegação ”
> Infraestrutura
> Computação > Instância de servidor virtual.
- Na lista Instâncias de servidor virtual para VPC, clique no botão overflow da instância que precisa ser acessada e, em seguida, clique em Abrir Console VNC ou em Abrir Console serial. Como alternativa, na página de detalhes da instância, clique em Ação na parte superior direita, em seguida, clique em Abrir Console VNC ou em Abrir Console serial.
- (Somente para console serial) Se o console serial estiver sendo usado, você será solicitado a confirmar se dever forçar a abertura de uma sessão. Essa ação desconecta a sessão do outro usuário.
- Insira as credenciais e siga os prompts para efetuar login em suas instâncias.
É possível parar ou reiniciar a instância clicando em Encerrar instância ou Reinicializar instância na parte superior direita da janela do console.
Usando a API para se conectar a um console
Para usar as solicitações da API a fim de se conectar a um console VNC ou serial, é necessário obter um token do IAM, armazenar o terminal como uma variável e verificar se você tem acesso ao serviço de API da VPC. Para obter mais informações, consulte Pré-requisitos da API.
Usando a API para se conectar a um console VNC
-
Crie um token de acesso ao console para a instância. Especifique
"console_type":"VNC"na carga útil.curl -X POST \ "$vpc_api_endpoint/v1/instances/$instance_id/console_access_token?version=2021-01-26&generation=2" \ -H "Authorization: Bearer $iam_token" \ -d '{ "console_type": "vnc" }'O token de acesso ficará inválido após 3 minutos.
-
Salve o valor de "href" na resposta.
-
Abra o portal noVNC em um navegador.
-
Clique em Configuração e expanda Avançado > WebSocket.
-
Verifique Criptografar, cole a parte do terminal da API da URL salva na etapa 2 em Host:, não inclua "wss://", configure Porta como "443", cole a parte do caminho da URL salva na etapa 2 em Caminho.
- Terminal da API de exemplo:
us-south.iaas.cloud.ibm.com - Caminho de exemplo:
v1/instances/<instance_id>/console?access_token=<access_token>&version=2020-12-06&generation=2
- Terminal da API de exemplo:
-
Clique em Conectar.
-
Efetue login na instância.
Usando a API para se conectar a um console serial
-
Crie um token de acesso ao console para a instância, especifique
"console_type": "serial"e"force": truena carga útil.curl -X POST \ "$vpc_api_endpoint/v1/instances/$instance_id/console_access_token?version=2020-01-26&generation=2" \ -H "Authorization: $token" \ -d '{ "console_type":"serial", "force": true }'Ao especificar
"force"comotrue, é possível conectar-se ao console serial mesmo quando o console é usado por outros usuários. O valor padrão éfalse, o que significa que a conexão não pode ser estabelecida se o console estiver sendo usado. -
Salve o valor de "href" na resposta.
-
Inicie seu programa de console serial usando a URL.
Se você usar websocat, especifique a sinalização
--binaryem seu comando. Por exemplo,websocat --binary "wss://us-south.iaas.cloud.ibm.com/v1/instances/<instance_id>/console?access_token=<access_token>&version=2020-12-06&generation=2" -
Insira as credenciais e siga os prompts para efetuar login em suas instâncias.
Usando a CLI para se conectar a um console
Certifique-se de configurar o ambiente da CLI seguindo Pré-requisitos da CLI.
-
Execute o comando a seguir para se conectar a um console:
ibmcloud is instance-console $instance_idEste comando abre um console serial por padrão. Para abrir um console VNC, inclua a sinalização
[--vnc]no comando para recuperar a URL do console. -
Dependendo de qual console você está usando, execute uma das etapas a seguir:
- Para consoles VNC, siga da Etapa 2 à Etapa 7 em Usando a API para se conectar a um console VNC.
- Para consoles seriais, insira as credenciais e siga os prompts para efetuar login em suas instâncias.
Desconectando-se do console
Quando você concluir com o console, será possível desconectar-se dele fechando o terminal ou o navegador.
Notas sobre o serviço de console
-
A sessão do console expira após 10 minutos de tempo inativo. Ela se fecha após 60 minutos, independentemente da atividade.
Alguns sistemas operacionais têm um cursor piscando no console, por exemplo, Ubuntu 18.04. Quando você usa o console VNC para acessar instâncias que usam tais sistemas operacionais, o cursor piscando faz com que a sessão do console permaneça ativa após ele ficar inativo por 10 minutos. A sessão do console ainda se fechará após 60 minutos independentemente da atividade.
-
O console se desconectará se a instância for desligada. Não é possível reestabelecer a conexão até que a instância seja iniciada novamente.
-
A operação reiniciar, reconfigurar ou qualquer outra que não resulte em replanejamento da instância mantém a conexão do console.
-
O número de consoles VNC ativos por instância é limitado a dois. O número de consoles seriais ativos por instância é limitado a um.
-
Para obter informações sobre a solução de problemas de uma instância de servidor virtual Linux usando o console serial, consulte Como posso usar a chave SysRq do Linux para solucionar problemas de uma instância de servidor virtual Linux partir do console serial?