Thematischer Schwerpunkt dieser Ausgabe ist die kontinuierliche Überwachung von Servern, Clients und anderen Geräten im Netzwerk: mit dem IPMI-Plugin, dem ... (mehr)

In die Cloud

Der nächste Schritt besteht darin, ein Grundgerüst von Skripten für einen Cloud-Provisioning-Server wie Scalr oder Rightscale zu schreiben. Die entsprechenden Skripte des Autors für diesen Anwendungsfall sind alle Teil eines einzigen Debian-Pakets.

Eine einzelne HTML-Datei ist für Cloud-Anwendungen wenig sinnvoll, deshalb gibt es nun ein etwas nützlicheres Beispiel. Die Konfiguration des Webservers lässt sich ebenso leicht über ein Debian-Paket verwalten, das beispielsweise die Datei »/etc/apache/conf.d/our-config.conf« enthält. Wenn der Webserver bereits so konfiguriert ist, dass er die Dateien im Verzeichnis »conf.d« liest, ist damit die Konfiguration auch gleich abgeschlossen.

Cloud-Hosting wird kompliziert, wenn die Serverkonfiguration exotisch wird. Sie sollten sich daher möglichst nah an Standard-Konfigurationen bewegen, um unnötige Komplexität zu vermeiden.

Ein weiteres nützliches Skript für Cloud-Server führt bestimmte Tasks zu verschiedenen Zeitpunkten im Lebenszyklus einer Instanz aus. Zum Beispiel gibt es bei einem Service wie Scalr solche Events wie »OnHostup« , »OnHostInit« und »OnIPAddressChanged« . Die Skripte, die solche Events verarbeiten, können Sie wiederum in Debian-Pakete packen:

./usr/local/myserver/bin/on-host-up.sh
./usr/local/myserver/bin/on-ip-address-changed.sh

Das erste Skript soll, wenn die Netzwerkverbindung steht, eine HTML- oder PHP-Datei etwa von Amazon S3 herunterladen und sie im Document-Root des Webservers ablegen (Listing 3).

Listing 3

on-host-up.sh

 

Packen Sie dann das Projekt wieder in ein Deb-File und legen es auf einem öffentlich zugänglichen Server ab, von dem Sie es herunterladen können. Beim Scalr-Service loggen Sie sich dann auf dem Webinterface ein und legen ein neues Skript an (Abbildung 1).

Abbildung 1: Beim Scalr-Service kann der Anwender für Events wie OnHostUp eigene Skripte anlegen.

Speichern Sie das Skript unter dem Namen des Events, bei dem es ablaufen soll, und wechseln dann zur Farm-Konfiguration. Dort können Sie die erstellten Skripte in einem GUI verwalten und aktivieren (Abbildung 2).

Abbildung 2: In der Farm-Konfiguration des Scalr-Service lassen sich die Skripte für die einzelnen Phasen aktivieren und konfigurieren.

Dynamisches DNS

Ein weiteres Skript, das jedes Mal abläuft, wenn sich die IP-Adresse eines Knotens ändert, kann zum Beispiel den dynamischen DNS-Eintrag ändern, beispielsweise so:

curl 'http://www.dnsmadeeasy.com/servlet/updateip?username=myuser&password=mypassword&id=99999999&ip=123.231.123.231'

Speichern Sie den Befehl in der Datei »on-ip-address-changed.sh« und paketieren das Skript in der Deb-Datei, die Sie danach wieder an den alten Ort laden, von wo ein Cloud-Knoten sie über Wget herunterlädt.

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023