Record of some of the computer tech I deal with so that it's documented at least somewhere.

Friday 9 May 2008

Xcpu - 9p cluster glue

Xcpu is a remote command execution system using 9p & clone semantics. I want to build a video processing cluster with it. I'm under the impression it runs on Linux, FreeBSD and OSX which is what I have a bunch of including 2 G5s I can steal cycles from.

I got the svn checkout.
Then I needed openssl.
I got and installed openssl-0.9.8c through

; apt-get source openssl
; cd openssl-0.9.8c
; ./configure
; sudo make install


added -I /usr/local/ssl/include/ to libxauth/Makefile CFLAGS

then sxcpu crapped out on libelf so I got that from source too
(first time I installed libelf it failed, so I ran make install again and it was fine, I hope that's a good sign).

Now I've got /usr/bin/ld: cannot find -lcrypto

added -L/usr/local/ssl/lib/ to xcpufs/Makefile LFLAGS

now I get
/usr/local/ssl/lib//libcrypto.a(dso_dlfcn.o): In function `dlfcn_bind_func':
dso_dlfcn.c:(.text+0x27d): undefined reference to `dlsym'

so I added -ldl to xcpufs/Makefile LFLAGS

and then added -I /usr/local/ssl/include/ to statfs/Makefile CFLAGS
and -L/usr/local/ssl/lib/ -ldl to statfs/Makefile LFLAGS
and -L/usr/local/ssl/lib/ -ldl to utils/Makefile LFLAGS
and -I/usr/local/include/libelf to libxcpu/Makefile CFLAGS

and it all compiled

make install worked
make installman worked
make installscripts worked

now xcpufs runs on debian 686


# mkdir /etc/xcpu
# ssh-keygen -t rsa -f /etc/xcpu/admin_key
# ssh-keygen -t rsa


Starting the server (for some reason the default port is 6667 which clashes with irc servers so I'm going to use 9001

# xcpufs -p 9001 -a /etc/xcpu/admin_key.pub &
# xgroupset lenny!9001 maht 1000
# xuserset lenny!9001 maht 1000 maht /home/maht/.ssh/xcpu_rsa.pub

(notice also the use of .ssh/xcpu_rsa.pub - the same key gets used in a few places so I made one just for xcpu)

the first time I tried
; xrx -k /home/maht/.ssh/xcpu_rsa -l lenny!9001 /bin/date


from storm I got "Cannot find system root for /Linux/i686"
because storm is x86-64 and lenny is i686, xrx is looking locally for these files, so I did

# mkdir -p /home/xcpu/Linux/i686 on storm
; XCPU_SYSROOT=/home/xcpu
; xrx -k /home/maht/.ssh/xcpu_rsa -l lenny!9001 /bin/date
Sat May 10 18:25:15 BST 2008

I tried getting an rsa key into factotum for which I had to use ipso as > /mnt/factotum/ctl wasn't having it
srv lenny!9001 xcpu && mount -k 'proto=rsa service=ssh' /srv/xcpu /n/cpu
fails with 'authentication failed' which isn't surprising as that rsa key isn't in lenny's xuserset
the rsa.pub file that comes out of rsa2ssh looks different to id_rsa.pub and I've not tried adding it

No comments: