Multipass: Gerenciador de Maquinas Virtuais Ubuntu: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
 
(9 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
=Multipass Ubuntu=
=Multipass: Multipass: Gerenciador de Máquinas Virtuais Ubuntu=


O '''[https://multipass.run/ Multipass]''' é um gerenciador de '''VM''' ('''máquinas virtuais''') para '''Linux''', '''Windows''' e '''macOS'''. Permite rodar '''máquinas virtuais''' e configurá-las de forma similar a uma '''máquina virtual em nuvem'''.  
O '''[https://multipass.run/ Multipass]''' é um gerenciador de '''VM''' ('''máquinas virtuais''') para '''Linux''', '''Windows''' e '''macOS'''. Permite rodar '''máquinas virtuais''' e configurá-las de forma similar a uma '''máquina virtual em nuvem'''.  
Linha 12: Linha 12:


==Uso do Multipass==
==Uso do Multipass==
;Configurar senha para acesso ao Multipass: Uma senha precisa ser configurada pelo administrador para permitir aos clientes acessarem o serviço Multipass
multipass set local.passphrase
Please enter passphrase:
Please re-enter passphrase:
Depois o cliente precisa de autenticar:
multipass authenticate


;Lançando instâncias Linux com Multipass:
;Lançando instâncias Linux com Multipass:
Linha 56: Linha 65:
  sudo apt install net-tools
  sudo apt install net-tools


O '''Multipass''' cria as instâncias virtuais com uma '''configuração de rede''' própria, utilizando '''[[NAT]]''' atrás da máquina hospedeira.
Entretanto, é possível que as instâncias criadas na mesma rede da máquina hospedeira utilizando uma configuração do '''Multipass''' em modo '''bridge'''.
==Servidor SSH em instância Multipass==
O '''servidor SSH''' já vem instalado nas instâncias criadas no '''Multipass'''.
Entretanto, é necessário realizar uma configuração para permitir acesso remoto, usando senha, a partir de outras máquinas.
;Configuração no servidor SSH no Multipass:
Abrir um shell na instância:
multipass shell nome_instancia
Mudar para o diretório:
/etc/ssh
Editar o arquivo de configuração:
nano sshd_config
Comentar a linha abaixo com o caractere #:
#PasswordAuthentication no
;Definir senha para o usuário padrão no Multipass:
sudo passwd ubuntu
===Acesso ao servidor SSH===
A partir de uma máquina com o cliente SSH é possível fazer acesso remoto ao servidor SSH com o comando:
ssh user@endereçoServidor
:onde user é o nome de login do usuário e endereçoServidor é o endereço IP ou nome de domínio do servidor.
Para testar o servidor, execute comandos de arquivo e navegue na estrutura de diretórios do servidor, usando comandos como:
ls
cd
==Montar arquivo da máquina hospedeira na máquina virtual==
==Montar arquivo da máquina hospedeira na máquina virtual==


Linha 72: Linha 118:
Para desmontar o diretório, utilizar o comando:
Para desmontar o diretório, utilizar o comando:
  multipass unmount ubuntu1
  multipass unmount ubuntu1
==Resolvendo Problemas==
===Instância que não reinicia===
Referência: https://blog.mutantmahe.sh/2021-05-09-how-to-recover-from-multipass-instance-stopped-while-starting-error/
;Problema e comandos executados no Ubuntu 20.04:
evandro@evandro-Inspiron-14-3467:~$ multipass list                     
Name                    State            IPv4            Image
ubuntu1                Suspended        --              Ubuntu 20.04 LTS
:Verificação de processos rodando.
ps -aux|grep multipass
root      17815 11.5 25.0 3479016 972840 ?      Sl  14:00  0:19 /snap/multipass/6130/usr/bin/qemu-system-x86_64 --enable-kvm -cpu host -nic tap,ifname=tap-f56b9ce0ac6,script=no,downscript=no,model=virtio-net-pci,mac=52:54:00:f8:37:8c -device virtio-scsi-pci,id=scsi0 -drive file=/var/snap/multipass/common/data/multipassd/vault/instances/ubuntu1/ubuntu-20.04-server-cloudimg-amd64.img,if=none,format=qcow2,discard=unmap,id=hda -device scsi-hd,drive=hda,bus=scsi0.0 -smp 1 -m 1024M -qmp stdio -chardev null,id=char0 -serial chardev:char0 -nographic -cdrom /var/snap/multipass/common/data/multipassd/vault/instances/ubuntu1/cloud-init-config.iso -loadvm suspend -machine pc-i440fx-focal
:Matando processo:
sudo kill -9 17815
:Máquina conseguiu reiniciar!


==Referências==
==Referências==

Edição atual tal como às 13h47min de 4 de agosto de 2023

Multipass: Multipass: Gerenciador de Máquinas Virtuais Ubuntu

O Multipass é um gerenciador de VM (máquinas virtuais) para Linux, Windows e macOS. Permite rodar máquinas virtuais e configurá-las de forma similar a uma máquina virtual em nuvem.

Instalação do Multipass no Linux

A instalação do Multipass, para os diferentes sistemas, está detalhada nas referências [1] ou [2].

No Ubuntu a instalação é realizada com um único comando:
sudo snap install multipass

Para instalação no Windows ou macOS verificar procedimentos no site da ferramenta.

Uso do Multipass

Configurar senha para acesso ao Multipass
Uma senha precisa ser configurada pelo administrador para permitir aos clientes acessarem o serviço Multipass
multipass set local.passphrase
Please enter passphrase:
Please re-enter passphrase:

Depois o cliente precisa de autenticar:

multipass authenticate
Lançando instâncias Linux com Multipass
multipass launch --name ubuntu1
Nesta caso é criada uma instância Ubuntu com a última versão LTS.
Rodar um comando na instância criada
multipass exec ubuntu1 -- lsb_release -a
Abrir um shell em um instância
multipass shell ubuntu1

Para sair do shell da instância e voltar ao hospedeiro, utilizar comando exit.

Visualizar as instâncias
multipass list
Informações sobre uma instância
multipass info ubuntu1
Parar e reiniciar instâncias
multipass stop ubuntu1
multipass start ubuntu1
Apagar instâncias que não precisamos mais

Apagar instâncias:

multipass delete ubuntu1

Remover arquivos de instâncias que não precisamos mais:

multipass purge
Verificar imagens alternativas para instalação
multipass find
Ajuda com outros comandos
multipass help

Configuração de rede

Abrir um shell na instância desejada:

multipass shell ubuntu1
Visualizar configuração de rede
ifconfig
Nas versões novas do Ubuntu o comando ifconfig somente estará disponível após a instalação da ferramenta net-tools:
sudo apt install net-tools

O Multipass cria as instâncias virtuais com uma configuração de rede própria, utilizando NAT atrás da máquina hospedeira.

Entretanto, é possível que as instâncias criadas na mesma rede da máquina hospedeira utilizando uma configuração do Multipass em modo bridge.

Servidor SSH em instância Multipass

O servidor SSH já vem instalado nas instâncias criadas no Multipass. Entretanto, é necessário realizar uma configuração para permitir acesso remoto, usando senha, a partir de outras máquinas.

Configuração no servidor SSH no Multipass

Abrir um shell na instância:

multipass shell nome_instancia

Mudar para o diretório:

/etc/ssh

Editar o arquivo de configuração:

nano sshd_config

Comentar a linha abaixo com o caractere #:

#PasswordAuthentication no
Definir senha para o usuário padrão no Multipass
sudo passwd ubuntu

Acesso ao servidor SSH

A partir de uma máquina com o cliente SSH é possível fazer acesso remoto ao servidor SSH com o comando:

ssh user@endereçoServidor
onde user é o nome de login do usuário e endereçoServidor é o endereço IP ou nome de domínio do servidor.

Para testar o servidor, execute comandos de arquivo e navegue na estrutura de diretórios do servidor, usando comandos como:

ls
cd

Montar arquivo da máquina hospedeira na máquina virtual

É possível montar um diretório da máquina hospedeira na máquina virtual, assim, é possível trocar arquivos entre os dois ambientes.

Exemplo de comando:

multipass mount ~/AdmServ ubuntu1
Monta o diretório ~/AdmServ na máquina virtual ubuntu1
multipass info ubuntu1
Mostra o diretório montado.

Para desmontar o diretório, utilizar o comando:

multipass unmount ubuntu1

Resolvendo Problemas

Instância que não reinicia

Referência: https://blog.mutantmahe.sh/2021-05-09-how-to-recover-from-multipass-instance-stopped-while-starting-error/

Problema e comandos executados no Ubuntu 20.04
evandro@evandro-Inspiron-14-3467:~$ multipass list                      
Name                    State             IPv4             Image
ubuntu1                 Suspended         --               Ubuntu 20.04 LTS
Verificação de processos rodando.
ps -aux|grep multipass
root       17815 11.5 25.0 3479016 972840 ?      Sl   14:00   0:19 /snap/multipass/6130/usr/bin/qemu-system-x86_64 --enable-kvm -cpu host -nic tap,ifname=tap-f56b9ce0ac6,script=no,downscript=no,model=virtio-net-pci,mac=52:54:00:f8:37:8c -device virtio-scsi-pci,id=scsi0 -drive file=/var/snap/multipass/common/data/multipassd/vault/instances/ubuntu1/ubuntu-20.04-server-cloudimg-amd64.img,if=none,format=qcow2,discard=unmap,id=hda -device scsi-hd,drive=hda,bus=scsi0.0 -smp 1 -m 1024M -qmp stdio -chardev null,id=char0 -serial chardev:char0 -nographic -cdrom /var/snap/multipass/common/data/multipassd/vault/instances/ubuntu1/cloud-init-config.iso -loadvm suspend -machine pc-i440fx-focal
Matando processo:
sudo kill -9 17815
Máquina conseguiu reiniciar!

Referências


Evandro.cantu (discussão) 15h59min de 19 de janeiro de 2022 (-03)