Install Docker auf CoreOS mit XenServer 7.0

++

Docker ist bereits seit einigen Jahren besonders im Hosting- und Providerumfeld eine beliebte und zum Teil auch gesetzte Möglichkeit, Applikationen in Containern abzubilden um diese bedarfsgerecht auszurollen.

In meinem Tutorial möchte ich die Bereitstellung von Docker mittels CoreOS unter XenServer 7.0 beschreiben.

Installation Container Management Supplemental Pack für XenServer 7.0

Es wird ein Citrix Account benötigt: Klick

Anschließend die ISO auf den XenServer kopieren und per SSH und root auf dem XenServer einloggen. Ich nutzte dazu Mobbaxterm.

Alternativ kann auch Putty und WinSCP verwendet werden.

Für die Installation des Supplemental Packs gibt es 2 Varianten. Ich bevorzuge es die ISO zu mounten und die Installation auszuführen.

Alternativ per xe Befehlt

Die wenn die Installation abgeschlossen ist, empfehle ich einen Reboot bzw. einen Toolstack Restart über das XenCenter.

Anschließend wird CoreOS bereitgestellt. CoreOS ist eine Art Träger-Plattform für Docker Container. Man kann auch Ubuntu oder CentOS nutzen. Auch Windows Server 2012r2 ist in der Lage Container anzubieten.

Installation CoreOS für Docker Intigration XenServer 7.0

CoreOS ist sehr schlank und schnell installiert.

ISO Beschaffen: Klick

 

Neue XenServer VM anlegen.

Bis hier hin recht einfach. Jetzt müssen wir CoreOS mitteilen wer sich per SSH einloggen darf. Das wird nicht wie gewöhnlich per Username / Passwort gelöst, sondern über einen SSH-Key. Dieser wird CoreOS mitgeteilt und auch im Putty / MobbaXterm hinterlegt.

Die gelbe Markierung zeigt die Stelle, an der der SSH Key stehen muss.

Erzeugen SSH Key und Einbindung CoreOS und MobaXterm

(die Anleitung kann auch für Putty verwendet werden.)

In MobaXterm gibt es dafür einen SSHKey Creator Tool

Der Generierte Key kann dann per File > Save Private Key als Datei abgelegt werden. Idealerweise in einem Verzeichnis wo er mit gesichert wird. Ich habe auch ein Passwort eingetragen. Dann ist die Verwendung des KEYs nochmal mit einem Passwort abgesichert, welches beim Verbinden zum CoreOS abgefragt wird.

Wenn wir die Schlüsseldatei per Editor öffnen, sehen wir die Unterteilung in PublicKey und PrivateKey. Der PublicKey wird im XenCenter in den CoreOS CloudConfig Parametern eingetragen. Die Cloudconfigparameter beinhalten die Konfiguration von CoreOS und werden beim Boot als Laufwerk mitgegeben.

Die Gelb Markierten Zeilen werden eingetragen.

ich hatte den Effekt, dass nach dem Speichern der Key sauber auf eine Zeile konfiguriert wurde. Es ist jedoch schon vorgekommen, das er den Key mit Zeilensprüngen eingefügt hat, was dann am Ende nicht funktionierte. Deswegen zieht am besten händisch die 6 Zeilen zu einer langen Zeile zusammen. (am Zeilenanfang einmal Backspace zieht die Zeile ans Ende der darüber befindlichen Zeile.

Anschließend bootet CoreOS mit DHCP. Schaut welche IP Adresse es bekommen hat. Über die XenCenter Konsole muss man sich nicht anmelden. CoreOS startet bereits vorangemeldet. Der User ist “core”

Im Putty / MobaXterm dann eine neue Verbindung konfigurieren und als Parameter den SSHKey mitgeben.

Der Login sollte nurnoch das SSHKey-Passwort abfragen, oder wenn ihr beim Erzeugen keins eingetragen habt, direkt durchlaufen.

CoreOS ist fast fertig. Es handelt sich bei der ISO um eine LIVE-ISO. Das bedeutet, das man das Betriebssystem noch auf die Disk Schreiben muss.

Wenn die Installation abgeschlossen ist, kann die CoreOS ISO entfernt werden und das System einmal Rebooten.

Die Containerverwaltung im XenCenter für die VM aktivieren.

Anschließend können Docker Container eingebunden werden.

Beispielcontainer MariaDB und WordPress

Im XenCenter sollten nach einigen Sekunden auch die Container angezeigt werden.

Das war es schon, danke fürs Lesen!
Christian

Veröffentlicht von

Christian

Mit den Fachgebieten Virtualisierung und Citrix arbeite ich als Pricipal Consultant bei Axians IT Solutions GmbH in Deutschland.

9 Gedanken zu „Install Docker auf CoreOS mit XenServer 7.0“

  1. Hallo, vielen Dank für den Artikel. Bei uns klappt es mit CoreOS 4.7.0 nicht. Nach der Installation kommt im XenCenter 7 kommt die Meldung: “Container Management cannot monitor VM”. Die IP kann nicht ermittelt werden. Haben versucht die Guest-Tools manuell zu installieren, leider ohne Erfolg. Ist das ein bekanntes Problem? Ideen?
    Danke!

  2. Hallo, vielen Dank für die Rückmeldung. Mit einer älteren CoreOS Version funktioniert es einwandfrei. Nachdem das automatische Update vom CoreOS deaktiviert ist, funktioniert es sogar länger als einen Tag 😀
    Die Updates sind bei uns bereits alle eingespielt.
    Wir haben im Vorfeld bereits alternative Träger-Systeme probiert, jedoch nie die Integration im XenCenter gehabt. Gibt es hierzu auch eine Doku (z.B. Debian, Ubuntuserver oder CentOS)?
    Danke und Grüße, Ole

        1. Hi Smimite,

          hast du das System installiert? Also vor der ersten Konfiguration muss das Live System noch auf die Disk geschrieben werden. Hatte ich recht weit unten auch beschrieben.

          “CoreOS ist fast fertig. Es handelt sich bei der ISO um eine LIVE-ISO. Das bedeutet, das man das Betriebssystem noch auf die Disk Schreiben muss.”

          sudo coreos-install -d /dev/xvda1

          1. hi
            when a i try to connect to coreos via MobaXterm and ssh key
            i got this error :
            server refused our key using keyboard-interactive authentication
            sorry for disturb
            Thank you!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.