37.2. Instalação do domínio

A instalação e a configuração de um domínio convidado envolve vários procedimentos. No exemplo a seguir, um primeiro domínio convidado é instalado e todas as tarefas diferentes para criar uma primeira conexão de rede são concluídas.

Para instalar um sistema convidado, você deve fornecer um sistema de arquivos root em um dispositivo de bloco ou em uma imagem de sistema de arquivos, que precisa ser configurado. Para acessar o sistema mais tarde, use um console emulado ou configure a conexão de rede para este convidado. A instalação do SUSE Linux em um diretório é suportada pelo YaST. Os requisitos de hardware de tal convidado são similares a uma instalação normal do Linux.

Domínios podem compartilhar sistemas de arquivos que são montados somente leitura de todos os domínios, como /usr ou /opt. Nunca compartilhe um sistema de arquivos que é montado como leitura e gravação. Para compartilhar dados graváveis em vários domínios convidados, use o NFS ou outros sistemas de arquivos de rede ou do cluster.

[Warning]Iniciando um domínio convidado

Ao iniciar um domínio convidado, verifique se os sistemas de arquivos do convidado não estejam mais montados por um instalador ou pelo domain-0 controlador.

A primeira ação é criar uma imagem do sistema de arquivos no qual o Linux para o convidado está instalado:

  1. Para criar uma imagem vazia chamada guest1 no diretório /var/tmp/ de 4 GB de tamanho, use o comando a seguir:

    dd if=/dev/zero of=/var/tmp/guest1 seek=1M bs=4096 count=1
  2. A imagem é um arquivo grande vazio sem informações. Para poder gravar arquivos nele, um sistema de arquivos é necessário:

    mkreiserfs -f /var/tmp/guest1

    O comando mkreiserfs informa que este não é um dispositivo especial de bloco e pede uma confirmação. Digite Y e Enter para continuar.

  3. A instalação real é feita em um diretório. Desta forma, a imagem do sistema de arquivos /var/tmp/guest1 deve ser montada em um diretório:

    mkdir -p /var/tmp/dirinstall
    mount -o loop /var/tmp/guest1 /var/tmp/dirinstall
    
[Important]Importante

Quando tiver terminado a instalação, desmonte essa imagem de sistema de arquivos novamente. O YaST também monta o sistema de arquivos /proc durante a instalação, que deve ser desmontado também:

umount /var/tmp/dirinstall/proc
umount /var/tmp/dirinstall

37.2.1. Usando o YaST para instalar um domínio convidado

Para instalar um domínio convidado com o YaST, você precisa da imagem do sistema de arquivos previamente preparado para o novo convidado. Inicie o YaST e selecione Software+Instalação no Diretório para XEN.

O módulo YaST para a instalação do diretório tem várias opções que devem ser definidas de acordo com suas necessidades:

  • Diretório de destino: /var/tmp/dirinstall

    Defina esta opção para o ponto de montagem da imagem do sistema de arquivos a ser usado. O padrão é geralmente aceitável.

  • Executar YaST e SuSEconfig após primeiro boot: Sim

    Defina essa opção para Sim. Você será solicitado a digitar uma senha de root e um primeiro usuário ao iniciar o convidado pela primeira vez.

  • Criar imagem: Não

    A imagem criada é somente um arquivo tar do diretório de instalação. Isso não é útil aqui.

  • Software

    Selecione o tipo de instalação a ser usada. Qualquer um dos padrões é um bom começo.

Clique em Avançar para iniciar a instalação. Dependendo do número de pacotes, a instalação pode ser um pouco demorada. Após a conclusão da instalação, as bibliotecas tls devem ser movidas:

mv /var/tmp/dirinstall/lib/tls /var/tmp/dirinstall/lib/tls.disabled
 

O Xen usa um dos kernels instalados no domain-0 para iniciar o domínio convidado. Para poder usar a rede no convidado, os módulos deste kernel devem estar disponíveis para o convidado também.

cp -a /lib/modules/$(rpm -qf --qf %{VERSION}-%{RELEASE}-xen \
    /boot/vmlinuz-xen) /var/tmp/dirinstall/lib/modules
 

Para evitar erros no sistema de arquivos, a imagem de sistema de arquivos deve ser desmontada após a instalação:

umount /var/tmp/dirinstall/proc
umount /var/tmp/dirinstall/
 

Seria possível criar kernels especializados para o domain-0 em uma extremidade e para os sistemas convidados na outra extremidade. A diferença principal são os drivers do hardware que são desnecessários em sistemas convidados. Como esses drivers são modulares e não usados em sistemas convidados, o SUSE entrega somente um kernel para ambas as tarefas.

37.2.2. Configurando um sistema de resgate para funcionar como um domínio convidado

A maneira mais fácil de executar um sistema rapidamente é reutilizar um sistema de arquivos raiz existente, como o sistema de resgate do SUSE Linux. Basicamente, troque a imagem de kernel e os drivers do dispositivo do bloco virtual e dispositivos de rede nesta imagem. Para facilitar esta tarefa, o script mk-xen-rescue-img.sh está disponível em /usr/share/doc/packages/xen/.

A desvantagem de usar o método de resgate para criar um sistema de arquivos raiz é que o resultado não tem um banco de dados RPM, então você não pode adicionar pacotes facilmente usando RPM. No lado positivo, o resultado é relativamente pequeno, mas tem praticamente tudo o que é necessário para iniciar a rede.

Para executar o script mk-xen-rescue-img.sh, você precisa de pelo menos o diretório com a imagem de resgate e um local de destino para a imagem resultante. Por padrão, o diretório reside no DVD de boot no diretório /boot.

cd /usr/share/doc/packages/xen
./mk-xen-rescue-img.sh /media/dvd/boot /usr/local/xen 64

O primeiro parâmetro do script é o diretório da imagem de resgate. O segundo parâmetro é o destino do arquivo de imagem. Parâmetros opcionais são os requisitos de espaço em disco do domínio convidado recém-gerado e a versão de kernel a ser usada.

Em seguida, o script copia a imagem para o novo local, substitui o kernel e vários módulos de kernel e desabilita o diretório tls no sistema. Como última etapa, ele gera um arquivo de configuração para a nova imagem em /etc/xen/.