Wiki d'Imatgedart
Wiki d'Imatgedart
Dr. Queue, potser ja ho sabeu, és un celebrat gestor de render en xarxa de codi obert, compatible amb diverses aplicacions de creació 3D, entre elles evidentment Blender.
El que passa és que és una mica complicat o críptic a l'hora d'instal·lar-se. Espero que aquestes anotacions et puguin servir quan et sentis perdut.
Dr. Queue funciona com molts altres gestors de render amb una estructura en què hi ha, principalment, un ordinador màster que té la informació principal, i un(s) ordinador(s) esclau(s) que segueixen les instruccions que el màster els envia. També hi participa un ordinador client que es comunica amb el màster a fi d'encarregar-li tasques a fer. Els papers d'aquests ordinadors poden estar fins a cert punt barrejats. És a dir, un ordinador esclau pot estar fent de client, tot i que segurament l'apliació està dissenyada de manera que no hi hagi aquests solapaments en condicions òptimes de funcionament.
Amb Dr. Queue podem atendre l'especificitat de les màquines esclaves. Pot ser que tinguem una granja de render moderna i que faci enveja i segurament tots els ordinadors seran iguals i tindran la mateixa configuració. Però si no és el nostre cas i tenim, per exemple, arquitectures de 32 i 64 bits barrejades, i dotacions de memòria diferents dins la granja amb Dr. Queue podrem atendre a aquestes diferències i fer que a cada màquina només se li encarreguin tasques que pugui assumir.
El primer que farem serà descarregar-nos les fonts per a compilar el programa, des d'aquesta adreça i agafarem per exemple la que porta per nom drqueue.0.64.2.tgz.
Entrem per exemple a /usr/src, on haurem copiat l'arxiu descarregat
# cd /usr/src
i el descomprimim i entrem a la carpeta
# tar xzvf drqueue.0.64.2.tgz # cd drqueue-0.64.2
per a instal·lar només cal que fem
# scons PREFIX=/var install
, darrera de PREFIX el que fem és posar la ruta on volem que s'instal·li DrQueue. En aquest cas s'instal·larà a /var/drqueue Pot ser que vegeu altres tutorials o docs on el programa s'instal·la a altres llocs. Mentre siguem coherents amb les rutes i tinguem en compte detalls com l'anterior, això no té més importància.
Aquest procés només l'hem de fer un cop, en principi a l'ordinador màster. La gràcia de DrQueue i d'altres sistemes de gestió de render és que s'utilitza l'aplicació del sistema màster, de manera que no cal replicar la instal·lació als altres nodes. No obstant, els altres nodes sí que necessitaran igualment d'altres configuracions.
A cada sistema on vulguem utilitzar DrQueue hem d'executar les següents comandes:
$ export DRQUEUE_MASTER=192.168.1.41
(aquí, probablement i òbvia, no hauràs de posar 192.168.1.41, sinó la IP de l'ordinador que en el nostre cas faci de màster) i
$ export DRQUEUE_ROOT=/var/drqueue
Ara bé, la segona comanda dóna per suposat que dins l'ordinador on l'estem executant i concretament la carpeta /var/drqueue existeixen el conjunt de programes que ho fan funcionar. Això serà així si, prèviament, hem muntat a aquesta carpeta /var/drqueue del node la carpeta /var/drqueue del sistema màster on efectivament sí que hi ha instal·lat el programa. Per tant, doncs, abans d'executar aquestes comandes haurem de satisfer això que segueix.
En el meu cas vaig assajar diverses solucions per a muntar aquesta carpeta remota. Principalment utilitzant NFS o Samba, són les principals alternatives. Finalment, la opció per la qual vaig optar és que a l'arrencada del sistema es munti la carpeta remota a la carpeta local que ens interessa a través d'una línia a /etc/fstab:
//192.168.1.41/drqueue /var/drqueue smbfs username=[nomUsuariSistemaMaster],password=[passwordDeSambaUsuariSistemaMaster],uid=[nomUsuariSistemaMaster],rw 0 0
Aclareixo de nou que el password que posem en aquesta línia no té a veure amb el password de login convencional de l'usuari. És un password exclusiu d'aquest usuari i el triem tot entrant la comanda
# smbpasswd -a nomUsuariSistemaMaster
Això implica, evidentment, que hagueu instal·lat abans Samba. Si fem
# apt-get install smbfs samba
amb la qual cosa instal·lem el programa que ens permet muntar directoris samba al sistema de fitxers, ja se'ns haurien d'instal·lar automàticament tots els altres paquets necessaris
Però perquè tot això funcioni, encara fa falta crear, des de l'ordinador que serveix o conté remotament drqueue i altres carpetes a compartir, els shares corresponents. La manera més fàcil és que instal·leu nautilus-share, que és un petit plugin que ens permet configurar els shares de Samba a través de la interfície gràfica del Nautilus.
A més a més, jo vaig afegir una altra línia per tal de muntar ja de pas una altra unitat de xarxa, amb molta capacitat d'emmagatzematge, on ja des de Blender configuraria que anessin a parar els renders:
//192.168.1.50/drqueue /media/drqueue smbfs username=[nomUsuariAccesUnitatDeXarxa,password=[passwordAccesUnitatDeXarxa],uid=[nomUsuariSistemaMaster],rw 0 0
Aquí, 192.168.1.50 és l'adreça IP de la unitat de xarxa en qüestió. Fixeu-vos que, de nou, utilitzo a uid el nom d'usuari del sistema màster. És la manera que vaig trobar de garantir que tots els nodes tenen els permisos que necessiten per poder treballar sobre el màster i gravar els fitxers que ens interessa.
Executem, doncs, aquelles dues comandes a cada un dels ordinadors que participin a la granja, sigui quin sigui el seu paper. Després, l'únic que ens queda és executar a tots els ordinadors el programa que els correspongui. Als esclaus:
$ /var/drqueue/bin/slave
al màster:
$ /var/drqueue/bin/master
i a un dels esclaus o al màster,
$ /var/drqueue/bin/drqman
que és el manager que ens permetrà gestionar, llançar o aturar les diverses tasques.
Ei, gràcies per ser a aquesta pàgina.
Potser has notat que ha canviat una mica.
Estic "en ello".