Introdução com contêineres LXD no Ubuntu 16.04

Introdução com contêineres LXD no Ubuntu 16.04

Por que lxd?

Não é segredo que os contêineres estão quentes agora no mundo Linux. Eles estão rapidamente se tornando a espinha dorsal da nuvem e estão realizando os sonhos do DevOps realidade. Mesmo assim, à primeira vista, parece um pouco redundante para canônico desenvolver um novo sistema de contêineres para o Ubuntu em um mundo facilmente dominado por Docker. Então, por que, então, eles fizeram isso? Para preencher um meio termo entre máquinas virtuais tradicionais e docker. Canonical disse eles mesmos: “Ao combinar a velocidade e a densidade dos recipientes com a segurança das máquinas virtuais tradicionais, o LXD da Canonical é a próxima geração do hipervisor de contêineres para Linux.”Não apenas isso, mas os contêineres do Docker podem ser executados em contêineres LXD, adicionando outra dimensão a possíveis configurações de contêineres.

O LXD é um aprimoramento do hipervisor de contêineres LXC Linux existente com seu próprio conjunto de ferramentas, compartilhando um relacionamento semelhante ao projeto original do que o Ubuntu faz com o Debian com o objetivo de tomar o grande software existente e simplificá -lo para facilitar o uso. No último lançamento do Canonical Ubuntu LTS, 16.04, o LXD é bem integrado e fácil de usar com ferramentas de CLI claras e concisas que tornam a criação e o gerenciamento de contêineres sem costura.

Configuração inicial

Introdução ao LXD no Ubuntu 16.04 está o mais próximo de ficar sem esforço. Canônico condensou a instalação em um único pacote, fazendo deste um comando instalar. Um simples sudo apt-get install lxd terá tudo o necessário para começar.


Para adicionar o usuário ao grupo 'LXD' para poder executar os comandos necessários sem reiniciar, execute newGrp lxd. Depois disso, tudo ficará claro para prosseguir com a configuração do Hypervisor LXD. Correndo sudo lxd init inicia o processo de configuração.


O processo de configuração inicial consiste em uma série de avisos de linha de comando solicitando informações básicas necessárias para configurar o hipervisor LXD. O processo é muito direto e solicita informações como tipo de armazenamento, endereço IP, número da porta, senha e se a conexão está ou não em ponte.

Após essa série de avisos, a configuração muda para uma interface baseada em texto com uma série de perguntas sobre a configuração de rede do Hypervisor LXD. O processo cria redes IPv4 e IPv6 em ponte completas com sub -redes e DHCP personalizadas. Dessa forma, o LXD atua como um roteador virtual para todos os contêineres implantados nele e fornece um único ponto de configuração para essas redes virtuais.

Claramente, este é um daqueles momentos em que o LXD brilha como uma solução "melhor dos dois mundos". Obviamente, também é bom que o Canonical fornece um menu de configuração de estilo Debian para percorrer o processo e torná -lo quase inundamente fácil. Uma vez que a configuração termine, ele despeja de volta à linha de comando e fornece uma mensagem curta dizendo que foi bem -sucedido.


Imagens e contêineres LXD

Configurando um contêiner

Como o Docker, LXD é baseado em imagem. Ele fornece três opções principais para obter imagens; Importações remotas, embutidas e locais. Existem várias fontes remotas que vêm com o LXD fora da caixa, bem como as fontes locais. Para ver quais fontes estão disponíveis, basta executar Lista remota LXC, E você receberá uma tabela de linha de comando conveniente exibindo informações sobre fontes atualmente disponíveis.


Para os propósitos deste artigo, as fontes locais pareciam ser a melhor e mais fácil opção. Existem imagens limpas do Ubuntu que fazem um ótimo ponto de partida para qualquer implantação. Este é outro daqueles momentos "melhores dos dois mundos". Em vez de ter um recipiente despojado adaptado para executar um único aplicativo, os contêineres LXD estão mais próximos de uma máquina virtual completa.

Eles vêm completo com acesso à linha de comando e até a capacidade de instalar pacotes. Ao mesmo tempo, o LXD oferece excelentes ferramentas de linha de comando para gerenciar contêineres e até empurrar e puxar arquivos de e para eles. Para girar um Ubuntu 16.04 Contêiner, basta correr LIAN LXC Ubuntu: 16.04 NOME-OF-CONTINER. LXD buscará a imagem, criará um contêiner e iniciará o contêiner.


Trabalhando com contêineres LXD

É fácil verificar o status do contêiner com Lista LXC. Iniciar e parar os recipientes é tão fácil com LXC Stop Name-of-Container e LXC START NOME-OF-CONTINER.

Um dos benefícios claros do LXD em relação aos contêineres tradicionais como o Docker é a capacidade de editar contêineres em execução e atualizá -los em vez de embalar um contêiner, implantá -lo e deixá -lo sozinho. Se é uma questão de passar arquivos entre o sistema host e os contêineres, o LXD possui comandos push e puxar que permitem que os arquivos sejam passados. Se algo mais envolvido for necessário, o LXD fornece uma ótima ferramenta de linha de comando para acessar os contêineres em execução e obter um shell completo. Para obter acesso ao concha de uma execução de um contêiner, Nome da container do LXC Exec- /Bin /Bash.


No shell do contêiner, há um sistema de arquivos Linux completo, e a linha de comando tem acesso a qualquer ferramenta que tenha sido incluída com a imagem ou instalada nos contêineres posteriormente. Isso permite que os contêineres LXD executem atualizações e vários aplicativos, incluindo o Docker. Dessa forma, um engenheiro de DevOps pode implantar um contêiner LXD executando um banco de dados e servidor da web, bem como o docker com vários aplicativos da web em execução em contêineres do docker.
Obviamente, essa é apenas uma das muitas possibilidades, mas o aspecto principal aqui é que o LXD adiciona outra camada à equação e fornece mais flexibilidade ao configurar uma pilha de software.

Conclusão

Está claro, mesmo desde este teste mais básico com o LXD que Canonical atingiu seu objetivo ao criar um meio do meio do meio entre a virtualização completa do Linux e os contêineres do Docker. LXD é uma ferramenta que os engenheiros do DevOps devem considerar seriamente adicionar à sua caixa de ferramentas.

Tutoriais do Linux relacionados:

  • Ubuntu 20.04 Download
  • Coisas para instalar no Ubuntu 20.04
  • Como fazer backup das teclas GPG no papel
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Como configurar um servidor OpenVPN no Ubuntu 20.04
  • Ubuntu 20.10 Download
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Ubuntu 21.04 Download
  • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
  • Coisas para instalar no Ubuntu 22.04