From ccec614da35b823a3b40bfb4a78805607546ab0e Mon Sep 17 00:00:00 2001 From: ramon Date: Wed, 26 Apr 2017 08:15:30 +0000 Subject: #739: Retocar fichero Vagrant para permitir reaprovisionamiento de servidor y solucionar problemas que pueden producirse durante una instalación previa de paquetes. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://opengnsys.es/svn/branches/version1.1@5279 a21b9725-9963-47de-94b9-378ad31fedc9 --- installer/vagrant/README.es.txt | 17 +++++++++-------- installer/vagrant/Vagrantfile-devel-vbox | 18 +++++++++++------- installer/vagrant/Vagrantfile-trunk-vbox | 20 ++++++++++++-------- 3 files changed, 32 insertions(+), 23 deletions(-) diff --git a/installer/vagrant/README.es.txt b/installer/vagrant/README.es.txt index 9bd86a64..10578404 100644 --- a/installer/vagrant/README.es.txt +++ b/installer/vagrant/README.es.txt @@ -14,30 +14,30 @@ Ficheros de configuración disponibles: Requisitos previos. - - Instalar Oracle VM VirtualBox 5.0 con su Extension Pack. + - Instalar Oracle VM VirtualBox 5.x con su Extension Pack. - Instalar la última versión oficial de Vagrant (no usar la incluida en Ubuntu 14.04). -El entorno de trabajo de OpenGnsys +El entorno de trabajo de OpenGnsys. - - ogAdministrator: MV para servidor OpenGnsys basada en Ubuntu 14.04 y 2º disco para repositorio. - - ogClient01: MV cliente modelo con Ubuntu 14.04 instalado. + - ogAdministrator: MV para servidor OpenGnsys basada en Ubuntu 16.04 y 2º disco para repositorio. + - ogClient01: MV cliente modelo con Ubuntu 16.04 instalado. - ogClient02 - ogclient0N: MV clientes para restaurar con disco vacío. -Ejecutar el entorno virtual (Vagrantfile-trunk y Vagrantfile-devel). +Ejecutar el entorno virtual (Vagrantfile-trunk-vbox y Vagrantfile-devel-vbox). - Crear un directorio de trabajo. - - Copiar el fichero Vagrantfile correspondiente en dicho directorio como Vagrantfile. + - Copiar el fichero Vagrantfile-...-vbox correspondiente en dicho directorio como Vagrantfile. - Opcional: editar las variables de configuración del fichero Vagrantfile para el entorno personal. - LANGUAGE: idioma (se aceptan es_ES, ca_ES y en_GB). - NCLIENTS: nº de clientes a generar (de 2 a 9). - - REPODISK, REPOSIZE: fichero y tamaño (en GB) del disco duro virtual para el repositorio de imágenes. + - REPODISK, REPOSIZE: fichero y tamaño (en GB) del disco virtual para el repositorio de imágenes. - SERVERMEM, CLIENTMEM: memoria virtual (en MB) para servidor y clientes (mínimo 256 MB). - NETPREFIX: prefijo para las direcciones IP de la red virtual. - MACPREFIX: prefijo para las direcciones MAC de los clientes. - LOCALWEBPORT: puerto local para acceder al web de administración del servidor. - - Opcional: para una definición automática del aula virtual con sus 2 clientes, descomentar las líneas del fichero Vagrantfile de los comandos "mysql" y "setclientmode". + - Opcional: para una definición automática del aula virtual con sus clientes, descomentar las líneas del fichero Vagrantfile de los comandos "mysql" y "setclientmode". - Iniciar la MV del servidor: vagrant up @@ -49,6 +49,7 @@ Ejecutar el entorno virtual (Vagrantfile-trunk y Vagrantfile-devel). Notas: - Los procesos de inicio pueden tardar varios minutos en la primera ejecución, porque descargan y configuran las máquinas virtuales. + - Si se producen errores al instalar paquetes en el servidor, volver a aprovisionarlo ejecutando "vagrant provision" (o "vagrant up --provision", si la MV está parada). - Antes de iniciar las MV de los clientes, debe accederse a la web de OpenGnsys para crear el aula e incorporar los equipos (o revisar que los datos son correctos). - Ignorar los errores de conexión de Vagrant con los clientes vacíos. diff --git a/installer/vagrant/Vagrantfile-devel-vbox b/installer/vagrant/Vagrantfile-devel-vbox index 9cc70c56..e9a0f67a 100644 --- a/installer/vagrant/Vagrantfile-devel-vbox +++ b/installer/vagrant/Vagrantfile-devel-vbox @@ -22,13 +22,16 @@ LOCALWEBPORT = 8443 # OpenGnsys Server provisioning script: prepare repo disk, install OpenGnsys, change default interface, configure DHCP server. OGSERVERSCRIPT = <> /etc/fstab -mount -a +# Exit if OpenGnsys is installed. +[ -f /opt/opengnsys/doc/VERSION.txt ] && echo "Cannot provision, OpenGnsys is already installed." && exit 1 +# Mount repository disk, if necesary. +if [ -n "$(blkid /dev/sdb1 | grep ext4)" ]; then + echo -e "o\nn\np\n\n\n\nw" | fdisk /dev/sdb + mkfs -t ext4 /dev/sdb1 + mkdir -p /opt/opengnsys/images + echo "/dev/sdb1 /opt/opengnsys/images ext4 defaults 0 0" >> /etc/fstab + mount -a +fi # Install OpenGnsys and change server address. wget -q http://opengnsys.es/svn/branches/version1.1/installer/opengnsys_installer.sh -O - | bash || exit $? mv /opt/opengnsys/log/bash.log /opt/opengnsys/log/opengnsys_installer.log @@ -78,6 +81,7 @@ dpkg-reconfigure -fnoninteractive console-setup echo "Notes:" echo "- OpenGnsys Server URL: https://localhost:#{LOCALWEBPORT}/opengnsys/" [ -d /opt/opengnsys/www/angular ] && echo "- Angular-based web URL: https://localhost:#{LOCALWEBPORT}/opengnsys/angular/ogWebAdmin/" +exit 0 EOT # Client 1 OS provisioning script. diff --git a/installer/vagrant/Vagrantfile-trunk-vbox b/installer/vagrant/Vagrantfile-trunk-vbox index 646c3a62..efd4e9ab 100644 --- a/installer/vagrant/Vagrantfile-trunk-vbox +++ b/installer/vagrant/Vagrantfile-trunk-vbox @@ -22,15 +22,19 @@ LOCALWEBPORT = 8443 # OpenGnsys Server provisioning script: prepare repo disk, install OpenGnsys, change default interface, configure DHCP server. OGSERVERSCRIPT = <> /etc/fstab -mount -a +# Exit if OpenGnsys is installed. +[ -f /opt/opengnsys/doc/VERSION.txt ] && echo "Cannot provision, OpenGnsys is already installed." && exit 1 +# Mount repository disk, if necesary. +if [ -n "$(blkid /dev/sdb1 | grep ext4)" ]; then + echo -e "o\nn\np\n\n\n\nw" | fdisk /dev/sdb + mkfs -t ext4 /dev/sdb1 + mkdir -p /opt/opengnsys/images + echo "/dev/sdb1 /opt/opengnsys/images ext4 defaults 0 0" >> /etc/fstab + mount -a +fi # Install OpenGnsys and change server address. -wget -q http://opengnsys.es/svn/trunk/installer/opengnsys_installer.sh -O - | bash +wget -q http://opengnsys.es/svn/trunk/installer/opengnsys_installer.sh -O - | bash || exit $? +mv /opt/opengnsys/log/bash.log /opt/opengnsys/log/opengnsys_installer.log echo y | sudo /opt/opengnsys/bin/setserveraddr eth1 # Insert DHCP data. for ((i=#{NCLIENTS}; i>0; i--)); do -- cgit v1.2.3-18-g5258