Kommt ein Manta gekrochen

Dieser Beitrag ist im September 2015 entstanden


Tja, nachdem die bisherigen Tests mit dem SDC/Triton von joyent sehr gut verlaufen sind, wollte ich mich mal an die Installation von joyents Object Store mit Namen "Manta" wagen. Dazu hatte ich mir extra ein paar Fujitsu-Server aus einer alten Installation zusammengesucht (da diese über Intel-Netzwerkkarten verfügen, booten diese zuverlässig SmartOS vom Netz). Leider ist die Manta-Installation aber nicht ganz so einfach und automatisiert, wie das beim SDC der Fall ist. Das konkrete Vorgehen ist im "Manta Operators Guide" beschrieben. Der erste Schritt ist noch simpel: Um die Manta-Deploymentzone zu aktivieren, führt man einfach in der global zone auf dem Headnode das entsprechende Skript vom usb-Stick aus:

 /usbkey/scripts/setup_manta_zone.sh

Danach gibt es dann eine Zone "manta0" auf dem Headnode.

Der nächste Schritt wird schon interessanter, da man sich eine Netzwerkkonfiguration für Manta generieren muß. Am besten, geht man dabei von der Beispieldatei im Operators Guide aus:

Wie man sieht, wird zunächst das DataCenter bezeichnet und alle Manta-Nodes, die dazugehören. Die beiden Netzwerke, die dort angegeben werden, sind virtuelle Netzwerke, die man so verwenden kann. Mit den "mac_mappings" wird festgelegt, an welchem Netzwerkinterface welches Nodes, die entsprechenden NIC-Tags konfiguriert werden. 

Danach kann man den nächsten Schritt im Operators Guide ausführen:

headnode$ ln -s /zones/$(vmadm lookup alias=manta0)/root/opt/smartdc/manta-deployment/networking /var/tmp/networking
headnode$ cd /var/tmp/networking
headnode$ ./manta-net.sh CONFIG_FILE

Damit werden die Netze konfiguriert und die NIC-Tags an den gewünschten Netzwerkkarten angebracht. Der nächste Schritt ist dann wieder einfach (und in der Manta Deploymentzone aufzurufen):

manta$ manta-init -s SIZE -e YOUR_EMAIL

Für mein Setup habe ich "-s lab" verwendet. Das Skript zieht erstmal alle Manta-Images - dabei ist das Marlin-Image das größte (Diskspace und Anbindung beachten!).

Wenn man jetzt den nächsten Schritt im Operators Guide durchführt, wird dieser wahrscheinlich scheitern. Das Skript, welches dort ausgeführt wird (manta-deploy-lab), erzeugt eine Datei lab-config.json die leider von der Netzwerkkonfiguration (und den darin enthaltenen Informationen) nichts weiß. Auf Basis der lab-config.json werden dann die Images auf den Nodes verteilt. Bei mir stand dort wieder nur der Headnode drin. Ob alle Services dabei waren, kann ich gar nicht mehr sagen. Eine Anfrage auf manta-discuss hat mir dann weitergeholfen. Jason Schmidt hat auf GitHub einen gist abgelegt, der das weitere Vorgehen dokumentiert. Dort ist eine "Sample 3-Node Lab Manta Config for TESTING or DEV" beschrieben. Ich habe mir daraus folgende Lab-Konfiguration gemacht:

Hier werden also die vielfältigen Dienste von Manta über meine drei Test-Nodes verteilt. Man kann einfach "manta-deploy-lab" durchlaufen lassen und dann, wenn die Rückfrage kommt, ob man weitermachen möchte, abbrechen, die entstandene Konfigurationsdatei durch die neu erstellte austauschen und dann die letzten beiden Kommandos im Skript (manta-adm update lab-config.json ; manta-marlin) per Hand ausführen.

Leider war dann an dieser Stelle für mich Schluß. Es wurden zwar noch brav alle Zones verteilt aber diese konnten nicht mehr gestartet werden, da keine IPs mehr im Admin-Netz frei waren. Denn viele der neuen Zonen möchten offensichtlich auch eine IP-Adresse im Admin-Netz bekommen. Deshalb muß ich mir jetzt erstmal ein größeres Netz besorgen, dieses konfigurieren lassen und dann wahrscheinlich das SDC neu aufsetzen. Ich habe mir dazu auch schon ein paar alte Fujitsu-Server ausgeguckt. Stay tuned...