Home » Artigos » Virtualizando Desktops com OSDVT
formats

Virtualizando Desktops com OSDVT

Published on julho 25th, 2011 by in Artigos

O OSDVT é um projeto que tem o objetivo de oferecer uma estrutura de virtualização de desktops, usando o KVM como Hypervisor, o SPICE como protocolo de acesso remoto e uma interface Python/GTK para que o cliente gerencie suas VMs. Todo o código é licenciado sob GPL.

Arquitetura:

Nesse artigo iremos percorrer todo o processo de instalação da última versão, a 0.2.2, em um servidoor Fedora 15.

Preparação

Para esse artigo, usaremos o Fedora 15. O OSDVT 0.2.2 necessita do Spice versão 0.8 para funcionar. No moento que escrevo, as únicas distribuições que possuem essa versão do Spice em seus repositórios são:

  • Fedora 15
  • Red Hat Enterprise Linux 6
  • Fedora 14 usando repositório virt-preview.

 

O CentOS 6 ainda está com Spice v0.4 em seus repositórios, mas o update para 0.8 deve sair em breve.

O spice-server só funciona em servidores x86_64.

SERVIDOR

Vamos parar temporariamente o iptables:

service iptables stop

Pacotes

Instale os pacotes necessários:

yum install qemu-kvm qemu-img spice-server \
       mysql-server MySQL-python python-ldap \
       bridge-utils tunctl Django httpd \
       mod_ssl mod_python

Banco de dados

Inicialize o MySQL:

service mysqld start

Defina senha de root do MySQL:

mysqladmin -u root password 'osdvt'

Configure o serviço para inicializar no boot:

chkconfig mysqld on

Crie o banco de dados:

mysql --user=root --password=osdvt -e "create database db_osdvt"

OSDVT Server

Baixe e extraia o pacote do OSDVT Server:

cd /usr/local/
wget http://www.ucs.br/projetos/osdvt/download/osdvt-server-0.2.2.tgz
tar xvfz osdvt-server-0.2.2.tgz

Server Web Admin

Entre no diretório do Web Admin

cd /usr/local/osdvt/osdvtweb

Ajuste o arquivo “settings.py” com as informações do seu banco de dados, caso você tenha host/db/user/pass diferentes do default.

Depois disso, crie a estrutura do banco de dados. Durante esse passo, você poderá definir a senha de root do Django Admin, caso seja a primeira vez que você executa esse comando:

python manage.py syncdb

Teste se o Django Admin está funcionando usando o webserver do Django. Isso é apenas um teste, pois iremos usar o Apache para rodar o Django Admin.

python manage.py runserver 0.0.0.0:8000

Acesse a URL do Django Admin pelo seu browser (http://server:8000/admin/). Após efetuar o login, você deverá ver uma página como esta:

Use “Ctrl+c” para encerrar o webserver do Django.

Server Daemon

Entre no diretório raiz do daemon:

cd /usr/local/osdvt/server/

Edite o arquivo “etc/osdvt.conf”. Toda a comunicação entre o cliente e o servidor OSDVT é criptografada com SSL. Um certificado autoassinado é fornecido, mas você pode usar o seu.

Adicionalmente, você pode desabilitar a autenticação LDAP para efetuar testes.

Copie o script de inicialização para o diretório “init.d”:

cp /usr/local/osdvt/server/osdvtd /etc/init.d/

Adicione o osdvtd ao chkconfig:

chkconfig --add osdvtd

Agora, copie o arquivo de configuração do apache para o diretório adequado:

cp /usr/local/osdvt/server/osdvt.conf /etc/httpd/conf.d/

Caso você esteja usando o Red Hat 6 ou CentOS 6, você precisa alterar o caminho do Django Media, pois a versão do Python nessas distribuição é a 2.6:

Alias /media/ /usr/lib/python2.7/site-packages/django/contrib/admin/media/

Para:

Alias /media/ /usr/lib/python2.6/site-packages/django/contrib/admin/media/

Configure o httpd para inicializar no boot:

chkconfig httpd on

Inicialize o httpd:

service httpd start

Agora, abra o “Django Admin” via browser: https://server/osdvtweb/admin/ (para usar o https você precisa ter isntalado o pacote “mod_ssl” ).

Crie uma bridge, que será usada para conectar as VMs na sua rede local. Edite o arquivo “/etc/sysconfig/network-scripts/ifcfg-eth0″, deixando somente as linhas abaixo:

DEVICE=eth0
ONBOOT=yes
BRIDGE=br0

Agora, crie o arquivo “/etc/sysconfig/network-scripts/ifcfg-br0″, com suas configurações de rede:

DEVICE=br0
ONBOOT=yes
BOOTPROTO=dhcp
TYPE=Bridge
NAME="bridge"

Reinicie o serviço “network”:

service network restart

Firewall

Inicie o iptables:

service iptables start

Libere o acesso http e https:

iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 443 -j ACCEPT

Libere o acesso ao Daemon do OSDVT:

iptables -I INPUT -p tcp --dport 6970 -j ACCEPT

Libere as portas que serão usadas pelo SPICE:

iptables -I INPUT -p tcp --dport 5930:5999 -j ACCEPT

Salve as regras criadas:

service iptables save

Osdvt service

Finalmente, podemos iniciar o serviço osdvt:

service osdvtd start

CLIENTE

Os passos a seguir deverão ser efetuados na estação que acessará as máquinas virtuais. Aqui os testes foram feitos em uma estação com Fedora 15.

Packages

yum install spice-client python-dialog

OSDVT Client

Baixe e extraia o pacote com o cliente do OSDVT:

cd ~
wget http://www.ucs.br/projetos/osdvt/download/osdvt-clients-0.2.2.tgz
tar xvfz osdvt-clients-0.2.2.tgz

Execute o cliente:

python ~/osdvt/osdvt-client.py

ou, ajuste o arquivo “osdvt-labs-client.py”…

interface = "eth0"
server = "192.168.0.1"
port = 6970

… e execute o “Labs Client”, que será autenticado pelo IP local em vez de usuário/senha:

python ~/osdvt/osdvt-labs-client.py

No próximo artigo mostrarei como criar e usar sua primeira máquina virtual.

Referência: http://www.ucs.br/projetos/osdvt/index.php/Documentation

 

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

© pahim.org
credit