Cluster

Hardware

Im Space sind 12 Clusternodes. Jeder Node hat:

Die 12 Boards an der Wand. (Kurz nach Montage, mit provisorischer und
unvollständiger SCI
Verkabelung.)

Die 12 Boards mit mehr Kabel. (Strom und Ethernet Kabel nun
vollständig.)

Netzwerk

Die nodes sind nicht im "normalen" Clubnetz, sondern in 192.168.2/24. Filedrop ist in beiden und routes. allerdings liefert der CCCZH Router nicht die route ins Cluster-Netz aus. Dnsmasq gibt anhand der MAC-Adressen feste IPs, und zwar 192.168.2.(80+Node#)

OS/Boot/root

filedrop (hat atm den Lease 192.168.1.183) macht mittels dnsmasq TFTP und DHCP Server und serves rootfs via NFS. Je nach konkretem OS muss evtl der Kernel neu kompiliert werden, um das zu ermöglichen.

Konfiguration dnsmasq

Die Konfiguration des dnsmasq server is in der Datei "/etc/dnsmasq.d/clusterboot.conf" und hat folgenden Inhalt:

dhcp-boot=pxelinux.0\ enable-tftp\ tftp-root=/cluster/\ dhcp-range=192.168.2.80,192.168.2.120\ dhcp-host=00:1b:fc:99:63:ad,192.168.2.81,node1\ dhcp-host=00:1b:fc:ee:f4:10,192.168.2.82,node2\ dhcp-host=00:1b:fc:ee:f4:be,192.168.2.83,node3\ dhcp-host=00:1b:fc:ee:f4:30,192.168.2.84,node4\ dhcp-host=00:1b:fc:ee:f4:49,192.168.2.85,node5\ dhcp-host=00:1b:fc:ee:f4:28,192.168.2.86,node6\ dhcp-host=00:1b:fc:ee:f4:2d,192.168.2.87,node7\ dhcp-host=00:1b:fc:ee:f4:7b,192.168.2.88,node8\ dhcp-host=00:1b:fc:ee:f4:1c,192.168.2.89,node9\ dhcp-host=00:1b:fc:ee:f4:ce,192.168.2.90,node10\ dhcp-host=00:1b:fc:ee:f4:a2,192.168.2.91,node11\ dhcp-host=00:1b:fc:ee:f4:35,192.168.2.92,node12

Konfiguration PXE Boot

ls -la /cluster/pxelinux.cfg/

01-00-1b-fc-99-63-ad\ 01-00-1b-fc-ee-f4-10\ 01-00-1b-fc-ee-f4-1c\ 01-00-1b-fc-ee-f4-28\ 01-00-1b-fc-ee-f4-2d\ 01-00-1b-fc-ee-f4-30\ 01-00-1b-fc-ee-f4-35\ 01-00-1b-fc-ee-f4-49\ 01-00-1b-fc-ee-f4-7b\ 01-00-1b-fc-ee-f4-a2\ 01-00-1b-fc-ee-f4-be\ 01-00-1b-fc-ee-f4-ce

cat /cluster/pxelinux.cfg/default

 DEFAULT cluster-debian

 LABEL cluster-debian
 KERNEL vmlinuz-3.2.0-4-amd64
 INITRD initrd.img-3.2.0-4-amd64
 APPEND root=/dev/nfs nfsroot=192.168.2.1:/cluster/nodeimage,rsize=1048576,wsize=1048576
 IPAPPEND 1

Node hinzufügen

das ist nicht spezifisch zur Clusterhardware, im Prinzip kann man jeden Rechner im Netz diesen als NFS-root-Quelle nutzen.

Files: filedrop:/cluster/cluster-tftp; filedrop:/etc/dnsmasq.d/clusterboot.conf

Man startet die hinzuzufügende Node. Sie muss PXE-boot machen. Sie wird von dnsmasq irgendeine IP kriegen, den Bootloader syslinux.0 und die default-configuration (eine Datei in /cluster/cluster-tftp). dnsmasq schreibt ins syslog, dass es keine syslinux-Konfiguration für diese Node findet. default nach 01-\${MAC-Adresse} kopieren und darin nodename für das eigentlich rootfs anpassen. rootfs kopieren in den soeben eingegebenen Port. in clusterboot.conf die neue Node als neuen dhcp-host definieren. Startet man die node neu, sollte sie ihr eigenes rootfs über NFS nutzen.

Link Topologie

Geplant (am 12.12.2012) ist ein bidirektionaler 4x3 Torus als Topologie für den Cluster-Interconnect. Die Nodes sind in Leserichtung von Node1 bis Node12 durchnummeriert.

Eine mögliche Verlinkung der 12 Nodes. (Rechts unten Schema eines 3x4
Torus und oben tatsächlicher
Kabelverlauf.)

Stecker der SCI Card. Links zwei mal Output (O, blau) und rechts zwei
mal Input (I,
gelb).

Die selbe Verlinkung unter Einbezug der asymmetrischen Form der
Stecker. Ziel: möglichst keine der flachen Bandkabel zu
verdrehen.

Für einen bi-direktionalen Torus brauchen wir in jede Richtung (grosser und kleiner Radius) je zwei input und 2 output Links. Deshalb benötigen wir zwei SCI Karten pro Node.

Zwei SCI Karten pro
Node.

Viele kurze SCI Kabel für noch mehr Kabelsalat :-)

Vollständige SCI Verkabelung (in der Mitte Node 5 auf Node 11), sehr
eng und chaotisch aber
machbar.

Weitere Ideen