domenica , Ottobre 17 2021
Ultime Notizie
Home / Linux / OSDVT: thin client a portata di Open Source

OSDVT: thin client a portata di Open Source

Requisiti:

– CentOS release 6.3 (Final)

– epel-release-6-8.noarch.rpm

PARTE 1: INSTALLAZIONE SERVER
_____________________________

Procedura:

Dopo aver installato CentOS, molto semplice con la versione 6.3 ad interfaccia grafica, si procede con la configurazione della rete.
Prima di tutto servono alcuni pacchetti fondamentali.
Quidi lanciare:

[[email protected]]# yum update

E poi:

[[email protected]]# yum install wget
[[email protected]]# wget http://mirrors.nl.eu.kernel.org/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
[[email protected]]# rpm -i epel-release-6-8.noarch.rpm
[[email protected]]# yum update

Poi installiamo i pacchetti fondamentali:

[[email protected]]# yum install qemu-kvm qemu-img spice-server mysql-server MySQL-python python-ldap bridge-utils tunctl Django httpd mod_ssl mod_python

La prima cosa da fare è creare un bridge che contenga la nostra ethernet principale(per questo servono le bridge-utils)
Per cui va editato il file /etc/sysconfig/network-scripts/ifcfg-eth0 (dove ethX è l’interfaccia di rete da utilizzare) nel seguente modo:

############
DEVICE=eth0
ONBOOT=yes
BRIDGE=br0
############

Fatto questo si crea il file del bridge:

[[email protected]]# vim /etc/sysconfig/network-scripts/ifcfg-br0

Al suo interno:

###############
DEVICE=br0
ONBOOT=yes
BOOTPROTO=dhcp
TYPE=Bridge
NAME=”bridge”
###############

Riavviamo i servizi di rete:

[[email protected]]# service network restart

Se si possiede un firewall bisogna tenere conto del fatto che il Client di OSDVT utilizza la porta 6970 inoltre Spice/VNC per la visualizzazione hanno bisogno di avere aperte le porte che vanno da 5900 a 5999.
Andiamo per ora a disabilitare il firewall lato server buttando giù iptables.

[[email protected]]# service iptables stop
[[email protected]]# chkconfig iptables off

Facciamo partire invece il servizio MySQL

[[email protected]]# service mysqld start

Passiamo a definire l’utente di root di MySQL e abilitiamo il servizio all’avvio del pc:

[[email protected]]# mysqladmin -u root password ‘osdvt’
[[email protected]]# chkconfig mysqld on

Creiamo il database per OSDVT

[[email protected]]# mysql –user=root –password=osdvt -e “create database db_osdvt”

Adesso abbiamo tutto il necessario per installare il server.

[[email protected]]# cd /usr/local/
[[email protected]]# wget https://github.com/downloads/dodopahim/osdvt/osdvt-server-0.4.tar.gz
[[email protected]]# tar xvfz osdvt-server-0.4.tar.gz

Copiamo i settaggi di Django e sincronizziamo i DB:

[[email protected]]# cp /usr/local/osdvt/server/packaging/rhel63/django-settings.py /usr/local/osdvt/osdvtweb/settings.py
[[email protected]]# cd /usr/local/osdvt/osdvtweb/
[[email protected]]# python manage.py syncdb

Copiamo il file di esecuzione del server OSDVT e avviamolo all’avvio:

[[email protected]]# cp /usr/local/osdvt/server/packaging/rhel63/sysv-osdvtd /etc/init.d/
[[email protected]]# chkconfig osdvtd on

Facciamo partire il server e verifichiamo che gli sia stato assegnato un PID:

[[email protected]]# service osdvtd start
Running… PID: 12345

Configuriamo il virtualhost di httpd con i settaggi di default di OSDVT(poi possono essere modificati facilmente):

[[email protected]]# cp /usr/local/osdvt/server/packaging/rhel63/httpd-osdvt.conf /etc/httpd/conf.d/

Riavviamo il servizio e settiamolo per partire all’avvio:

[[email protected]]# service httpd restart
[[email protected]]# chkconfig httpd on

Proviamo l’accesso al server tramite browser all’indirizzo: https://myserver/osdvtweb/admin

Creiamo adesso l’ambiente per l’installazione di una macchina virtuale:

[[email protected]]# mkdir /var/vms
[[email protected]]# mkdir /var/iso

Creiamo il disco virtuale:

[[email protected]]# qemu-img create -f qcow2 vm01.img 20G

Creiamo una ISO di xp da un cd(nel mio caso il cd è sr0):

[[email protected]]# dd if=/dev/sr0 of=/var/iso/winxp.iso

Il resto della configurazione può essere fatto in maniera agile da Interfaccia Web.

PARTE 2: INSTALLAZIONE CLIENT
_____________________________

Diamo tutti i privilegi a spice editando il file /etc/sudoers:

#########################################################
myuser  ALL=NOPASSWD:  /usr/bin/spicy,/sbin/shutdown
#########################################################

Si consiglia di utilizzare la stessa distribuzione utilizzata per il server pure per le macchine che faranno da client, siano esse semplici pc o thin client. E’ consigliabile inoltre installare una distribuzione di tipo Red Hat / CentOS per il server, mentre il client con un po’ di passaggi e tanta buona volontà si può fare girare anche su debian(vedi la mia Ubuntu 12.10)

Procediamo con l’installazione dei pacchetti fondamentali per il client:

[[email protected]_client]# yum install wget
[[email protected]_client]# wget http://mirrors.nl.eu.kernel.org/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
[[email protected]_client]# rpm -i epel-release-6-8.noarch.rpm
[[email protected]_client]# yum update
[[email protected]_client]# yum install spice-gtk-tools python-dialog vinagre

Andiamo ad installare il client vero e proprio:

[[email protected]_client]# wget https://github.com/downloads/dodopahim/osdvt-client/osdvt-clients-0.4.tar.gz
[[email protected]_client]# tar xvfz osdvt-clients-0.4.tar.gz

Avviamo il client:
[[email protected]_client]# python osdvt/osdvt-client.py

Inseriamo un utente creato in fase di creazione della vm e una password qualunque(di base LDAP è disabilitato ma è possibile implementare anche le funzioni di certificazione e autenticazione) e sopratutto l’indirizzo del server e premiamo su Connect.
Fatto questo possiamo collegarci alle vm create!

Attenzione, sui client Debian la procedura è più complessa, bisogna modificare il file osdvt-client.py correggendo i percorsi sia della CACERT che di GLADE

Un ringraziamento a fine del tutorial va ai miei colleghi a TLCWEB, al mio amico Frank e all’ideatore del progetto Amador Pahim

Info Paolo Daniele

Ingegnere delle Telecomunicazioni, appassionato di informatica fin da piccolo ho trasformato la passione in lavoro. Con il PHP faccio tutto (o quasi...) ma non disprezzo altri linguaggi all'occorrenza. Se vi piace il mio sito, o vi è utile, o vi sto simpatico, offritemi una birra!

Ti potrebbe interessare

Deploy WordPress e MySQL in un Cluster Kubernetes con Persistent Volumes

Oggi voglio parlare di come deployare su un cluster Kubernetes un WordPress+MySQL utilizzando volumi persistenti …