Primeiros passos com o LXD abrem as portas para o gerenciamento eficiente e leve de contêineres e máquinas virtuais no Linux. O LXD é um poderoso gerenciador de contêineres de sistema e VMs que simplifica a implantação e o gerenciamento de contêineres Linux, sendo uma solução ideal para hospedar aplicações web, ambientes de teste e implantar microsserviços. Ele preenche a lacuna entre a virtualização tradicional e a conteinerização, oferecendo flexibilidade e desempenho para as necessidades de infraestrutura modernas.
Neste artigo, guiaremos você por uma demonstração passo a passo para instalar e gerenciar um contêiner usando o LXD em um cenário prático. Além disso, forneceremos uma folha de dicas resumida em formato de tabela para ajudá-lo a consultar rapidamente os comandos essenciais do LXD, garantindo que você tenha as ferramentas necessárias para otimizar seus fluxos de trabalho de gerenciamento de contêineres.
Artigos anteriores:
01. Introdução ao Ubuntu Server – SysOSX: AI & Cloud
02. Como configurar seu primeiro Ubuntu Server: guia para iniciantes – SysOSX: AI & Cloud
03.Dominando a linha de comando do Linux para Ubuntu Server – SysOSX: AI & Cloud
04. Gerenciamento de usuários e permissões no Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
05. Fundamentos de rede para Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
06. Instalação e gerenciamento de software no Ubuntu Server: guia completo – SysOSX: AI & Cloud
07.Aplicação de patches e atualização do Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
08. Protegendo seu Ubuntu Server: etapas práticas de reforço e proteção – SysOSX: AI & Cloud
09. Auditoria e registro do Ubuntu Server
10. Ferramentas de monitoramento de sistema para Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
11. Registro centralizado para Ubuntu Server: um guia indispensável – SysOSX: AI & Cloud
12. Auditoria e conformidade para Ubuntu Server: práticas recomendadas – SysOSX: AI & Cloud
14. Hospedar vários sites em um único Ubuntu Server: dicas úteis – SysOSX: AI & Cloud
15. Gerenciamento de armazenamento e discos no Ubuntu Server: guia simples – SysOSX: AI & Cloud
18. Como configurar e usar o LVM no Ubuntu Server: guia abrangente – SysOSX: AI & Cloud
19. Introdução à virtualização com KVM: guia para iniciantes de Ubuntu Server – SysOSX: AI & Cloud
Índice
O que é o LXD?
O LXD é uma ferramenta de gerenciamento de contêineres de código aberto construída sobre Linux Containers (LXC). Ele oferece contêineres de sistema que se comportam como máquinas virtuais, mas são mais rápidos e leves. Com o LXD, você pode:
- Executar distribuições Linux completas dentro de contêineres.
- Usar recursos avançados de rede e armazenamento.
- Gerenciar contêineres remotamente por meio da API REST.
- Migrar contêineres entre hosts com tempo de inatividade mínimo.
Instalar o LXD usando o Snap
A maneira recomendada de instalar o LXD em sistemas Ubuntu modernos é por meio do Snap. Siga estas etapas:
1. Instalar o Snapd
Verifique se o Snap está instalado em seu sistema. Se o Snap não estiver instalado, execute:
sudo apt update
sudo apt install snapd
2. Instalar o LXD
Instale o LXD usando o Snap:
sudo snap install lxd

3. Verificar a instalação
Verifique a versão instalada do LXD:
lxd --version

Demonstração: usar o LXD para instalar um contêiner
Vamos analisar um cenário comum em que usamos o LXD para criar e gerenciar um contêiner executando o Ubuntu 22.04.
Etapa 1: Inicializar o LXD
Execute o comando a seguir para inicializar o LXD:
sudo lxd init

Você será solicitado a configurar armazenamento, rede e outras configurações. Para simplificar, você pode escolher as opções padrão.
Etapa 2: Iniciar um contêiner do Ubuntu
Crie e inicie um contêiner executando o Ubuntu 22.04 com o comando:
lxc launch ubuntu:22.04 web-server

Este comando cria um contêiner chamado web-server usando a imagem do Ubuntu 22.04.
Etapa 3: Acessar o contêiner
Obtenha acesso ao shell do contêiner:
lxc exec web-server -- bash

Agora você está dentro do contêiner e pode instalar pacotes ou configurar serviços. Por exemplo, instale o Apache:
apt update
apt install apache2 -y
Inicie o serviço do Apache:
systemctl start apache2
Etapa 4: Verificar a rede do contêiner
Saia do contêiner e verifique seu endereço IP:
lxc list

Acesse o servidor web do contêiner visitando seu endereço IP em um navegador ou usando curl http://ip para verificar a conectividade.

Etapa 5: Parar e excluir o contêiner
Quando não precisar mais do contêiner, pare-o:
lxc stop web-server
Exclua o contêiner:
lxc delete web-server
Folha de dicas da linha de comando do LXD
Abaixo está uma folha de dicas resumida dos comandos do LXD mais usados:
| Categoria | Comando | Descrição |
|---|---|---|
| Inicialização | lxd init | Inicializa o LXD antes do primeiro uso. |
| Criar instâncias | lxc init <image> <name> | Cria um contêiner sem iniciá-lo. |
lxc launch <image> <name> | Cria e inicia um contêiner. | |
lxc launch <image> <name> --vm | Cria e inicia uma máquina virtual. | |
| Gerenciar instâncias | lxc list | Lista todas as instâncias. |
lxc info <instance> | Exibe informações sobre uma instância. | |
lxc start <instance> | Inicia uma instância. | |
lxc stop <instance> [--force] | Para uma instância. | |
| `lxc delete <instance> [–force | –interactive]` | |
| Acessar instâncias | lxc exec <instance> -- <command> | Executa um comando dentro de uma instância. |
lxc exec <instance> -- bash | Obtém acesso ao shell de uma instância. | |
lxc console <instance> | Obtém acesso ao console de uma instância. | |
| Gerenciamento de arquivos | lxc file pull <instance>/<path> <local_path> | Obtém um arquivo de uma instância. |
lxc file push <local_path> <instance>/<path> | Envia um arquivo para uma instância. | |
| Projetos | lxc project create <project> | Cria um projeto. |
lxc project set <project> <option> | Configura um projeto. | |
lxc project switch <project> | Muda para um projeto. |
Documento oficial:
Primeiros passos com o LXD
Conclusão
O LXD simplifica o gerenciamento de contêineres, sendo uma excelente escolha para desenvolvedores, administradores de sistemas e engenheiros de DevOps. Com seu desempenho leve e recursos semelhantes aos de uma VM, o LXD é ideal para hospedar aplicações, ambientes de teste e muito mais.
Neste artigo, demonstramos como usar o LXD para instalar e gerenciar um contêiner em um cenário comum. Além disso, a folha de dicas fornece uma referência rápida dos comandos essenciais do LXD.
Próximo tópico:
No próximo artigo, falaremos sobre como usar o Podman no Ubuntu Server. Fique atento.