Software Challenge : Einrichtung der SC-Staging-VM, Ubuntu 14.04 LTS und Rails 4

VirtualBox und IP-Adressen

Man ist ja verleitet, da clonevm die Option ja grundsätzlich kennt, einen Snapshot von vmmain als Basis für die neue VM zu nehmen. Anders als VBoxManage snapshot suggeriert, stürzt die Maschine allerdings dabei ab.

  1. Die Quellmaschine herunterfahren...
  2. ... und klonen ...
    VBoxManage clonevm vmmain_1 --mode machine --name vmstaging --register
  3. und wieder hochfahren
    VBoxManage startvm vmmain_1 --type headless
  4. Einstellungen der vmstaging-VM über die VirtualBox-GUI öffnen und dort von beiden Netzwerkschnittstellen „das Kabel ziehen“, damit die statischen IPs nicht mit der anderen VM kollidieren
  5. In den Einstellungen auch den RDP-Port ändern, weil es sonst der gleiche ist wie bei vmmain_1
    vmstaging über die GUI starten (über's Netzwerk kommt man ja jetzt nicht heran) und die entsprechenden IPs in /etc/network/interfaces ändern
  6. Maschine wieder herunterfahren
  7. Maschine wieder hochfahren:
    VBoxManage startvm vmstaging --type headless
  8. Die neuen IP-Adressen einstellen (ggf. neustarten, weil das init.d-Script für's Netzwerk unter Ubuntu 10.04 nicht gut funktioniert)

Upgrade des Betriebssystems auf 14.04 LTS

 

  1. Paketcache aktualisieren: apt-get update && apt-get dist-upgrade
  2. Upgrade von 10.04 "lucid" auf 12.04 "precise": do-release-upgrade -m server
    1. Randnotiz: irb (interactibe ruby) wird bei dem Upgrade entfernt. Gibt möglicherweise Ärger.
    2. Kongigurationsoptionen während des Upgrades: alles behalten, kein Überschreiben von Konfigurationsdateien
  3. Neustart
  4. Via supervisorctl status kurz prüfen, ob alles läuft.
    1. MySQL-Gem ist gegendie falsche Version von libmysqlclient gelinkt. Lösung: gem löschen und neu installieren, dabei wird das Binary neu kompiliert und gelinkt

      cd /home/scadmin/www/apps/swchallenge/current
      bundle exec gem uninstall mysql
      bundle install
  5. Upgrade auf 14.04: (falls die 14.04 noch nicht released ist, einfach -d anhängen: do-release-upgrade -d
    1. Randnotiz: Ruby 1.8 wird dabei entfernt. Das gibt Ärger!
    2. SSH-Update: ssh_config des Maintainers übernehmen, danach aber manuell
      Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
      setzen
    3. Sonstige Konfigurationsoptionen: alle Konfigurationsdateien des Maintainers übernehmen, außer backup-manager und apache.
  6. Neustart
  7. Aus bislang ungeklärten Gründen überlebt die Maschine den Neustart nicht und hängt an der Stelle, an der normalerweise GRUB einsetzt, mit einem schwarzen Bildschirm.

Probleme

  • Nach dem Klonen der vmmain ließ sich in vmstaging die Datenbank RabbitMQ nicht starten, da die bestehende Datenbank "rabbit@vmmain" hieß und nicht "rabbit@staging".
    • in die Datei /etc/default/rabbitmq mit dem Inhalt export RABBITMQ_NODENAME=rabbitmq@vmmain erstellen
  • Die MySQL-Datenbank läuft nicht auf vmstaging:
    • in der Datei /etc/mysql/my.cnf den Eintrag bind-address auf die richtige IP setzen