En este post vamos a ver los pormenores de instalar phpVirtualbox en CentOS 7.

Normalmente hubiera desplegado una solución basada en vSphere de VMWARE, pero no contaba con el hardware necesario.

phpVirtualBox funciona, con cuatro VMs prendidas 24×7 no he tenido prácticamente downtimes en seis meses, usando más de un 60% de la memoria RAM disponible.

Tomo como referencia éste tutorial

Instalar CentOS 7

  • Hacer una instalación básica de CentOS 7, configurando la red (direccionamiento IP, default gateway, DNS).
  • Una vez terminada la instalación, ejecutar:

root@computer$ yum install -y epel-release

root@computer$ yum install -y net-tools wget vim httpd php stress smartmontools vim nmap make gcc SDL kernel-devel kernel-headers dkms telnet mdadm lvm2 php-gd php-pear unzip php-soap

root@computer$ yum groupinstall ‘Development Tools’

  • Actualizar todos los paquetes.

root@computer$ yum update -y

  • Si bien podríamos configurar SELINUX con phpVirtualbox, lo desactivamos por simplicidad en este tutorial.

En /etc/selinux/config, cambiar la línea:

SELINUX=enforcing

por:

SELINUX=disabled

  • Si bien podríamos dejar habilitado el firewall de CentOS (firewalld), lo desactivamos también por simplicidad.

root@computer$ systemctl disable firewalld

  • Reiniciar el equipo.

 

Instalar y configurar VirtualBox

  • Instalar repositorio de VirtualBox.

root@computer$ cd /etc/yum.repos.d

root@computer$ wget http://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo

  • Instalar VirtualBox (en nuestro caso, usamos la versión 5.0).

root@computer$ yum install -y VirtualBox-5.0


  • Configurar el servicio Virtualbox-

Editar /etc/default/virtualbox para que contenga mínimamente:

VBOXWEB_USER=vbusr

VBOXWEB_HOST=localhost

  • Crear el usuario para virtualbox.

Ejecutar en la consola:

root@computer$ useradd -m vbusr

root@computer$ usermod -G vboxusers vbusr

root@computer$ passwd vbusr

  • Habilitar y ejecutar el servicio vboxdrv.

root@computer$ systemctl enable vboxdrv

root@computer$ systemctl restart vboxdrv

  • Instalar el Extension Pack de Oracle que corresponda con la versión de VirtualBox instalada.

root@computer$ cd /usr/local/src

root@computer$ wget http://download.virtualbox.org/virtualbox/5.0.40/Oracle_VM_VirtualBox_Extension_Pack-5.0.40-115130.vbox-extpack

root@computer$ VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.2.0-118431.vbox-extpack

Descargar y configurar phpVirtualBox

  • Configurar la variable de zona horaria en PHP.

En /etc/php.ini , setear la variable date.timezone, a por ejemplo ‘America/Montevideo’.

  • Iniciar y habilitar Apache HTTPD.

root@computer$ systemctl enable httpd

root@computer$ systemctl restart httpd

  • Descargar phpVirtualBox.

root@computer$ cd /var/www/html

root@computer$ wget https://downloads.sourceforge.net/project/phpvirtualbox/phpvirtualbox-5.0-5.zip

root@computer$ ln -s phpvirtualbox-5.0-5 phpvirtualbox

root@computer$ cd phpvirtualbox

root@computer$ cp config.php-example  config.php

  • Configurar VirtualBox.

Editar config.php, usando el nombre de usuario del usuario de Virtualbox, y su contraseña:

[…]

var $username = ‘vbusr’;

var $password = ‘centos’;

[…]

  • Copiar el script de inicio de VirtualBox y habilitarlo.

root@computer$ cd /var/www/html/phpvirtualbox

root@computer$ cp vboxinit /etc/init.d/vboxinit

root@computer$ chmod 750 /etc/init.d/vboxinit

root@computer$ ln -s /etc/init.d/vboxinit /etc/rc3.d/S99vboxinit

root@computer$ /etc/init.d/vboxinit start

  • Copiar el script de inicio de VirtualBox Web y habilitarlo.

Usar, por ejemplo, el script de inicio de aquí

Copiarlo a /etc/init.d/vboxweb-service.

root@computer$ chmod 0750 /etc/init.d/vboxweb-service

root@computer$ chown root:root /etc/init.d/vboxweb-service

root@computer$ systemctl enable vboxweb-service

root@computer$ systemctl start vboxweb-service

  • Una vez desplegado, se puede hacer login en http://<ip del servidor>/phpvirtualbox

El usuario por defecto es admin y la contraseña es admin. Esto puede ser cambiado fácilmente en el menú File

phpVirtualBox

Leave a comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *