Testskript VM-Testumgebung



  • Hallo zusammen,

    ich habe ein Problem, für dass ich im Moment noch keinen richtigen Ansatz sehe. Vielleicht könnt ihr mir ja helfen.

    Ich will das Leistungsverhalten eines verteilten Systems "messen". Dazu habe ich eine Anzahl von VMs, welche jeweils eine SW-Komponente des Systems bereitstellen. Dies werden alle hochgefahren und laufen. Nun hätte ich gern ein Testskript, welches zu einer bestimmten Zeit die Verbindungen der VM trennt, also sozusagen den Netzstecker zieht. Nach einen definierten Zeitraum soll dann der Stecker wieder reingesteckt werden.

    Die VMs laufen in VirtualBox. Den "Stecker" ziehen per VBoxManage kann ich, auch ihn später wieder reinstecken. Was mir nun fehlt, ist ne Idee, wie man den Testplan, also wann welcher Stecker gezogen und welcher wieder reingesteckt wird definiert, so dass dies durch ein Skript automatisch erledigt wird.

    Hier ein Beispiel:

    Testlauf_1

    t=1, disconnect VM1
    t=2, disconnect VM2
    t=5, connect VM2
    t=10, connect VM1

    wobei t in Sekunden oder Minuten fortschreitet, je nach Basis.

    Das eigentliche Testskript will ich dann einfach starten über testskript -i Testlauf_1, oder so ähnlich.

    Zu verwendende Sprachen sind mir eigentlich egal. Im Moment habe ich C++, Python und Bash am Start.

    Jemand einen Tip für mich??? Wäre super.

    Gruß



  • achso,

    meine VMs laufen alle mit CentOS. Ist vielleicht noch von Interesse.



  • Ich versteh jetzt die frage nicht ganz.
    Du kannst Bash-Script File schreiben und hast ein Command-Line-Utility mit dem du VirtualBox fernsteuern kannst.
    Fehlt nur noch ein "sleep" Befehl. Den wird's unter Linux doch wohl geben ... nicht?



  • Hallo hustbaer,

    das war auch mein erster gedanke. ich dachte aber, es gibt was besseres. die aufwach und schalfbedinungen, sprich die disconnect und connect aufrufe können sich überschneiden. daher wollte ich irgendwas, womit ich mich nicht mit der planung der wach und schlafzustände beschäftigen muss.

    mh ...



  • Wenn du Python verwendest, sollte das doch ziemlich simpel sein?

    http://docs.python.org/release/2.5.2/lib/timer-objects.html



  • hallo zusammen,

    wo ist der vorteil/nachteil von timer gegenüber APScheduler (http://pythonhosted.org/APScheduler)?? jemand erfahrungen mit den beiden apis?

    vielen dank!



  • APScheduler musst du extra nachinstallieren, normale Python-Timer sind bereits in der Standardlibrary enthalten. In deinem Fall wuerde ich stdlib-Timer verwenden, weil deine Anforderungen ziemlich simpel sind.


Log in to reply