Clonar e apagar um ambiente virtual
Clonar um ambiente virtual para outro é muito simples. Basta saber o nome do container que queremos clonar e que nome vamos dar ao clone.
Para tal, corremos o comando:
lxc-clone -o demo -n demo2
Em poucos segundo temos um segundo ambiente virtual criado.
Se o quisermos apagar, também é simples. Basta correr o comando:
lxc-destry -n demo2
Outros comandos importantes
LXC, ao contrário de outros programas, tem diversos comandos para efectuar pequenas operações.
Aqui ficam algumas:
lxc-backup – Backup de um container que use lvm
lxc-cgroup – Ver e estabelecer os limites de um ambiente
lxc-execute – Correr um comando num container que não esteja a correr
lxc-freeze – Colocar em pausa um ambiente virtual
lxc-info – Mostrar o estado de um container
lxc-kill – Matar o init de um container
lxc-list – Ver todos os containers
lxc-ls – Ver todos os containers de uma forma menos detalhada
lxc-monitor – Monitorizar os estados de um container
lxc-netstat – Correr o comando netstat num container
lxc-ps – Ver os proçessos de um determinado ambiente virtual
lxc-restore – Restaurar um backup feito em lvm
lxc-shutdown – Desligar de forma segura um container
lxc-start-ephemeral – Iniciar um container, mas sem efectuar as alterações definitivamente
lxc-stop – Parar imediatamente um container
lxc-unfreeze – Tirar de pausa um container
lxc-version – Ver a versão de LXC
lxc-wait – Esperar que um container chegue a um determinado estado
Brincar um pouco com LXC – Instalar Ubuntu ARM
Com LXC, a imaginação é o limite, por isso é possível fazer algumas coisas fora do normal, tal como correr Ubuntu ARM, que tem instruções diferentes de x86. basta usar o Qemu.
Para tal instalamos o qemu estático, com o comando:
apt-get install qemu-user-static
Para criar o container, correr o comando:
lxc-create -n ubuntu-arm -t ubuntu — -a armhf
Como numa instalação de Ubuntu x86, é feito a instalação mínima de Ubuntu, mas por baixo ele está a usar qemu.
Durante alguns minutos são instalados os pacotes. Este tempo demora mais que o normal, devido a estarmos a usar emulação com o qemu.
No fim, é dito que temos a máquina pronta, com o user e password “ubuntu”, no template de Arm para Ubuntu.
Inicia-se o container como outro qualquer, com o comando:
lxc-start -n ubuntu-arm
Como podem ver pelo uname -a, estou dentro de uma máquina, que está emulada com qemu, e a correr Ubuntu como se estivesse numa máquina com processador ARM.
Conclusão
Este artigo serve só como introdução a esta nova tecnologia que existe em Linux.
Muito ficou por falar, como a atribuição de limites, entre outras coisas, mas é algo que é fácil de perceber, depois de sabermos o básico sobre LXC.
Penso que esta é uma tecnologia interessante e que por estar dentro do Kernel, se torna mais vísivel que OpenVZ, Vserver, entre outras, que durante muito tempo precisaram de patchs de Kernel.
Em muitos casos, penso que é uma boa alternativa a Virtualização, por motivos de velocidade e flexibilidade que permite em Linux.
Imagem do banner retirada de:http://saturn.ffzg.hr/rot13/index.cgi?action=display_html;page_name=lxc