Linux-Anpassungen

Für Linux-Systeme enthält Google Cloud Migrate for Compute Engine (ehemals Velostrata) einige Skripts zur Anpassung für die RPM-Installation von Migrate for Compute Engine. Die Regeln für die Skripts von Migrate for Compute Engine finden Sie hier:

/opt/velostrata/actions/<PHASE>.rules

Linux-Systemadministratoren können auch benutzerdefinierte Skripts definieren. Die Regeln für diese Skripts finden Sie hier:

/etc/velostrata/actions/<PHASE>.rules

Die Regeln sind nach <PHASE> gruppiert. Dieser Wert entspricht der Projektphase der VM, wenn das Skript ausgeführt wird. <PHASE> kann einer der folgenden Werte sein:

  • origin – Die Skripts werden ausgeführt, wenn die VM sich in der lokalen Umgebung befindet.
  • velos – Die Skripts werden ausgeführt, wenn die VM im "Cache on Demand"-Modus ausgeführt wird.
  • detach – Die Skripts werden nach dem Trennvorgang ausgeführt.

Benutzerdefinierte Skripts werden vom Dienst velostrata.init bei jedem Start ausgeführt. Wenn eine Änderung nur einmal vorgenommen werden muss, sollte das Skript erkennen, dass sie zuvor bereits ausgeführt wurde, und nicht dieselbe Änderung wiederholen.

Definitionen von Regeln

Für jede Phase gelten bestimmte Regeln. Regeln definieren die Aktionen, die der Dienst ausführt. Migrate for Compute Engine verarbeitet die Regeln in einer definierten Reihenfolge und jede Regel wird gemäß ihrer Bereitstellung ausgeführt.

Regelparameter

Die folgenden Parameter für Regeln können in jeder <PHASE>.rules-Datei definiert werden:

  • NAME: Ein eindeutiger Regelname.
  • PLATFORM: Cloud oder Plattform, auf der die Regel ausgeführt werden soll (any).
  • TEST: Ein Test, ob eine Datei existiert. Wenn ein Pfad angegeben ist, wird die Regel nur ausgeführt, wenn die Datei und der Verzeichnispfad vorhanden sind. Dieser Parameter kann auch verwendet werden, um zu prüfen, ob das Skript bereits ausgeführt wurde (durch Schreiben einer Datei, die dies anzeigt).
  • ACTION: Bash-Skript zur Ausführung oder ein Inline-Befehl
  • REQUIRES: Optionales Feld für Dienste, die für das Ausführen der Regel benötigt werden (derzeit wird nur rc.local unterstützt).

Regelbeispiele

# Netzwerkeinstellungen anpassen

NAME="fix-network-config", PLATFORM="any", TEST="", ACTION="/usr/sbin/velostrata-fix-network-config"